Merge "Remove USE_APP_PANELS flag" into udc-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
40383d7977
@@ -124,8 +124,7 @@ class ControlsListingControllerImpl @VisibleForTesting constructor(
|
||||
}
|
||||
|
||||
private fun updateServices(newServices: List<ControlsServiceInfo>) {
|
||||
if (featureFlags.isEnabled(Flags.USE_APP_PANELS) &&
|
||||
activityTaskManagerProxy.supportsMultiWindow(context)) {
|
||||
if (activityTaskManagerProxy.supportsMultiWindow(context)) {
|
||||
val allowAllApps = featureFlags.isEnabled(Flags.APP_PANELS_ALL_APPS_ALLOWED)
|
||||
newServices.forEach {
|
||||
it.resolvePanelActivity(allowAllApps) }
|
||||
|
||||
@@ -34,12 +34,9 @@ import android.view.HapticFeedbackConstants
|
||||
import com.android.internal.annotations.VisibleForTesting
|
||||
import com.android.systemui.broadcast.BroadcastSender
|
||||
import com.android.systemui.controls.ControlsMetricsLogger
|
||||
import com.android.systemui.controls.settings.ControlsSettingsDialogManager
|
||||
import com.android.systemui.controls.settings.ControlsSettingsRepository
|
||||
import com.android.systemui.dagger.SysUISingleton
|
||||
import com.android.systemui.dagger.qualifiers.Main
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.plugins.ActivityStarter
|
||||
import com.android.systemui.statusbar.VibratorHelper
|
||||
import com.android.systemui.statusbar.policy.KeyguardStateController
|
||||
@@ -60,8 +57,6 @@ class ControlActionCoordinatorImpl @Inject constructor(
|
||||
private val controlsMetricsLogger: ControlsMetricsLogger,
|
||||
private val vibrator: VibratorHelper,
|
||||
private val controlsSettingsRepository: ControlsSettingsRepository,
|
||||
private val controlsSettingsDialogManager: ControlsSettingsDialogManager,
|
||||
private val featureFlags: FeatureFlags,
|
||||
) : ControlActionCoordinator {
|
||||
private var dialog: Dialog? = null
|
||||
private var pendingAction: Action? = null
|
||||
@@ -77,9 +72,6 @@ class ControlActionCoordinatorImpl @Inject constructor(
|
||||
}
|
||||
|
||||
override fun closeDialogs() {
|
||||
if (!featureFlags.isEnabled(Flags.USE_APP_PANELS)) {
|
||||
controlsSettingsDialogManager.closeDialog()
|
||||
}
|
||||
val isActivityFinishing =
|
||||
(activityContext as? Activity)?.let { it.isFinishing || it.isDestroyed }
|
||||
if (isActivityFinishing == true) {
|
||||
@@ -169,7 +161,6 @@ class ControlActionCoordinatorImpl @Inject constructor(
|
||||
override fun runPendingAction(controlId: String) {
|
||||
if (isLocked) return
|
||||
if (pendingAction?.controlId == controlId) {
|
||||
showSettingsDialogIfNeeded(pendingAction!!)
|
||||
pendingAction?.invoke()
|
||||
pendingAction = null
|
||||
}
|
||||
@@ -208,7 +199,6 @@ class ControlActionCoordinatorImpl @Inject constructor(
|
||||
true
|
||||
}, { pendingAction = null }, true /* afterKeyguardGone */)
|
||||
} else {
|
||||
showSettingsDialogIfNeeded(action)
|
||||
action.invoke()
|
||||
}
|
||||
}
|
||||
@@ -243,15 +233,6 @@ class ControlActionCoordinatorImpl @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
private fun showSettingsDialogIfNeeded(action: Action) {
|
||||
if (action.authIsRequired) {
|
||||
return
|
||||
}
|
||||
if (!featureFlags.isEnabled(Flags.USE_APP_PANELS)) {
|
||||
controlsSettingsDialogManager.maybeShowDialog(activityContext) {}
|
||||
}
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
fun createAction(
|
||||
controlId: String,
|
||||
|
||||
@@ -36,7 +36,6 @@ import com.android.systemui.broadcast.BroadcastDispatcher
|
||||
import com.android.systemui.controls.management.ControlsAnimations
|
||||
import com.android.systemui.controls.settings.ControlsSettingsDialogManager
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.statusbar.policy.KeyguardStateController
|
||||
import javax.inject.Inject
|
||||
|
||||
@@ -66,9 +65,7 @@ open class ControlsActivity @Inject constructor(
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
lastConfiguration.setTo(resources.configuration)
|
||||
if (featureFlags.isEnabled(Flags.USE_APP_PANELS)) {
|
||||
window.addPrivateFlags(WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY)
|
||||
}
|
||||
window.addPrivateFlags(WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY)
|
||||
|
||||
setContentView(R.layout.controls_fullscreen)
|
||||
|
||||
@@ -77,7 +74,7 @@ open class ControlsActivity @Inject constructor(
|
||||
requireViewById(R.id.control_detail_root),
|
||||
window,
|
||||
intent,
|
||||
!featureFlags.isEnabled(Flags.USE_APP_PANELS)
|
||||
false
|
||||
)
|
||||
)
|
||||
|
||||
@@ -114,7 +111,7 @@ open class ControlsActivity @Inject constructor(
|
||||
|
||||
parent = requireViewById(R.id.control_detail_root)
|
||||
parent.alpha = 0f
|
||||
if (featureFlags.isEnabled(Flags.USE_APP_PANELS) && !keyguardStateController.isUnlocked) {
|
||||
if (!keyguardStateController.isUnlocked) {
|
||||
controlsSettingsDialogManager.maybeShowDialog(this) {
|
||||
uiController.show(parent, { finishOrReturnToDream() }, this)
|
||||
}
|
||||
|
||||
@@ -617,8 +617,6 @@ object Flags {
|
||||
@JvmField val NOTE_TASKS = releasedFlag(1900, "keycode_flag")
|
||||
|
||||
// 2000 - device controls
|
||||
@Keep @JvmField val USE_APP_PANELS = releasedFlag(2000, "use_app_panels")
|
||||
|
||||
@JvmField val APP_PANELS_ALL_APPS_ALLOWED = releasedFlag(2001, "app_panels_all_apps_allowed")
|
||||
|
||||
@JvmField
|
||||
|
||||
@@ -24,7 +24,6 @@ import com.android.systemui.controls.ControlsMetricsLogger
|
||||
import com.android.systemui.controls.settings.ControlsSettingsDialogManager
|
||||
import com.android.systemui.controls.settings.FakeControlsSettingsRepository
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.plugins.ActivityStarter
|
||||
import com.android.systemui.statusbar.VibratorHelper
|
||||
import com.android.systemui.statusbar.policy.KeyguardStateController
|
||||
@@ -36,7 +35,6 @@ import org.junit.runner.RunWith
|
||||
import org.mockito.Answers
|
||||
import org.mockito.Mock
|
||||
import org.mockito.Mockito
|
||||
import org.mockito.Mockito.`when`
|
||||
import org.mockito.Mockito.anyBoolean
|
||||
import org.mockito.Mockito.doNothing
|
||||
import org.mockito.Mockito.doReturn
|
||||
@@ -44,6 +42,7 @@ import org.mockito.Mockito.never
|
||||
import org.mockito.Mockito.reset
|
||||
import org.mockito.Mockito.spy
|
||||
import org.mockito.Mockito.verify
|
||||
import org.mockito.Mockito.`when`
|
||||
import org.mockito.MockitoAnnotations
|
||||
import java.util.Optional
|
||||
|
||||
@@ -102,14 +101,11 @@ class ControlActionCoordinatorImplTest : SysuiTestCase() {
|
||||
metricsLogger,
|
||||
vibratorHelper,
|
||||
controlsSettingsRepository,
|
||||
controlsSettingsDialogManager,
|
||||
featureFlags
|
||||
))
|
||||
coordinator.activityContext = mContext
|
||||
|
||||
`when`(cvh.cws.ci.controlId).thenReturn(ID)
|
||||
`when`(cvh.cws.control?.isAuthRequired()).thenReturn(true)
|
||||
`when`(featureFlags.isEnabled(Flags.USE_APP_PANELS)).thenReturn(false)
|
||||
|
||||
action = spy(coordinator.Action(ID, {}, false, true))
|
||||
doReturn(action).`when`(coordinator).createAction(any(), any(), anyBoolean(), anyBoolean())
|
||||
@@ -155,13 +151,11 @@ class ControlActionCoordinatorImplTest : SysuiTestCase() {
|
||||
coordinator.toggle(cvh, "", true)
|
||||
|
||||
verify(coordinator).bouncerOrRun(action)
|
||||
verify(controlsSettingsDialogManager).maybeShowDialog(any(), any())
|
||||
verify(action).invoke()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testToggleWhenLockedDoesNotTriggerDialog_featureFlagEnabled() {
|
||||
`when`(featureFlags.isEnabled(Flags.USE_APP_PANELS)).thenReturn(true)
|
||||
action = spy(coordinator.Action(ID, {}, false, false))
|
||||
doReturn(action).`when`(coordinator).createAction(any(), any(), anyBoolean(), anyBoolean())
|
||||
|
||||
|
||||
@@ -37,7 +37,6 @@ import com.android.systemui.controls.ControlsServiceInfo
|
||||
import com.android.systemui.dump.DumpManager
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags.APP_PANELS_ALL_APPS_ALLOWED
|
||||
import com.android.systemui.flags.Flags.USE_APP_PANELS
|
||||
import com.android.systemui.settings.UserTracker
|
||||
import com.android.systemui.util.ActivityTaskManagerProxy
|
||||
import com.android.systemui.util.concurrency.FakeExecutor
|
||||
@@ -124,8 +123,6 @@ class ControlsListingControllerImplTest : SysuiTestCase() {
|
||||
arrayOf(componentName.packageName)
|
||||
)
|
||||
|
||||
// Return true by default, we'll test the false path
|
||||
`when`(featureFlags.isEnabled(USE_APP_PANELS)).thenReturn(true)
|
||||
// Return false by default, we'll test the true path
|
||||
`when`(featureFlags.isEnabled(APP_PANELS_ALL_APPS_ALLOWED)).thenReturn(false)
|
||||
|
||||
@@ -444,34 +441,6 @@ class ControlsListingControllerImplTest : SysuiTestCase() {
|
||||
assertNull(controller.getCurrentServices()[0].panelActivity)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testActivityDefaultEnabled_flagDisabled_nullPanel() {
|
||||
`when`(featureFlags.isEnabled(USE_APP_PANELS)).thenReturn(false)
|
||||
val serviceInfo = ServiceInfo(
|
||||
componentName,
|
||||
activityName,
|
||||
)
|
||||
|
||||
`when`(packageManager.getComponentEnabledSetting(eq(activityName)))
|
||||
.thenReturn(PackageManager.COMPONENT_ENABLED_STATE_DEFAULT)
|
||||
|
||||
setUpQueryResult(listOf(
|
||||
ActivityInfo(
|
||||
activityName,
|
||||
enabled = true,
|
||||
exported = true,
|
||||
permission = Manifest.permission.BIND_CONTROLS
|
||||
)
|
||||
))
|
||||
|
||||
val list = listOf(serviceInfo)
|
||||
serviceListingCallbackCaptor.value.onServicesReloaded(list)
|
||||
|
||||
executor.runAllReady()
|
||||
|
||||
assertNull(controller.getCurrentServices()[0].panelActivity)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testActivityDifferentPackage_nullPanel() {
|
||||
val serviceInfo = ServiceInfo(
|
||||
|
||||
Reference in New Issue
Block a user