From 7b93c03e46b4837c1332e5558ad172889f08285a Mon Sep 17 00:00:00 2001 From: Alejandro Nijamkin Date: Wed, 14 Dec 2022 16:23:35 -0800 Subject: [PATCH] Links WPP clocks flag to SysUI's flag (3/3). Bug: 261990616 Test: manually verified that setting or unsetting the flag in System UI correctly shows or hides the "Custom Clock" section in Wallpaper Picker, respectively. Change-Id: I4847b5f7d164e69b10eeb36e65a18720fd342198 --- .../FakeKeyguardQuickAffordanceProviderClient.kt | 4 +++- .../content/KeyguardQuickAffordanceProviderContract.kt | 6 +++++- .../interactor/KeyguardQuickAffordanceInteractor.kt | 10 +++++++--- .../keyguard/KeyguardQuickAffordanceProviderTest.kt | 1 + 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/FakeKeyguardQuickAffordanceProviderClient.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/FakeKeyguardQuickAffordanceProviderClient.kt index cb1a5f958ed6d..ec5e70383eb39 100644 --- a/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/FakeKeyguardQuickAffordanceProviderClient.kt +++ b/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/FakeKeyguardQuickAffordanceProviderClient.kt @@ -58,7 +58,9 @@ class FakeKeyguardQuickAffordanceProviderClient( flags: List = listOf( KeyguardQuickAffordanceProviderClient.Flag( - name = KeyguardQuickAffordanceProviderContract.FlagsTable.FLAG_NAME_FEATURE_ENABLED, + name = + KeyguardQuickAffordanceProviderContract.FlagsTable + .FLAG_NAME_CUSTOM_LOCK_SCREEN_QUICK_AFFORDANCES_ENABLED, value = true, ) ), diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/KeyguardQuickAffordanceProviderContract.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/KeyguardQuickAffordanceProviderContract.kt index 17be74b08690d..923b99f0b7501 100644 --- a/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/KeyguardQuickAffordanceProviderContract.kt +++ b/packages/SystemUI/customization/src/com/android/systemui/shared/quickaffordance/data/content/KeyguardQuickAffordanceProviderContract.kt @@ -148,7 +148,11 @@ object KeyguardQuickAffordanceProviderContract { /** * Flag denoting whether the customizable lock screen quick affordances feature is enabled. */ - const val FLAG_NAME_FEATURE_ENABLED = "is_feature_enabled" + const val FLAG_NAME_CUSTOM_LOCK_SCREEN_QUICK_AFFORDANCES_ENABLED = + "is_custom_lock_screen_quick_affordances_feature_enabled" + + /** Flag denoting whether the customizable clocks feature is enabled. */ + const val FLAG_NAME_CUSTOM_CLOCKS_ENABLED = "is_custom_clocks_feature_enabled" object Columns { /** String. Unique ID for the flag. */ diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt index 57668c795d1c9..f4c335b04f5b8 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt @@ -34,7 +34,7 @@ import com.android.systemui.keyguard.shared.model.KeyguardSlotPickerRepresentati import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancePosition import com.android.systemui.plugins.ActivityStarter import com.android.systemui.settings.UserTracker -import com.android.systemui.shared.quickaffordance.data.content.KeyguardQuickAffordanceProviderContract +import com.android.systemui.shared.quickaffordance.data.content.KeyguardQuickAffordanceProviderContract as Contract import com.android.systemui.statusbar.policy.KeyguardStateController import dagger.Lazy import javax.inject.Inject @@ -333,9 +333,13 @@ constructor( fun getPickerFlags(): List { return listOf( KeyguardPickerFlag( - name = KeyguardQuickAffordanceProviderContract.FlagsTable.FLAG_NAME_FEATURE_ENABLED, + name = Contract.FlagsTable.FLAG_NAME_CUSTOM_LOCK_SCREEN_QUICK_AFFORDANCES_ENABLED, value = featureFlags.isEnabled(Flags.CUSTOMIZABLE_LOCK_SCREEN_QUICK_AFFORDANCES), - ) + ), + KeyguardPickerFlag( + name = Contract.FlagsTable.FLAG_NAME_CUSTOM_CLOCKS_ENABLED, + value = featureFlags.isEnabled(Flags.LOCKSCREEN_CUSTOM_CLOCKS), + ), ) } diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardQuickAffordanceProviderTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardQuickAffordanceProviderTest.kt index 09c8e6ac12686..26a63e22eb8b8 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardQuickAffordanceProviderTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardQuickAffordanceProviderTest.kt @@ -167,6 +167,7 @@ class KeyguardQuickAffordanceProviderTest : SysuiTestCase() { featureFlags = FakeFeatureFlags().apply { set(Flags.CUSTOMIZABLE_LOCK_SCREEN_QUICK_AFFORDANCES, true) + set(Flags.LOCKSCREEN_CUSTOM_CLOCKS, true) }, repository = { quickAffordanceRepository }, )