Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e66a5bca authored by Charles He's avatar Charles He Committed by Android (Google) Code Review
Browse files

Merge "StatusBar: add DISABLE2_SYSTEM_ICONS flag"

parents 56b69b9a 6a79b0df
Loading
Loading
Loading
Loading
+4 −3
Original line number Original line Diff line number Diff line
@@ -70,14 +70,15 @@ public class StatusBarManager {
     * Setting this flag disables quick settings completely, but does not disable expanding the
     * Setting this flag disables quick settings completely, but does not disable expanding the
     * notification shade.
     * notification shade.
     */
     */
    public static final int DISABLE2_QUICK_SETTINGS = 0x00000001;
    public static final int DISABLE2_QUICK_SETTINGS = 1;
    public static final int DISABLE2_SYSTEM_ICONS = 1 << 1;


    public static final int DISABLE2_NONE = 0x00000000;
    public static final int DISABLE2_NONE = 0x00000000;


    public static final int DISABLE2_MASK = DISABLE2_QUICK_SETTINGS;
    public static final int DISABLE2_MASK = DISABLE2_QUICK_SETTINGS | DISABLE2_SYSTEM_ICONS;


    @IntDef(flag = true,
    @IntDef(flag = true,
            value = {DISABLE2_NONE, DISABLE2_MASK, DISABLE2_QUICK_SETTINGS})
            value = {DISABLE2_NONE, DISABLE2_MASK, DISABLE2_QUICK_SETTINGS, DISABLE2_SYSTEM_ICONS})
    @Retention(RetentionPolicy.SOURCE)
    @Retention(RetentionPolicy.SOURCE)
    public @interface Disable2Flags {}
    public @interface Disable2Flags {}


+6 −0
Original line number Original line Diff line number Diff line
@@ -15,6 +15,8 @@
 */
 */
package com.android.systemui;
package com.android.systemui;


import static android.app.StatusBarManager.DISABLE2_SYSTEM_ICONS;
import static android.app.StatusBarManager.DISABLE_NONE;
import static android.provider.Settings.System.SHOW_BATTERY_PERCENT;
import static android.provider.Settings.System.SHOW_BATTERY_PERCENT;


import android.animation.ArgbEvaluator;
import android.animation.ArgbEvaluator;
@@ -52,6 +54,7 @@ import com.android.systemui.statusbar.policy.DarkIconDispatcher.DarkReceiver;
import com.android.systemui.statusbar.policy.IconLogger;
import com.android.systemui.statusbar.policy.IconLogger;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService.Tunable;
import com.android.systemui.tuner.TunerService.Tunable;
import com.android.systemui.util.Utils.DisableStateTracker;


import java.text.NumberFormat;
import java.text.NumberFormat;


@@ -101,6 +104,9 @@ public class BatteryMeterView extends LinearLayout implements


        mSettingObserver = new SettingObserver(new Handler(context.getMainLooper()));
        mSettingObserver = new SettingObserver(new Handler(context.getMainLooper()));


        addOnAttachStateChangeListener(
                new DisableStateTracker(DISABLE_NONE, DISABLE2_SYSTEM_ICONS));

        mSlotBattery = context.getString(
        mSlotBattery = context.getString(
                com.android.internal.R.string.status_bar_battery);
                com.android.internal.R.string.status_bar_battery);
        mBatteryIconView = new ImageView(context);
        mBatteryIconView = new ImageView(context);
+7 −4
Original line number Original line Diff line number Diff line
@@ -16,14 +16,15 @@


package com.android.systemui.statusbar;
package com.android.systemui.statusbar;


import static android.app.StatusBarManager.DISABLE2_SYSTEM_ICONS;
import static android.app.StatusBarManager.DISABLE_NONE;

import android.annotation.DrawableRes;
import android.annotation.DrawableRes;
import android.content.Context;
import android.content.Context;
import android.content.res.ColorStateList;
import android.content.res.ColorStateList;
import android.content.res.Resources;
import android.content.res.Resources;
import android.graphics.Color;
import android.graphics.Color;
import android.graphics.Rect;
import android.graphics.Rect;
import android.graphics.drawable.Animatable;
import android.graphics.drawable.AnimatedVectorDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.Drawable;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionInfo;
import android.util.ArraySet;
import android.util.ArraySet;
@@ -50,14 +51,14 @@ import com.android.systemui.statusbar.policy.NetworkControllerImpl;
import com.android.systemui.statusbar.policy.SecurityController;
import com.android.systemui.statusbar.policy.SecurityController;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService.Tunable;
import com.android.systemui.tuner.TunerService.Tunable;
import com.android.systemui.util.Utils.DisableStateTracker;


import java.util.ArrayList;
import java.util.ArrayList;
import java.util.List;
import java.util.List;


// Intimately tied to the design of res/layout/signal_cluster_view.xml
// Intimately tied to the design of res/layout/signal_cluster_view.xml
public class SignalClusterView extends LinearLayout implements NetworkControllerImpl.SignalCallback,
public class SignalClusterView extends LinearLayout implements NetworkControllerImpl.SignalCallback,
        SecurityController.SecurityControllerCallback, Tunable,
        SecurityController.SecurityControllerCallback, Tunable, DarkReceiver {
        DarkReceiver {


    static final String TAG = "SignalClusterView";
    static final String TAG = "SignalClusterView";
    static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
    static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
@@ -148,6 +149,8 @@ public class SignalClusterView extends LinearLayout implements NetworkController
        mIconScaleFactor = typedValue.getFloat();
        mIconScaleFactor = typedValue.getFloat();
        mNetworkController = Dependency.get(NetworkController.class);
        mNetworkController = Dependency.get(NetworkController.class);
        mSecurityController = Dependency.get(SecurityController.class);
        mSecurityController = Dependency.get(SecurityController.class);
        addOnAttachStateChangeListener(
                new DisableStateTracker(DISABLE_NONE, DISABLE2_SYSTEM_ICONS));
        updateActivityEnabled();
        updateActivityEnabled();
    }
    }


+3 −0
Original line number Original line Diff line number Diff line
@@ -2624,8 +2624,11 @@ public class StatusBar extends SystemUI implements DemoMode,
        flagdbg.append(0 != ((diff1  & StatusBarManager.DISABLE_CLOCK))                 ? '!' : ' ');
        flagdbg.append(0 != ((diff1  & StatusBarManager.DISABLE_CLOCK))                 ? '!' : ' ');
        flagdbg.append(0 != ((state1 & StatusBarManager.DISABLE_SEARCH))                ? 'S' : 's');
        flagdbg.append(0 != ((state1 & StatusBarManager.DISABLE_SEARCH))                ? 'S' : 's');
        flagdbg.append(0 != ((diff1  & StatusBarManager.DISABLE_SEARCH))                ? '!' : ' ');
        flagdbg.append(0 != ((diff1  & StatusBarManager.DISABLE_SEARCH))                ? '!' : ' ');
        flagdbg.append("> disable2<");
        flagdbg.append(0 != ((state2 & StatusBarManager.DISABLE2_QUICK_SETTINGS))       ? 'Q' : 'q');
        flagdbg.append(0 != ((state2 & StatusBarManager.DISABLE2_QUICK_SETTINGS))       ? 'Q' : 'q');
        flagdbg.append(0 != ((diff2  & StatusBarManager.DISABLE2_QUICK_SETTINGS))       ? '!' : ' ');
        flagdbg.append(0 != ((diff2  & StatusBarManager.DISABLE2_QUICK_SETTINGS))       ? '!' : ' ');
        flagdbg.append(0 != ((state2 & StatusBarManager.DISABLE2_SYSTEM_ICONS))         ? 'I' : 'i');
        flagdbg.append(0 != ((diff2  & StatusBarManager.DISABLE2_SYSTEM_ICONS))         ? '!' : ' ');
        flagdbg.append('>');
        flagdbg.append('>');
        Log.d(TAG, flagdbg.toString());
        Log.d(TAG, flagdbg.toString());


+12 −4
Original line number Original line Diff line number Diff line
@@ -14,10 +14,10 @@


package com.android.systemui.statusbar.phone;
package com.android.systemui.statusbar.phone;


import android.annotation.ColorInt;
import static android.app.StatusBarManager.DISABLE2_SYSTEM_ICONS;
import static android.app.StatusBarManager.DISABLE_NONE;

import android.content.Context;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Color;
import android.support.annotation.VisibleForTesting;
import android.support.annotation.VisibleForTesting;
import android.text.TextUtils;
import android.text.TextUtils;
import android.util.ArraySet;
import android.util.ArraySet;
@@ -29,11 +29,11 @@ import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;
import android.widget.LinearLayout.LayoutParams;


import com.android.internal.statusbar.StatusBarIcon;
import com.android.internal.statusbar.StatusBarIcon;
import com.android.settingslib.Utils;
import com.android.systemui.Dependency;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.R;
import com.android.systemui.statusbar.StatusBarIconView;
import com.android.systemui.statusbar.StatusBarIconView;
import com.android.systemui.statusbar.policy.DarkIconDispatcher;
import com.android.systemui.statusbar.policy.DarkIconDispatcher;
import com.android.systemui.util.Utils.DisableStateTracker;


public interface StatusBarIconController {
public interface StatusBarIconController {


@@ -149,6 +149,14 @@ public interface StatusBarIconController {
            mContext = group.getContext();
            mContext = group.getContext();
            mIconSize = mContext.getResources().getDimensionPixelSize(
            mIconSize = mContext.getResources().getDimensionPixelSize(
                    com.android.internal.R.dimen.status_bar_icon_size);
                    com.android.internal.R.dimen.status_bar_icon_size);

            DisableStateTracker tracker =
                    new DisableStateTracker(DISABLE_NONE, DISABLE2_SYSTEM_ICONS);
            mGroup.addOnAttachStateChangeListener(tracker);
            if (mGroup.isAttachedToWindow()) {
                // In case we miss the first onAttachedToWindow event
                tracker.onViewAttachedToWindow(mGroup);
            }
        }
        }


        protected void onIconAdded(int index, String slot, boolean blocked,
        protected void onIconAdded(int index, String slot, boolean blocked,
Loading