Merge "Remove APP_PANELS_REMOVE_APPS_ALLOWED flag" into udc-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
bb3fb113ec
@@ -20,8 +20,6 @@ package com.android.systemui.controls.panels
|
||||
import android.content.Context
|
||||
import android.content.SharedPreferences
|
||||
import com.android.systemui.R
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.settings.UserFileManager
|
||||
import com.android.systemui.settings.UserTracker
|
||||
import com.android.systemui.statusbar.policy.DeviceControlsControllerImpl
|
||||
@@ -33,7 +31,6 @@ constructor(
|
||||
private val context: Context,
|
||||
private val userFileManager: UserFileManager,
|
||||
private val userTracker: UserTracker,
|
||||
private val featureFlags: FeatureFlags,
|
||||
) : AuthorizedPanelsRepository {
|
||||
|
||||
override fun getAuthorizedPanels(): Set<String> {
|
||||
@@ -74,17 +71,8 @@ constructor(
|
||||
userTracker.userId,
|
||||
)
|
||||
|
||||
// We should add default packages in two cases:
|
||||
// 1) We've never run this
|
||||
// 2) APP_PANELS_REMOVE_APPS_ALLOWED got disabled after user removed all apps
|
||||
val needToSetup =
|
||||
if (featureFlags.isEnabled(Flags.APP_PANELS_REMOVE_APPS_ALLOWED)) {
|
||||
sharedPref.getStringSet(KEY, null) == null
|
||||
} else {
|
||||
// There might be an empty set that need to be overridden after the feature has been
|
||||
// turned off after being turned on
|
||||
sharedPref.getStringSet(KEY, null).isNullOrEmpty()
|
||||
}
|
||||
// We should add default packages when we've never run this
|
||||
val needToSetup = sharedPref.getStringSet(KEY, null) == null
|
||||
if (needToSetup) {
|
||||
sharedPref.edit().putStringSet(KEY, getPreferredPackages()).apply()
|
||||
}
|
||||
|
||||
@@ -21,7 +21,6 @@ import android.content.Context
|
||||
import android.content.SharedPreferences
|
||||
import com.android.systemui.dagger.SysUISingleton
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.settings.UserFileManager
|
||||
import com.android.systemui.settings.UserTracker
|
||||
import com.android.systemui.statusbar.policy.DeviceControlsControllerImpl
|
||||
@@ -83,11 +82,7 @@ constructor(
|
||||
}
|
||||
|
||||
override fun shouldAddDefaultComponent(): Boolean =
|
||||
if (featureFlags.isEnabled(Flags.APP_PANELS_REMOVE_APPS_ALLOWED)) {
|
||||
sharedPreferences.getBoolean(SHOULD_ADD_DEFAULT_PANEL, true)
|
||||
} else {
|
||||
true
|
||||
}
|
||||
sharedPreferences.getBoolean(SHOULD_ADD_DEFAULT_PANEL, true)
|
||||
|
||||
override fun setShouldAddDefaultComponent(shouldAdd: Boolean) {
|
||||
sharedPreferences.edit().putBoolean(SHOULD_ADD_DEFAULT_PANEL, shouldAdd).apply()
|
||||
|
||||
@@ -72,7 +72,6 @@ import com.android.systemui.dagger.qualifiers.Background
|
||||
import com.android.systemui.dagger.qualifiers.Main
|
||||
import com.android.systemui.dump.DumpManager
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.plugins.ActivityStarter
|
||||
import com.android.systemui.settings.UserTracker
|
||||
import com.android.systemui.statusbar.policy.KeyguardStateController
|
||||
@@ -518,12 +517,10 @@ class ControlsUiControllerImpl @Inject constructor (
|
||||
ADD_APP_ID
|
||||
))
|
||||
}
|
||||
if (featureFlags.isEnabled(Flags.APP_PANELS_REMOVE_APPS_ALLOWED)) {
|
||||
add(OverflowMenuAdapter.MenuItem(
|
||||
context.getText(R.string.controls_menu_remove),
|
||||
REMOVE_APP_ID,
|
||||
))
|
||||
}
|
||||
add(OverflowMenuAdapter.MenuItem(
|
||||
context.getText(R.string.controls_menu_remove),
|
||||
REMOVE_APP_ID,
|
||||
))
|
||||
if (!isPanel) {
|
||||
add(OverflowMenuAdapter.MenuItem(
|
||||
context.getText(R.string.controls_menu_edit),
|
||||
|
||||
@@ -628,11 +628,6 @@ object Flags {
|
||||
// 2000 - device controls
|
||||
@JvmField val APP_PANELS_ALL_APPS_ALLOWED = releasedFlag(2001, "app_panels_all_apps_allowed")
|
||||
|
||||
// Enables removing app from Home control panel as a part of a new flow
|
||||
// TODO(b/269132640): Tracking Bug
|
||||
@JvmField
|
||||
val APP_PANELS_REMOVE_APPS_ALLOWED = releasedFlag(2003, "app_panels_remove_apps_allowed")
|
||||
|
||||
// 2200 - biometrics (udfps, sfps, BiometricPrompt, etc.)
|
||||
// TODO(b/259264861): Tracking Bug
|
||||
@JvmField val UDFPS_NEW_TOUCH_DETECTION = releasedFlag(2200, "udfps_new_touch_detection")
|
||||
|
||||
@@ -22,8 +22,6 @@ import android.testing.AndroidTestingRunner
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.R
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.settings.UserFileManager
|
||||
import com.android.systemui.settings.UserTracker
|
||||
import com.android.systemui.util.FakeSharedPreferences
|
||||
@@ -42,8 +40,6 @@ class AuthorizedPanelsRepositoryImplTest : SysuiTestCase() {
|
||||
|
||||
@Mock private lateinit var userTracker: UserTracker
|
||||
|
||||
private val featureFlags = FakeFeatureFlags()
|
||||
|
||||
@Before
|
||||
fun setUp() {
|
||||
MockitoAnnotations.initMocks(this)
|
||||
@@ -52,7 +48,6 @@ class AuthorizedPanelsRepositoryImplTest : SysuiTestCase() {
|
||||
arrayOf<String>()
|
||||
)
|
||||
whenever(userTracker.userId).thenReturn(0)
|
||||
featureFlags.set(Flags.APP_PANELS_REMOVE_APPS_ALLOWED, true)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -132,25 +127,8 @@ class AuthorizedPanelsRepositoryImplTest : SysuiTestCase() {
|
||||
assertThat(sharedPrefs.getStringSet(KEY, null)).isEmpty()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testSetAuthorizedPackageAfterFeatureDisabled() {
|
||||
mContext.orCreateTestableResources.addOverride(
|
||||
R.array.config_controlsPreferredPackages,
|
||||
arrayOf(TEST_PACKAGE)
|
||||
)
|
||||
val sharedPrefs = FakeSharedPreferences()
|
||||
val fileManager = FakeUserFileManager(mapOf(0 to sharedPrefs))
|
||||
val repository = createRepository(fileManager)
|
||||
|
||||
repository.removeAuthorizedPanels(setOf(TEST_PACKAGE))
|
||||
|
||||
featureFlags.set(Flags.APP_PANELS_REMOVE_APPS_ALLOWED, false)
|
||||
|
||||
assertThat(repository.getAuthorizedPanels()).isEqualTo(setOf(TEST_PACKAGE))
|
||||
}
|
||||
|
||||
private fun createRepository(userFileManager: UserFileManager): AuthorizedPanelsRepositoryImpl {
|
||||
return AuthorizedPanelsRepositoryImpl(mContext, userFileManager, userTracker, featureFlags)
|
||||
return AuthorizedPanelsRepositoryImpl(mContext, userFileManager, userTracker)
|
||||
}
|
||||
|
||||
private class FakeUserFileManager(private val sharedPrefs: Map<Int, SharedPreferences>) :
|
||||
|
||||
@@ -22,7 +22,6 @@ import android.testing.AndroidTestingRunner
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.settings.UserFileManager
|
||||
import com.android.systemui.settings.UserTracker
|
||||
import com.android.systemui.statusbar.policy.DeviceControlsControllerImpl
|
||||
@@ -103,35 +102,17 @@ class SelectedComponentRepositoryTest : SysuiTestCase() {
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testFeatureEnabled_shouldAddDefaultPanelDefaultsToTrue() {
|
||||
featureFlags.set(Flags.APP_PANELS_REMOVE_APPS_ALLOWED, true)
|
||||
|
||||
fun testShouldAddDefaultPanelDefaultsToTrue() {
|
||||
assertThat(repository.shouldAddDefaultComponent()).isTrue()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testFeatureDisabled_shouldAddDefaultPanelDefaultsToTrue() {
|
||||
featureFlags.set(Flags.APP_PANELS_REMOVE_APPS_ALLOWED, false)
|
||||
|
||||
assertThat(repository.shouldAddDefaultComponent()).isTrue()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testFeatureEnabled_shouldAddDefaultPanelChecked() {
|
||||
featureFlags.set(Flags.APP_PANELS_REMOVE_APPS_ALLOWED, true)
|
||||
fun testShouldAddDefaultPanelChecked() {
|
||||
repository.setShouldAddDefaultComponent(false)
|
||||
|
||||
assertThat(repository.shouldAddDefaultComponent()).isFalse()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testFeatureDisabled_shouldAlwaysAddDefaultPanelAlwaysTrue() {
|
||||
featureFlags.set(Flags.APP_PANELS_REMOVE_APPS_ALLOWED, false)
|
||||
repository.setShouldAddDefaultComponent(false)
|
||||
|
||||
assertThat(repository.shouldAddDefaultComponent()).isTrue()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testGetPreferredStructure_differentUserId() {
|
||||
sharedPreferences.savePanel(COMPONENT_A)
|
||||
|
||||
Reference in New Issue
Block a user