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

Commit 1f88b540 authored by Dave Mankoff's avatar Dave Mankoff
Browse files

5/N Remove DemoModecontroller from QSBarHeader

Remove the DemoModecontroller from the QuickStatusBarHeader.

Bug: 168904199
Test: atest SytemUITests
Change-Id: Ie02cbc5c83185cd050ceed744455b1e99f02dedf
parent 8143950a
Loading
Loading
Loading
Loading
+3 −51
Original line number Diff line number Diff line
@@ -17,6 +17,8 @@ package com.android.systemui.qs;
import static android.app.StatusBarManager.DISABLE2_QUICK_SETTINGS;
import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;

import static com.android.systemui.util.InjectionInflationController.VIEW_CONTEXT;

import android.annotation.ColorInt;
import android.app.AlarmManager;
import android.app.AlarmManager.AlarmClockInfo;
@@ -27,7 +29,6 @@ import android.content.res.Resources;
import android.graphics.Color;
import android.graphics.Rect;
import android.media.AudioManager;
import android.os.Bundle;
import android.util.AttributeSet;
import android.util.MathUtils;
import android.util.Pair;
@@ -53,8 +54,6 @@ import com.android.systemui.BatteryMeterView;
import com.android.systemui.DualToneHandler;
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.demomode.DemoMode;
import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.plugins.DarkIconDispatcher;
import com.android.systemui.plugins.DarkIconDispatcher.DarkReceiver;
import com.android.systemui.privacy.OngoingPrivacyChip;
@@ -64,7 +63,6 @@ import com.android.systemui.statusbar.phone.StatusBarIconController.TintedIconMa
import com.android.systemui.statusbar.phone.StatusBarWindowView;
import com.android.systemui.statusbar.policy.Clock;

import java.util.List;
import java.util.Locale;
import java.util.Objects;

@@ -105,8 +103,6 @@ public class QuickStatusBarHeader extends RelativeLayout implements LifecycleOwn
    private OngoingPrivacyChip mPrivacyChip;
    private Space mSpace;
    private BatteryMeterView mBatteryRemainingIcon;
    private DemoModeController mDemoModeController;
    private DemoMode mDemoModeReceiver;
    private UserTracker mUserTracker;

    // Used for RingerModeTracker
@@ -124,11 +120,10 @@ public class QuickStatusBarHeader extends RelativeLayout implements LifecycleOwn

    @Inject
    public QuickStatusBarHeader(@Named(VIEW_CONTEXT) Context context, AttributeSet attrs,
            DemoModeController demoModeController, UserTracker userTracker) {
            UserTracker userTracker) {
        super(context, attrs);
        mDualToneHandler = new DualToneHandler(
                new ContextThemeWrapper(context, R.style.QSHeaderTheme));
        mDemoModeController = demoModeController;
        mUserTracker = userTracker;
    }

@@ -158,7 +153,6 @@ public class QuickStatusBarHeader extends RelativeLayout implements LifecycleOwn
        applyDarkness(R.id.clock, tintArea, 0, DarkIconDispatcher.DEFAULT_ICON_TINT);

        mClockView = findViewById(R.id.clock);
        mDemoModeReceiver = new ClockDemoModeReceiver(mClockView);
        mSpace = findViewById(R.id.space);

        // Tint for the battery icons are handled in setupHost()
@@ -387,12 +381,6 @@ public class QuickStatusBarHeader extends RelativeLayout implements LifecycleOwn
        updateResources();
    }

    @Override
    public void onAttachedToWindow() {
        super.onAttachedToWindow();
        mDemoModeController.addCallback(mDemoModeReceiver);
    }

    @Override
    public WindowInsets onApplyWindowInsets(WindowInsets insets) {
        // Handle padding of the clock
@@ -461,13 +449,6 @@ public class QuickStatusBarHeader extends RelativeLayout implements LifecycleOwn
                0);
    }

    @Override
    @VisibleForTesting
    public void onDetachedFromWindow() {
        mDemoModeController.removeCallback(mDemoModeReceiver);
        super.onDetachedFromWindow();
    }

    public void updateEverything() {
        post(() -> setClickable(!mExpanded));
    }
@@ -545,33 +526,4 @@ public class QuickStatusBarHeader extends RelativeLayout implements LifecycleOwn
            updateHeaderTextContainerAlphaAnimator();
        }
    }

    private static class ClockDemoModeReceiver implements DemoMode {
        private Clock mClockView;

        @Override
        public List<String> demoCommands() {
            return List.of(COMMAND_CLOCK);
        }

        ClockDemoModeReceiver(Clock clockView) {
            mClockView = clockView;
        }

        @Override
        public void dispatchDemoCommand(String command, Bundle args) {
            mClockView.dispatchDemoCommand(command, args);
        }

        @Override
        public void onDemoModeStarted() {
            mClockView.onDemoModeStarted();
        }

        @Override
        public void onDemoModeFinished() {
            mClockView.onDemoModeFinished();
        }
    }

}
+44 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.systemui.qs;
import android.app.AlarmManager.AlarmClockInfo;
import android.content.Intent;
import android.media.AudioManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.provider.AlarmClock;
@@ -35,6 +36,8 @@ import androidx.lifecycle.LifecycleRegistry;

