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

Commit 22c08ffe authored by Matt Pietal's avatar Matt Pietal
Browse files

Use aconfig for Shade Migration flags

Merge MIGRATE_NSSL and MIGRATE_KEYGUARD_STATUS_VIEW to a single
aconfig flag.

Bug: 278054201
Test: atest SystemUITests
Flag: ACONFIG com.android.systemui.keyguard_shade_migration_nssl DEVELOPMENT
Change-Id: I153504a9052799c368246430eb274898a9a02888
parent 31c421da
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -39,10 +39,10 @@ import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.dagger.qualifiers.DisplaySpecific
import com.android.systemui.dagger.qualifiers.DisplaySpecific
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.flags.FeatureFlags
import com.android.systemui.flags.FeatureFlags
import com.android.systemui.flags.Flags.MIGRATE_KEYGUARD_STATUS_VIEW
import com.android.systemui.flags.Flags.REGION_SAMPLING
import com.android.systemui.flags.Flags.REGION_SAMPLING
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
import com.android.systemui.keyguard.shared.KeyguardShadeMigrationNssl
import com.android.systemui.keyguard.shared.model.TransitionState
import com.android.systemui.keyguard.shared.model.TransitionState
import com.android.systemui.lifecycle.repeatWhenAttached
import com.android.systemui.lifecycle.repeatWhenAttached
import com.android.systemui.log.LogBuffer
import com.android.systemui.log.LogBuffer
@@ -298,7 +298,7 @@ constructor(
        object : KeyguardUpdateMonitorCallback() {
        object : KeyguardUpdateMonitorCallback() {
            override fun onKeyguardVisibilityChanged(visible: Boolean) {
            override fun onKeyguardVisibilityChanged(visible: Boolean) {
                isKeyguardVisible = visible
                isKeyguardVisible = visible
                if (!featureFlags.isEnabled(MIGRATE_KEYGUARD_STATUS_VIEW)) {
                if (!KeyguardShadeMigrationNssl.isEnabled) {
                    if (!isKeyguardVisible) {
                    if (!isKeyguardVisible) {
                        clock?.run {
                        clock?.run {
                            smallClock.animations.doze(if (isDozing) 1f else 0f)
                            smallClock.animations.doze(if (isDozing) 1f else 0f)
@@ -345,7 +345,7 @@ constructor(
            parent.repeatWhenAttached {
            parent.repeatWhenAttached {
                repeatOnLifecycle(Lifecycle.State.CREATED) {
                repeatOnLifecycle(Lifecycle.State.CREATED) {
                    listenForDozing(this)
                    listenForDozing(this)
                    if (featureFlags.isEnabled(MIGRATE_KEYGUARD_STATUS_VIEW)) {
                    if (KeyguardShadeMigrationNssl.isEnabled) {
                        listenForDozeAmountTransition(this)
                        listenForDozeAmountTransition(this)
                        listenForAnyStateToAodTransition(this)
                        listenForAnyStateToAodTransition(this)
                    } else {
                    } else {
+3 −2
Original line number Original line Diff line number Diff line
@@ -46,6 +46,7 @@ import com.android.systemui.flags.Flags;
import com.android.systemui.keyguard.KeyguardUnlockAnimationController;
import com.android.systemui.keyguard.KeyguardUnlockAnimationController;
import com.android.systemui.keyguard.domain.interactor.KeyguardClockInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardClockInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor;
import com.android.systemui.keyguard.shared.KeyguardShadeMigrationNssl;
import com.android.systemui.keyguard.ui.binder.KeyguardRootViewBinder;
import com.android.systemui.keyguard.ui.binder.KeyguardRootViewBinder;
import com.android.systemui.keyguard.ui.view.InWindowLauncherUnlockAnimationManager;
import com.android.systemui.keyguard.ui.view.InWindowLauncherUnlockAnimationManager;
import com.android.systemui.keyguard.ui.viewmodel.KeyguardRootViewModel;
import com.android.systemui.keyguard.ui.viewmodel.KeyguardRootViewModel;
@@ -362,7 +363,7 @@ public class KeyguardClockSwitchController extends ViewController<KeyguardClockS
    }
    }


    int getNotificationIconAreaHeight() {
    int getNotificationIconAreaHeight() {
        if (mFeatureFlags.isEnabled(Flags.MIGRATE_KEYGUARD_STATUS_VIEW)) {
        if (KeyguardShadeMigrationNssl.isEnabled()) {
            return 0;
            return 0;
        } else if (NotificationIconContainerRefactor.isEnabled()) {
        } else if (NotificationIconContainerRefactor.isEnabled()) {
            return mAodIconContainer != null ? mAodIconContainer.getHeight() : 0;
            return mAodIconContainer != null ? mAodIconContainer.getHeight() : 0;
@@ -590,7 +591,7 @@ public class KeyguardClockSwitchController extends ViewController<KeyguardClockS
    }
    }


    private void updateAodIcons() {
    private void updateAodIcons() {
        if (!mFeatureFlags.isEnabled(Flags.MIGRATE_KEYGUARD_STATUS_VIEW)) {
        if (!KeyguardShadeMigrationNssl.isEnabled()) {
            NotificationIconContainer nic = (NotificationIconContainer)
            NotificationIconContainer nic = (NotificationIconContainer)
                    mView.findViewById(
                    mView.findViewById(
                            com.android.systemui.res.R.id.left_aligned_notification_icon_container);
                            com.android.systemui.res.R.id.left_aligned_notification_icon_container);
+4 −8
Original line number Original line Diff line number Diff line
@@ -51,10 +51,9 @@ import com.android.keyguard.logging.KeyguardLogger;
import com.android.systemui.Dumpable;
import com.android.systemui.Dumpable;
import com.android.systemui.animation.ViewHierarchyAnimator;
import com.android.systemui.animation.ViewHierarchyAnimator;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.Flags;
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor;
import com.android.systemui.keyguard.shared.KeyguardShadeMigrationNssl;
import com.android.systemui.keyguard.shared.model.TransitionState;
import com.android.systemui.keyguard.shared.model.TransitionState;
import com.android.systemui.keyguard.shared.model.TransitionStep;
import com.android.systemui.keyguard.shared.model.TransitionStep;
import com.android.systemui.plugins.ClockController;
import com.android.systemui.plugins.ClockController;
@@ -100,7 +99,6 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
    private final KeyguardUpdateMonitor mKeyguardUpdateMonitor;
    private final KeyguardUpdateMonitor mKeyguardUpdateMonitor;
    private final ConfigurationController mConfigurationController;
    private final ConfigurationController mConfigurationController;
    private final KeyguardVisibilityHelper mKeyguardVisibilityHelper;
    private final KeyguardVisibilityHelper mKeyguardVisibilityHelper;
    private final FeatureFlags mFeatureFlags;
    private final InteractionJankMonitor mInteractionJankMonitor;
    private final InteractionJankMonitor mInteractionJankMonitor;
    private final Rect mClipBounds = new Rect();
    private final Rect mClipBounds = new Rect();
    private final KeyguardInteractor mKeyguardInteractor;
    private final KeyguardInteractor mKeyguardInteractor;
@@ -136,7 +134,6 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
            DozeParameters dozeParameters,
            DozeParameters dozeParameters,
            ScreenOffAnimationController screenOffAnimationController,
            ScreenOffAnimationController screenOffAnimationController,
            KeyguardLogger logger,
            KeyguardLogger logger,
            FeatureFlags featureFlags,
            InteractionJankMonitor interactionJankMonitor,
            InteractionJankMonitor interactionJankMonitor,
            KeyguardInteractor keyguardInteractor,
            KeyguardInteractor keyguardInteractor,
            KeyguardTransitionInteractor keyguardTransitionInteractor,
            KeyguardTransitionInteractor keyguardTransitionInteractor,
@@ -149,9 +146,8 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
        mConfigurationController = configurationController;
        mConfigurationController = configurationController;
        mKeyguardVisibilityHelper = new KeyguardVisibilityHelper(mView, keyguardStateController,
        mKeyguardVisibilityHelper = new KeyguardVisibilityHelper(mView, keyguardStateController,
                dozeParameters, screenOffAnimationController, /* animateYPos= */ true,
                dozeParameters, screenOffAnimationController, /* animateYPos= */ true,
                featureFlags, logger.getBuffer());
                logger.getBuffer());
        mInteractionJankMonitor = interactionJankMonitor;
        mInteractionJankMonitor = interactionJankMonitor;
        mFeatureFlags = featureFlags;
        mDumpManager = dumpManager;
        mDumpManager = dumpManager;
        mKeyguardInteractor = keyguardInteractor;
        mKeyguardInteractor = keyguardInteractor;
        mPowerInteractor = powerInteractor;
        mPowerInteractor = powerInteractor;
@@ -188,7 +184,7 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
        }
        }


        mDumpManager.registerDumpable(getInstanceName(), this);
        mDumpManager.registerDumpable(getInstanceName(), this);
        if (mFeatureFlags.isEnabled(Flags.MIGRATE_KEYGUARD_STATUS_VIEW)) {
        if (KeyguardShadeMigrationNssl.isEnabled()) {
            startCoroutines(EmptyCoroutineContext.INSTANCE);
            startCoroutines(EmptyCoroutineContext.INSTANCE);
        }
        }
    }
    }
@@ -454,7 +450,7 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
        ConstraintSet constraintSet = new ConstraintSet();
        ConstraintSet constraintSet = new ConstraintSet();
        constraintSet.clone(layout);
        constraintSet.clone(layout);
        int guideline;
        int guideline;
        if (mFeatureFlags.isEnabled(Flags.MIGRATE_KEYGUARD_STATUS_VIEW)) {
        if (KeyguardShadeMigrationNssl.isEnabled()) {
            guideline = R.id.split_shade_guideline;
            guideline = R.id.split_shade_guideline;
        } else {
        } else {
            guideline = R.id.qs_edge_guideline;
            guideline = R.id.qs_edge_guideline;
+2 −6
Original line number Original line Diff line number Diff line
@@ -23,8 +23,7 @@ import android.util.Property;
import android.view.View;
import android.view.View;


import com.android.app.animation.Interpolators;
import com.android.app.animation.Interpolators;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.keyguard.shared.KeyguardShadeMigrationNssl;
import com.android.systemui.flags.Flags;
import com.android.systemui.log.LogBuffer;
import com.android.systemui.log.LogBuffer;
import com.android.systemui.log.core.LogLevel;
import com.android.systemui.log.core.LogLevel;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.StatusBarState;
@@ -55,7 +54,6 @@ public class KeyguardVisibilityHelper {
    private boolean mKeyguardViewVisibilityAnimating;
    private boolean mKeyguardViewVisibilityAnimating;
    private boolean mLastOccludedState = false;
    private boolean mLastOccludedState = false;
    private final AnimationProperties mAnimationProperties = new AnimationProperties();
    private final AnimationProperties mAnimationProperties = new AnimationProperties();
    private final FeatureFlags mFeatureFlags;
    private final LogBuffer mLogBuffer;
    private final LogBuffer mLogBuffer;


    public KeyguardVisibilityHelper(View view,
    public KeyguardVisibilityHelper(View view,
@@ -63,14 +61,12 @@ public class KeyguardVisibilityHelper {
            DozeParameters dozeParameters,
            DozeParameters dozeParameters,
            ScreenOffAnimationController screenOffAnimationController,
            ScreenOffAnimationController screenOffAnimationController,
            boolean animateYPos,
            boolean animateYPos,
            FeatureFlags featureFlags,
            LogBuffer logBuffer) {
            LogBuffer logBuffer) {
        mView = view;
        mView = view;
        mKeyguardStateController = keyguardStateController;
        mKeyguardStateController = keyguardStateController;
        mDozeParameters = dozeParameters;
        mDozeParameters = dozeParameters;
        mScreenOffAnimationController = screenOffAnimationController;
        mScreenOffAnimationController = screenOffAnimationController;
        mAnimateYPos = animateYPos;
        mAnimateYPos = animateYPos;
        mFeatureFlags = featureFlags;
        mLogBuffer = logBuffer;
        mLogBuffer = logBuffer;
    }
    }


@@ -167,7 +163,7 @@ public class KeyguardVisibilityHelper {
                        animProps,
                        animProps,
                        true /* animate */);
                        true /* animate */);
            } else if (mScreenOffAnimationController.shouldAnimateInKeyguard()) {
            } else if (mScreenOffAnimationController.shouldAnimateInKeyguard()) {
                if (mFeatureFlags.isEnabled(Flags.MIGRATE_KEYGUARD_STATUS_VIEW)) {
                if (KeyguardShadeMigrationNssl.isEnabled()) {
                    log("Using GoneToAodTransition");
                    log("Using GoneToAodTransition");
                    mKeyguardViewVisibilityAnimating = false;
                    mKeyguardViewVisibilityAnimating = false;
                } else {
                } else {
+0 −5
Original line number Original line Diff line number Diff line
@@ -17,7 +17,6 @@
package com.android.systemui.flags
package com.android.systemui.flags


import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.flags.Flags as Classic
import com.android.systemui.statusbar.notification.footer.shared.FooterViewRefactor
import com.android.systemui.statusbar.notification.footer.shared.FooterViewRefactor
import com.android.systemui.statusbar.notification.shared.NotificationIconContainerRefactor
import com.android.systemui.statusbar.notification.shared.NotificationIconContainerRefactor
import javax.inject.Inject
import javax.inject.Inject
@@ -28,9 +27,5 @@ class FlagDependencies @Inject constructor(featureFlags: FeatureFlagsClassic, ha
    FlagDependenciesBase(featureFlags, handler) {
    FlagDependenciesBase(featureFlags, handler) {
    override fun defineDependencies() {
    override fun defineDependencies() {
        FooterViewRefactor.token dependsOn NotificationIconContainerRefactor.token
        FooterViewRefactor.token dependsOn NotificationIconContainerRefactor.token

        // These two flags are effectively linked. We should migrate them to a single aconfig flag.
        Classic.MIGRATE_NSSL dependsOn Classic.MIGRATE_KEYGUARD_STATUS_VIEW
        Classic.MIGRATE_KEYGUARD_STATUS_VIEW dependsOn Classic.MIGRATE_NSSL
    }
    }
}
}
Loading