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

Commit a38600c1 authored by Fiona Campbell's avatar Fiona Campbell
Browse files

Fix Extra Dim QS tile delay

- read directly from setting instead of through rbc tint controller

Bug: 421829912
Flag: EXEMPT trivial bug fix
Test: atest ReduceBrightColorsTileTest ReduceBrightColorsTileUserActionInteractorTest  ReduceBrightColorsTileDataInteractorTest ReduceBrightColorsTileMapperTest
Change-Id: I7b9305fac0ec14bf065ba07796eaf4cfc42e744a
parent bdef69ac
Loading
Loading
Loading
Loading
+25 −10
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ import android.platform.test.annotations.RequiresFlagsEnabled;
import android.platform.test.flag.junit.CheckFlagsRule;
import android.platform.test.flag.junit.DeviceFlagsValueProvider;
import android.platform.test.flag.junit.FlagsParameterization;
import android.provider.Settings;
import android.service.quicksettings.Tile;
import android.testing.TestableLooper;

@@ -56,6 +57,8 @@ import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSTileImpl;
import com.android.systemui.res.R.drawable;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.util.settings.FakeSettings;
import com.android.systemui.util.settings.SecureSettings;

import org.junit.After;
import org.junit.Before;
@@ -102,6 +105,7 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {
    @Mock
    private ExtraDimDialogManager mExtraDimDialogManager;

    private SecureSettings mSecureSettings;
    private TestableLooper mTestableLooper;
    private ReduceBrightColorsTile mTile;

@@ -112,6 +116,7 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {

    @Before
    public void setUp() throws Exception {
        mSecureSettings = new FakeSettings();
        MockitoAnnotations.initMocks(this);

        mTestableLooper = TestableLooper.get(this);
@@ -130,7 +135,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {
                mStatusBarStateController,
                mActivityStarter,
                mQSLogger,
                mExtraDimDialogManager
                mExtraDimDialogManager,
                mSecureSettings
        );

        mTile.initialize();
@@ -145,7 +151,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {

    @Test
    public void testNotActive() {
        when(mReduceBrightColorsController.isReduceBrightColorsActivated()).thenReturn(false);
        mSecureSettings.putIntForUser(Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                /* value= */ 0, mTile.getCurrentTileUser());
        mTile.refreshState();
        mTestableLooper.processAllMessages();

@@ -156,7 +163,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {

    @Test
    public void testActive() {
        when(mReduceBrightColorsController.isReduceBrightColorsActivated()).thenReturn(true);
        mSecureSettings.putIntForUser(Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                /* value= */ 1, mTile.getCurrentTileUser());
        mTile.refreshState();
        mTestableLooper.processAllMessages();

@@ -168,7 +176,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {
    @Test
    @RequiresFlagsDisabled(Flags.FLAG_EVEN_DIMMER)
    public void testActive_clicked_featureIsActivated() {
        when(mReduceBrightColorsController.isReduceBrightColorsActivated()).thenReturn(false);
        mSecureSettings.putIntForUser(Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                /* value= */ 1, mTile.getCurrentTileUser());
        mTile.refreshState();
        mTestableLooper.processAllMessages();
        // Validity check
@@ -183,7 +192,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {
    @Test
    @RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
    public void testDialogueShownOnClick() {
        when(mReduceBrightColorsController.isReduceBrightColorsActivated()).thenReturn(true);
        mSecureSettings.putIntForUser(Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                /* value= */ 1, mTile.getCurrentTileUser());
        when(mReduceBrightColorsController.isInUpgradeMode(mContext.getResources()))
                .thenReturn(true);
        mTile = new ReduceBrightColorsTile(
@@ -198,7 +208,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {
                mStatusBarStateController,
                mActivityStarter,
                mQSLogger,
                mExtraDimDialogManager
                mExtraDimDialogManager,
                mSecureSettings
        );

        mTile.initialize();
@@ -219,7 +230,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {
    @Test
    @RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
    public void testDialogueShownOnLongClick() {
        when(mReduceBrightColorsController.isReduceBrightColorsActivated()).thenReturn(true);
        mSecureSettings.putIntForUser(Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                /* value= */ 1, mTile.getCurrentTileUser());
        when(mReduceBrightColorsController.isInUpgradeMode(mContext.getResources()))
                .thenReturn(true);
        mTile = new ReduceBrightColorsTile(
@@ -234,7 +246,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {
                mStatusBarStateController,
                mActivityStarter,
                mQSLogger,
                mExtraDimDialogManager
                mExtraDimDialogManager,
                mSecureSettings
        );

        mTile.initialize();
@@ -254,7 +267,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {

    @Test
    public void testIcon_whenTileEnabled_isOnState() {
        when(mReduceBrightColorsController.isReduceBrightColorsActivated()).thenReturn(true);
        mSecureSettings.putIntForUser(Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                /* value= */ 1, mTile.getCurrentTileUser());
        mTile.refreshState();
        QSTile.BooleanState state = new QSTile.BooleanState();

@@ -265,7 +279,8 @@ public class ReduceBrightColorsTileTest extends SysuiTestCase {

    @Test
    public void testIcon_whenTileDisabled_isOffState() {
        when(mReduceBrightColorsController.isReduceBrightColorsActivated()).thenReturn(false);
        mSecureSettings.putIntForUser(Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                /* value= */ 0, mTile.getCurrentTileUser());
        mTile.refreshState();
        QSTile.BooleanState state = new QSTile.BooleanState();

+8 −3
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ import com.android.systemui.qs.ReduceBrightColorsController;
import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSTileImpl;
import com.android.systemui.res.R.drawable;
import com.android.systemui.util.settings.SecureSettings;

import javax.inject.Inject;
import javax.inject.Named;
@@ -54,9 +55,9 @@ public class ReduceBrightColorsTile extends QSTileImpl<QSTile.BooleanState>
    public static final String TILE_SPEC = "reduce_brightness";
    private boolean mIsAvailable;
    private final ReduceBrightColorsController mReduceBrightColorsController;
    private boolean mIsListening;
    private final boolean mInUpgradeMode;
    private final ExtraDimDialogManager mExtraDimDialogManager;
    private final SecureSettings mSecureSettings;

    @Inject
    public ReduceBrightColorsTile(
@@ -71,7 +72,8 @@ public class ReduceBrightColorsTile extends QSTileImpl<QSTile.BooleanState>
            StatusBarStateController statusBarStateController,
            ActivityStarter activityStarter,
            QSLogger qsLogger,
            ExtraDimDialogManager extraDimDialogManager
            ExtraDimDialogManager extraDimDialogManager,
            SecureSettings secureSettings
    ) {
        super(host, uiEventLogger, backgroundLooper, mainHandler, falsingManager, metricsLogger,
                statusBarStateController, activityStarter, qsLogger);
@@ -81,6 +83,7 @@ public class ReduceBrightColorsTile extends QSTileImpl<QSTile.BooleanState>

        mInUpgradeMode = reduceBrightColorsController.isInUpgradeMode(mContext.getResources());
        mIsAvailable = isAvailable || mInUpgradeMode;
        mSecureSettings = secureSettings;
    }

    @Override
@@ -136,7 +139,9 @@ public class ReduceBrightColorsTile extends QSTileImpl<QSTile.BooleanState>

    @Override
    protected void handleUpdateState(BooleanState state, Object arg) {
        state.value = mReduceBrightColorsController.isReduceBrightColorsActivated();
        state.value = mSecureSettings.getIntForUser(
                Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED, /* default= */ 0,
                getCurrentTileUser()) == 1;
        state.state = state.value ? Tile.STATE_ACTIVE : Tile.STATE_INACTIVE;
        state.label = mContext.getString(R.string.reduce_bright_colors_feature_name);
        state.expandedAccessibilityClassName = Switch.class.getName();