import com.android.internal.logging.UiEventLogger;
import com.android.systemui.R;
import com.android.systemui.demomode.DemoMode;
import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.privacy.OngoingPrivacyChip;
import com.android.systemui.privacy.PrivacyChipEvent;
@@ -79,8 +82,10 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
    private final QSTileHost mQSTileHost;
    private final StatusBarIconController mStatusBarIconController;
    private final CommandQueue mCommandQueue;
    private final DemoModeController mDemoModeController;
    private final StatusIconContainer mIconContainer;
    private final StatusBarIconController.TintedIconManager mIconManager;
    private final DemoMode mDemoModeReceiver;

    private boolean mListening;
    private AlarmClockInfo mNextAlarm;
@@ -184,6 +189,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
            ActivityStarter activityStarter, UiEventLogger uiEventLogger,
            QSTileHost qsTileHost, StatusBarIconController statusBarIconController,
            CommandQueue commandQueue,
            DemoModeController demoModeController,
            QSCarrierGroupController.Builder qsCarrierGroupControllerBuilder) {
        super(view);
        mZenModeController = zenModeController;
@@ -195,6 +201,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
        mQSTileHost = qsTileHost;
        mStatusBarIconController = statusBarIconController;
        mCommandQueue = commandQueue;
        mDemoModeController = demoModeController;
        mLifecycle = new LifecycleRegistry(mLifecycleOwner);

        mQSCarrierGroupController = qsCarrierGroupControllerBuilder
@@ -210,6 +217,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
        mIconContainer = mView.findViewById(R.id.statusIcons);

        mIconManager = new StatusBarIconController.TintedIconManager(mIconContainer, mCommandQueue);
        mDemoModeReceiver = new ClockDemoModeReceiver(mClockView);
    }

    @Override
@@ -235,6 +243,8 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
        setChipVisibility(mPrivacyChip.getVisibility() == View.VISIBLE);

        mView.onAttach(mIconManager);

        mDemoModeController.addCallback(mDemoModeReceiver);
    }

    @Override
@@ -245,6 +255,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
        mRingerContainer.setOnClickListener(null);
        mPrivacyChip.setOnClickListener(null);
        mStatusBarIconController.removeIconGroup(mIconManager);
        mDemoModeController.removeCallback(mDemoModeReceiver);
        setListening(false);
    }

@@ -317,6 +328,35 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
                mZenModeController.getConsolidatedPolicy());
    }


    private static class ClockDemoModeReceiver implements DemoMode {
        private Clock mClockView;

        @Override
        public List<String> demoCommands() {
            return List.of(COMMAND_CLOCK);
        }

        ClockDemoModeReceiver(Clock clockView) {
            mClockView = clockView;
        }

        @Override
        public void dispatchDemoCommand(String command, Bundle args) {
            mClockView.dispatchDemoCommand(command, args);
        }

        @Override
        public void onDemoModeStarted() {
            mClockView.onDemoModeStarted();
        }

        @Override
        public void onDemoModeFinished() {
            mClockView.onDemoModeFinished();
        }
    }

    static class Builder {
        private final ZenModeController mZenModeController;
        private final NextAlarmController mNextAlarmController;
@@ -327,6 +367,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
        private final QSTileHost mQsTileHost;
        private final StatusBarIconController mStatusBarIconController;
        private final CommandQueue mCommandQueue;
        private final DemoModeController mDemoModeController;
        private final QSCarrierGroupController.Builder mQSCarrierGroupControllerBuilder;
        private QuickStatusBarHeader mView;

@@ -335,6 +376,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
                PrivacyItemController privacyItemController, RingerModeTracker ringerModeTracker,
                ActivityStarter activityStarter, UiEventLogger uiEventLogger, QSTileHost qsTileHost,
                StatusBarIconController statusBarIconController, CommandQueue commandQueue,
                DemoModeController demoModeController,
                QSCarrierGroupController.Builder qsCarrierGroupControllerBuilder) {
            mZenModeController = zenModeController;
            mNextAlarmController = nextAlarmController;
@@ -345,6 +387,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
            mQsTileHost = qsTileHost;
            mStatusBarIconController = statusBarIconController;
            mCommandQueue = commandQueue;
            mDemoModeController = demoModeController;
            mQSCarrierGroupControllerBuilder = qsCarrierGroupControllerBuilder;
        }

@@ -358,7 +401,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
            return new QuickStatusBarHeaderController(mView, mZenModeController,
                    mNextAlarmController, mPrivacyItemController, mRingerModeTracker,
                    mActivityStarter, mUiEventLogger, mQsTileHost, mStatusBarIconController,
                    mCommandQueue, mQSCarrierGroupControllerBuilder);
                    mCommandQueue, mDemoModeController, mQSCarrierGroupControllerBuilder);
        }
    }
}
+0 −4
Original line number Diff line number Diff line
@@ -117,10 +117,6 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
        processAllMessages();
        host.destroy();
        processAllMessages();

        // Manually push header through detach so it can handle standard cleanup it does on
        // removed from window.
        ((QuickStatusBarHeader) qs.getView().findViewById(R.id.header)).onDetachedFromWindow();
    }

    @Test