Hide AOD/LS layout changes

Add support for new sysui overlay in order to disable aod/ls layouts
from the preview builds.

Bug: 178471752
Test: atest KeyguardUpdateMonitorTest
Change-Id: Iaf1dd2ba73368a3c43efe81c10aa9df42df6fdbe
This commit is contained in:
Matt Pietal
2021-01-26 09:01:16 -05:00
parent 39a146fd05
commit 9bade6ba98
6 changed files with 19 additions and 30 deletions

View File

@@ -14628,15 +14628,6 @@ public final class Settings {
public static final String PEOPLE_SPACE_CONVERSATION_TYPE =
"people_space_conversation_type";
/**
* Whether to show new lockscreen & AOD UI.
* Values are:
* 0: Disabled (default)
* 1: Enabled
* @hide
*/
public static final String SHOW_NEW_LOCKSCREEN = "show_new_lockscreen";
/**
* Whether to show new notification dismissal.
* Values are:

View File

@@ -445,7 +445,6 @@ public class SettingsBackupTest {
Settings.Global.SHOW_NEW_APP_INSTALLED_NOTIFICATION_ENABLED,
Settings.Global.SHOW_NOTIFICATION_CHANNEL_WARNINGS,
Settings.Global.SHOW_PEOPLE_SPACE,
Settings.Global.SHOW_NEW_LOCKSCREEN,
Settings.Global.SHOW_NEW_NOTIF_DISMISS,
Settings.Global.SHOW_RESTART_IN_CRASH_DIALOG,
Settings.Global.SHOW_TEMPERATURE_WARNING,

View File

@@ -26,4 +26,7 @@
<bool name="flag_notification_twocolumn">false</bool>
<bool name="flag_qs_labels">false</bool>
<!-- AOD/Lockscreen alternate layout -->
<bool name="flag_keyguard_layout">false</bool>
</resources>

View File

@@ -104,6 +104,7 @@ import com.android.systemui.dump.DumpManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.shared.system.TaskStackChangeListener;
import com.android.systemui.shared.system.TaskStackChangeListeners;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.phone.KeyguardBypassController;
import com.android.systemui.util.Assert;
@@ -282,7 +283,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
private final ArrayList<WeakReference<KeyguardUpdateMonitorCallback>>
mCallbacks = Lists.newArrayList();
private ContentObserver mDeviceProvisionedObserver;
private ContentObserver mLockScreenModeObserver;
private ContentObserver mTimeFormatChangeObserver;
private boolean mSwitchingUser;
@@ -1612,7 +1612,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
@Background Executor backgroundExecutor,
StatusBarStateController statusBarStateController,
LockPatternUtils lockPatternUtils,
AuthController authController) {
AuthController authController,
FeatureFlags featureFlags) {
mContext = context;
mSubscriptionManager = SubscriptionManager.from(context);
mDeviceProvisioned = isDeviceProvisionedInSettingsDb();
@@ -1878,16 +1879,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
}
}
updateLockScreenMode();
mLockScreenModeObserver = new ContentObserver(mHandler) {
@Override
public void onChange(boolean selfChange) {
updateLockScreenMode();
}
};
mContext.getContentResolver().registerContentObserver(
Settings.Global.getUriFor(Settings.Global.SHOW_NEW_LOCKSCREEN),
false, mLockScreenModeObserver);
updateLockScreenMode(featureFlags.isKeyguardLayoutEnabled());
mTimeFormatChangeObserver = new ContentObserver(mHandler) {
@Override
@@ -1904,9 +1896,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
false, mTimeFormatChangeObserver, UserHandle.USER_ALL);
}
private void updateLockScreenMode() {
final int newMode = Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.SHOW_NEW_LOCKSCREEN, LOCK_SCREEN_MODE_LAYOUT_1);
private void updateLockScreenMode(boolean isEnabled) {
final int newMode = isEnabled ? LOCK_SCREEN_MODE_LAYOUT_1 : LOCK_SCREEN_MODE_NORMAL;
if (newMode != mLockScreenMode) {
mLockScreenMode = newMode;
mHandler.sendEmptyMessage(MSG_LOCK_SCREEN_MODE);
@@ -3129,10 +3120,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
mContext.getContentResolver().unregisterContentObserver(mDeviceProvisionedObserver);
}
if (mLockScreenModeObserver != null) {
mContext.getContentResolver().unregisterContentObserver(mLockScreenModeObserver);
}
if (mTimeFormatChangeObserver != null) {
mContext.getContentResolver().unregisterContentObserver(mTimeFormatChangeObserver);
}

View File

@@ -57,4 +57,8 @@ public class FeatureFlags {
public boolean isQSLabelsEnabled() {
return mFlagReader.isEnabled(R.bool.flag_qs_labels);
}
public boolean isKeyguardLayoutEnabled() {
return mFlagReader.isEnabled(R.bool.flag_keyguard_layout);
}
}

View File

@@ -83,6 +83,7 @@ import com.android.systemui.biometrics.AuthController;
import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.phone.KeyguardBypassController;
import com.android.systemui.util.RingerModeTracker;
@@ -159,6 +160,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
private StatusBarStateController mStatusBarStateController;
@Mock
private AuthController mAuthController;
@Mock
private FeatureFlags mFeatureFlags;
@Captor
private ArgumentCaptor<StatusBarStateController.StateListener> mStatusBarStateListenerCaptor;
// Direct executor
@@ -216,6 +219,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
when(mRingerModeTracker.getRingerMode()).thenReturn(mRingerModeLiveData);
when(mFeatureFlags.isKeyguardLayoutEnabled()).thenReturn(false);
mMockitoSession = ExtendedMockito.mockitoSession()
.spyStatic(SubscriptionManager.class).startMocking();
ExtendedMockito.doReturn(SubscriptionManager.INVALID_SUBSCRIPTION_ID)
@@ -884,7 +889,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mBroadcastDispatcher, mDumpManager,
mRingerModeTracker, mBackgroundExecutor,
mStatusBarStateController, mLockPatternUtils,
mAuthController);
mAuthController, mFeatureFlags);
setStrongAuthTracker(KeyguardUpdateMonitorTest.this.mStrongAuthTracker);
}