summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Anton Potapov <apotapov@google.com> 2023-07-21 17:32:55 +0100
committer Anton Potapov <apotapov@google.com> 2023-07-31 14:06:40 +0000
commita55613e620686bcbc8226c46f8d19dd52352dae1 (patch)
tree4ccf7bc87a5f077f38e1f4f340ff913788596205
parent88c874299e6e303c814b246a802b0b39d9396a71 (diff)
Remove CONTROLS_MANAGEMENT_NEW_FLOWS flag
Test: manual add/edit app control in Device Controls Test: atest ControlsEditingActivityTest Test: atest CibtriksFavoritingActivityTest Test: atest ControlsUiControllerImplTest Fixes: 292236957 Change-Id: I155e43ccf8caa55818a03425bbab48ab2d59b614
-rw-r--r--packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt7
-rw-r--r--packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt45
-rw-r--r--packages/SystemUI/src/com/android/systemui/controls/ui/ControlsUiControllerImpl.kt26
-rw-r--r--packages/SystemUI/src/com/android/systemui/flags/Flags.kt3
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsEditingActivityTest.kt22
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsFavoritingActivityTest.kt53
6 files changed, 14 insertions, 142 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt
index b387e4a66bd2..4c9dbe02fad8 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt
@@ -40,8 +40,6 @@ import com.android.systemui.controls.controller.ControlsControllerImpl
import com.android.systemui.controls.controller.StructureInfo
import com.android.systemui.controls.ui.ControlsActivity
import com.android.systemui.dagger.qualifiers.Main
-import com.android.systemui.flags.FeatureFlags
-import com.android.systemui.flags.Flags
import com.android.systemui.settings.UserTracker
import java.util.concurrent.Executor
import javax.inject.Inject
@@ -50,7 +48,6 @@ import javax.inject.Inject
* Activity for rearranging and removing controls for a given structure
*/
open class ControlsEditingActivity @Inject constructor(
- featureFlags: FeatureFlags,
@Main private val mainExecutor: Executor,
private val controller: ControlsControllerImpl,
private val userTracker: UserTracker,
@@ -76,8 +73,6 @@ open class ControlsEditingActivity @Inject constructor(
private var isFromFavoriting: Boolean = false
- private val isNewFlowEnabled: Boolean =
- featureFlags.isEnabled(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS)
private val userTrackerCallback: UserTracker.Callback = object : UserTracker.Callback {
private val startingUser = controller.currentUserId
@@ -176,7 +171,7 @@ open class ControlsEditingActivity @Inject constructor(
private fun bindButtons() {
addControls = requireViewById<Button>(R.id.addControls).apply {
isEnabled = true
- visibility = if (isNewFlowEnabled) View.VISIBLE else View.GONE
+ visibility = View.VISIBLE
setOnClickListener {
if (saveButton.isEnabled) {
// The user has made changes
diff --git a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt
index 59fa7f53fc17..23721c93508b 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt
@@ -33,7 +33,6 @@ import android.view.ViewStub
import android.widget.Button
import android.widget.FrameLayout
import android.widget.TextView
-import android.widget.Toast
import android.window.OnBackInvokedCallback
import android.window.OnBackInvokedDispatcher
import androidx.activity.ComponentActivity
@@ -41,24 +40,19 @@ import androidx.annotation.VisibleForTesting
import androidx.viewpager2.widget.ViewPager2
import com.android.systemui.Prefs
import com.android.systemui.R
-import com.android.systemui.controls.ControlsServiceInfo
import com.android.systemui.controls.TooltipManager
import com.android.systemui.controls.controller.ControlsControllerImpl
import com.android.systemui.controls.controller.StructureInfo
import com.android.systemui.controls.ui.ControlsActivity
import com.android.systemui.dagger.qualifiers.Main
-import com.android.systemui.flags.FeatureFlags
-import com.android.systemui.flags.Flags
import com.android.systemui.settings.UserTracker
import java.text.Collator
import java.util.concurrent.Executor
import javax.inject.Inject
open class ControlsFavoritingActivity @Inject constructor(
- featureFlags: FeatureFlags,
@Main private val executor: Executor,
private val controller: ControlsControllerImpl,
- private val listingController: ControlsListingController,
private val userTracker: UserTracker,
) : ComponentActivity() {
@@ -92,7 +86,6 @@ open class ControlsFavoritingActivity @Inject constructor(
private lateinit var pageIndicator: ManagementPageIndicator
private var mTooltipManager: TooltipManager? = null
private lateinit var doneButton: View
- private lateinit var otherAppsButton: View
private lateinit var rearrangeButton: Button
private var listOfStructures = emptyList<StructureContainer>()
@@ -104,8 +97,6 @@ open class ControlsFavoritingActivity @Inject constructor(
get() = openSource == EXTRA_SOURCE_VALUE_FROM_PROVIDER_SELECTOR
private val fromEditing: Boolean
get() = openSource == EXTRA_SOURCE_VALUE_FROM_EDITING
- private val isNewFlowEnabled: Boolean =
- featureFlags.isEnabled(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS)
private val userTrackerCallback: UserTracker.Callback = object : UserTracker.Callback {
private val startingUser = controller.currentUserId
@@ -124,20 +115,6 @@ open class ControlsFavoritingActivity @Inject constructor(
onBackPressed()
}
- private val listingCallback = object : ControlsListingController.ControlsListingCallback {
-
- override fun onServicesUpdated(serviceInfos: List<ControlsServiceInfo>) {
- if (serviceInfos.size > 1) {
- val newVisibility = if (isNewFlowEnabled) View.GONE else View.VISIBLE
- if (otherAppsButton.visibility != newVisibility) {
- otherAppsButton.post {
- otherAppsButton.visibility = newVisibility
- }
- }
- }
- }
- }
-
override fun onBackPressed() {
if (fromEditing) {
animateExitAndFinish()
@@ -342,7 +319,7 @@ open class ControlsFavoritingActivity @Inject constructor(
getString(R.string.controls_favorite_rearrange_button)
}
isEnabled = false
- visibility = if (isNewFlowEnabled) View.VISIBLE else View.GONE
+ visibility = View.VISIBLE
setOnClickListener {
if (component == null) return@setOnClickListener
saveFavorites()
@@ -361,24 +338,6 @@ open class ControlsFavoritingActivity @Inject constructor(
)
}
}
- otherAppsButton = requireViewById<Button>(R.id.other_apps).apply {
- setOnClickListener {
- if (doneButton.isEnabled) {
- // The user has made changes
- Toast.makeText(
- applicationContext,
- R.string.controls_favorite_toast_no_changes,
- Toast.LENGTH_SHORT
- ).show()
- }
- startActivity(
- Intent(context, ControlsProviderSelectorActivity::class.java),
- ActivityOptions
- .makeSceneTransitionAnimation(this@ControlsFavoritingActivity).toBundle()
- )
- animateExitAndFinish()
- }
- }
doneButton = requireViewById<Button>(R.id.done).apply {
isEnabled = false
@@ -415,7 +374,6 @@ open class ControlsFavoritingActivity @Inject constructor(
override fun onStart() {
super.onStart()
- listingController.addCallback(listingCallback)
userTracker.addCallback(userTrackerCallback, executor)
if (DEBUG) {
@@ -440,7 +398,6 @@ open class ControlsFavoritingActivity @Inject constructor(
override fun onStop() {
super.onStop()
- listingController.removeCallback(listingCallback)
userTracker.removeCallback(userTrackerCallback)
if (DEBUG) {
diff --git a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsUiControllerImpl.kt b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsUiControllerImpl.kt
index 631ed3c26496..4395e36243a5 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsUiControllerImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsUiControllerImpl.kt
@@ -506,30 +506,22 @@ class ControlsUiControllerImpl @Inject constructor (
val isPanel = selectedItem is SelectedItem.PanelItem
val selectedStructure = (selectedItem as? SelectedItem.StructureItem)?.structure
?: EMPTY_STRUCTURE
- val newFlows = featureFlags.isEnabled(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS)
val items = buildList {
add(OverflowMenuAdapter.MenuItem(
context.getText(R.string.controls_open_app),
OPEN_APP_ID
))
- if (newFlows || isPanel) {
- if (extraApps) {
- add(OverflowMenuAdapter.MenuItem(
- context.getText(R.string.controls_menu_add_another_app),
- 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,
- ))
- }
- } else {
+ if (extraApps) {
+ add(OverflowMenuAdapter.MenuItem(
+ context.getText(R.string.controls_menu_add_another_app),
+ ADD_APP_ID
+ ))
+ }
+ if (featureFlags.isEnabled(Flags.APP_PANELS_REMOVE_APPS_ALLOWED)) {
add(OverflowMenuAdapter.MenuItem(
- context.getText(R.string.controls_menu_add),
- ADD_CONTROLS_ID
+ context.getText(R.string.controls_menu_remove),
+ REMOVE_APP_ID,
))
}
if (!isPanel) {
diff --git a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
index 40a90fb4b34a..702c82ec148a 100644
--- a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
+++ b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
@@ -619,9 +619,6 @@ object Flags {
// 2000 - device controls
@JvmField val APP_PANELS_ALL_APPS_ALLOWED = releasedFlag(2001, "app_panels_all_apps_allowed")
- @JvmField
- val CONTROLS_MANAGEMENT_NEW_FLOWS = releasedFlag(2002, "controls_management_new_flows")
-
// Enables removing app from Home control panel as a part of a new flow
// TODO(b/269132640): Tracking Bug
@JvmField
diff --git a/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsEditingActivityTest.kt b/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsEditingActivityTest.kt
index 71d2ec152e5a..bd3d09dfbb20 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsEditingActivityTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsEditingActivityTest.kt
@@ -16,8 +16,6 @@ import com.android.systemui.SysuiTestCase
import com.android.systemui.activity.SingleActivityFactory
import com.android.systemui.controls.CustomIconCache
import com.android.systemui.controls.controller.ControlsControllerImpl
-import com.android.systemui.flags.FakeFeatureFlags
-import com.android.systemui.flags.Flags
import com.android.systemui.settings.UserTracker
import com.android.systemui.util.concurrency.FakeExecutor
import com.android.systemui.util.time.FakeSystemClock
@@ -46,7 +44,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
}
private val uiExecutor = FakeExecutor(FakeSystemClock())
- private val featureFlags = FakeFeatureFlags()
@Mock lateinit var controller: ControlsControllerImpl
@@ -65,7 +62,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
ActivityTestRule(
/* activityFactory= */ SingleActivityFactory {
TestableControlsEditingActivity(
- featureFlags,
uiExecutor,
controller,
userTracker,
@@ -81,8 +77,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
@Before
fun setUp() {
MockitoAnnotations.initMocks(this)
-
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, false)
}
@Test
@@ -101,16 +95,7 @@ class ControlsEditingActivityTest : SysuiTestCase() {
}
@Test
- fun testNewFlowDisabled_addControlsButton_gone() {
- with(launchActivity()) {
- val addControlsButton = requireViewById<Button>(R.id.addControls)
- assertThat(addControlsButton.visibility).isEqualTo(View.GONE)
- }
- }
-
- @Test
- fun testNewFlowEnabled_addControlsButton_visible() {
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, true)
+ fun testAddControlsButton_visible() {
with(launchActivity()) {
val addControlsButton = requireViewById<Button>(R.id.addControls)
assertThat(addControlsButton.visibility).isEqualTo(View.VISIBLE)
@@ -120,7 +105,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
@Test
fun testNotLaunchFromFavoriting_saveButton_disabled() {
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, true)
with(launchActivity(isFromFavoriting = false)) {
val saveButton = requireViewById<Button>(R.id.done)
assertThat(saveButton.isEnabled).isFalse()
@@ -129,7 +113,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
@Test
fun testLaunchFromFavoriting_saveButton_enabled() {
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, true)
with(launchActivity(isFromFavoriting = true)) {
val saveButton = requireViewById<Button>(R.id.done)
assertThat(saveButton.isEnabled).isTrue()
@@ -138,7 +121,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
@Test
fun testNotFromFavoriting_addControlsPressed_launchesFavouriting() {
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, true)
with(launchActivity(isFromFavoriting = false)) {
val addControls = requireViewById<Button>(R.id.addControls)
@@ -177,7 +159,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
)
class TestableControlsEditingActivity(
- featureFlags: FakeFeatureFlags,
executor: FakeExecutor,
controller: ControlsControllerImpl,
userTracker: UserTracker,
@@ -186,7 +167,6 @@ class ControlsEditingActivityTest : SysuiTestCase() {
private val latch: CountDownLatch
) :
ControlsEditingActivity(
- featureFlags,
executor,
controller,
userTracker,
diff --git a/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsFavoritingActivityTest.kt b/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsFavoritingActivityTest.kt
index f11c296ad572..70d93a10b445 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsFavoritingActivityTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsFavoritingActivityTest.kt
@@ -17,14 +17,11 @@ import com.android.systemui.R
import com.android.systemui.SysuiTestCase
import com.android.systemui.activity.SingleActivityFactory
import com.android.systemui.controls.ControlStatus
-import com.android.systemui.controls.ControlsServiceInfo
import com.android.systemui.controls.controller.ControlsController
import com.android.systemui.controls.controller.ControlsControllerImpl
import com.android.systemui.controls.controller.createLoadDataObject
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.flags.FakeFeatureFlags
-import com.android.systemui.flags.FeatureFlags
-import com.android.systemui.flags.Flags
import com.android.systemui.settings.UserTracker
import com.android.systemui.util.mockito.any
import com.android.systemui.util.mockito.capture
@@ -73,8 +70,6 @@ class ControlsFavoritingActivityTest : SysuiTestCase() {
@Mock lateinit var controller: ControlsControllerImpl
- @Mock lateinit var listingController: ControlsListingController
-
@Mock lateinit var userTracker: UserTracker
private var latch: CountDownLatch = CountDownLatch(1)
@@ -82,9 +77,6 @@ class ControlsFavoritingActivityTest : SysuiTestCase() {
@Mock private lateinit var mockDispatcher: OnBackInvokedDispatcher
@Captor private lateinit var captureCallback: ArgumentCaptor<OnBackInvokedCallback>
@Captor
- private lateinit var listingCallback:
- ArgumentCaptor<ControlsListingController.ControlsListingCallback>
- @Captor
private lateinit var controlsCallback: ArgumentCaptor<Consumer<ControlsController.LoadData>>
@Rule
@@ -93,10 +85,8 @@ class ControlsFavoritingActivityTest : SysuiTestCase() {
ActivityTestRule(
/* activityFactory= */ SingleActivityFactory {
TestableControlsFavoritingActivity(
- featureFlags,
executor,
controller,
- listingController,
userTracker,
mockDispatcher,
latch
@@ -109,7 +99,6 @@ class ControlsFavoritingActivityTest : SysuiTestCase() {
@Before
fun setUp() {
MockitoAnnotations.initMocks(this)
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, false)
}
// b/259549854 to root-cause and fix
@@ -130,14 +119,8 @@ class ControlsFavoritingActivityTest : SysuiTestCase() {
}
@Test
- fun testNewFlowEnabled_buttons() {
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, true)
+ fun testButtons() {
with(launchActivity()) {
- verify(listingController).addCallback(listingCallback.capture())
- listingCallback.value.onServicesUpdated(
- listOf(mock(ControlsServiceInfo::class.java), mock(ControlsServiceInfo::class.java))
- )
-
val rearrangeButton = requireViewById<Button>(R.id.rearrange)
assertThat(rearrangeButton.visibility).isEqualTo(View.VISIBLE)
assertThat(rearrangeButton.isEnabled).isFalse()
@@ -149,36 +132,8 @@ class ControlsFavoritingActivityTest : SysuiTestCase() {
}
@Test
- fun testNewFlowDisabled_buttons() {
- with(launchActivity()) {
- verify(listingController).addCallback(listingCallback.capture())
- activityRule.runOnUiThread {
- listingCallback.value.onServicesUpdated(
- listOf(
- mock(ControlsServiceInfo::class.java),
- mock(ControlsServiceInfo::class.java)
- )
- )
- }
-
- val rearrangeButton = requireViewById<Button>(R.id.rearrange)
- assertThat(rearrangeButton.visibility).isEqualTo(View.GONE)
- assertThat(rearrangeButton.isEnabled).isFalse()
-
- val otherAppsButton = requireViewById<Button>(R.id.other_apps)
- otherAppsButton.waitForPost()
- assertThat(otherAppsButton.visibility).isEqualTo(View.VISIBLE)
- }
- }
-
- @Test
- fun testNewFlowEnabled_rearrangePressed_savesAndlaunchesActivity() {
- featureFlags.set(Flags.CONTROLS_MANAGEMENT_NEW_FLOWS, true)
+ fun testRearrangePressed_savesAndlaunchesActivity() {
with(launchActivity()) {
- verify(listingController).addCallback(capture(listingCallback))
- listingCallback.value.onServicesUpdated(
- listOf(mock(ControlsServiceInfo::class.java), mock(ControlsServiceInfo::class.java))
- )
verify(controller).loadForComponent(any(), capture(controlsCallback), any())
activityRule.runOnUiThread {
controlsCallback.value.accept(
@@ -224,19 +179,15 @@ class ControlsFavoritingActivityTest : SysuiTestCase() {
)
class TestableControlsFavoritingActivity(
- featureFlags: FeatureFlags,
executor: Executor,
controller: ControlsControllerImpl,
- listingController: ControlsListingController,
userTracker: UserTracker,
private val mockDispatcher: OnBackInvokedDispatcher,
private val latch: CountDownLatch
) :
ControlsFavoritingActivity(
- featureFlags,
executor,
controller,
- listingController,
userTracker,
) {