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

Commit 72416289 authored by Muyuan Li's avatar Muyuan Li
Browse files

sysui: disable clock when device is not provisioned.

Bug: 28557685
Change-Id: I60512206795de18c912fb6a1575e6f57aac56767
(cherry picked from commit 271f3d8f528354de03d6da615ac3a0fe5ee1a8bd)
parent bc27f8fa
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2256,7 +2256,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,

        if ((diff1 & StatusBarManager.DISABLE_CLOCK) != 0) {
            boolean visible = (state1 & StatusBarManager.DISABLE_CLOCK) == 0;
            mIconController.setClockVisibility(visible);
            mIconController.setClockVisibilityByPolicy(visible);
        }
        if ((diff1 & StatusBarManager.DISABLE_EXPAND) != 0) {
            if ((state1 & StatusBarManager.DISABLE_EXPAND) != 0) {
+21 −2
Original line number Diff line number Diff line
@@ -101,6 +101,9 @@ public class StatusBarIconController extends StatusBarIconList implements Tunabl
    private long mTransitionDeferringStartTime;
    private long mTransitionDeferringDuration;

    private boolean mClockVisibleByPolicy = true;
    private boolean mClockVisibleByUser = true;

    private final ArraySet<String> mIconBlacklist = new ArraySet<>();

    private final Runnable mTransitionDeferringDoneRunnable = new Runnable() {
@@ -189,6 +192,10 @@ public class StatusBarIconController extends StatusBarIconList implements Tunabl
        for (int i = 0; i < views.size(); i++) {
            setIcon(views.get(i).getSlot(), views.get(i).getStatusBarIcon());
        }

        setClockVisibleByUser(!StatusBarIconController.getIconBlacklist(newValue)
                .contains("clock"));
        updateClockVisibility();
    }
    private void loadDimens() {
        mIconSize = mContext.getResources().getDimensionPixelSize(
@@ -332,8 +339,20 @@ public class StatusBarIconController extends StatusBarIconList implements Tunabl
        animateShow(mNotificationIconAreaInner, animate);
    }

    public void setClockVisibility(boolean visible) {
        mClock.setVisibility(visible ? View.VISIBLE : View.GONE);
    public void setClockVisibleByUser(boolean visible) {
        mClockVisibleByUser = visible;
        updateClockVisibility();
    }

    public void setClockVisibilityByPolicy(boolean visible) {
        mClockVisibleByPolicy = visible;
        updateClockVisibility();
    }

    private void updateClockVisibility() {
        int visibility = (mClockVisibleByPolicy && mClockVisibleByUser)
                ? View.VISIBLE : View.GONE;
        mClock.setVisibility(visibility);
    }

    public void dump(PrintWriter pw) {
+0 −3
Original line number Diff line number Diff line
@@ -167,9 +167,6 @@ public class Clock extends TextView implements DemoMode, Tunable {
        if (CLOCK_SECONDS.equals(key)) {
            mShowSeconds = newValue != null && Integer.parseInt(newValue) != 0;
            updateShowSeconds();
        } else if (StatusBarIconController.ICON_BLACKLIST.equals(key)) {
            ArraySet<String> list = StatusBarIconController.getIconBlacklist(newValue);
            setVisibility(list.contains("clock") ? View.GONE : View.VISIBLE);
        }
    }