Loading libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicy.kt +5 −4 Original line number Diff line number Diff line Loading @@ -50,7 +50,7 @@ class DesktopModeCompatPolicy(private val context: Context) { numActivities: Int, isTopActivityNoDisplay: Boolean, isActivityStackTransparent: Boolean) = DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY.isTrue && ((isSystemUiTask(packageName) || isPartOfDefaultHomePackage(packageName) || isPartOfDefaultHomePackageOrNoHomeAvailable(packageName) || isTransparentTask(isActivityStackTransparent, numActivities)) && !isTopActivityNoDisplay) Loading Loading @@ -85,10 +85,11 @@ class DesktopModeCompatPolicy(private val context: Context) { private fun isSystemUiTask(packageName: String?) = packageName == systemUiPackage /** * Returns true if the tasks base activity is part of the default home package. * Returns true if the tasks base activity is part of the default home package, or there is * currently no default home package available. */ private fun isPartOfDefaultHomePackage(packageName: String?) = packageName != null && packageName == defaultHomePackage private fun isPartOfDefaultHomePackageOrNoHomeAvailable(packageName: String?) = defaultHomePackage == null || (packageName != null && packageName == defaultHomePackage) private fun isAnyForceConsumptionFlagsEnabled(): Boolean = DesktopModeFlags.ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS.isTrue Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt +10 −2 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ import android.os.UserManager import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.FlagsParameterization import android.testing.TestableContext import android.view.Display.DEFAULT_DISPLAY import android.view.DragEvent import android.view.Gravity Loading Loading @@ -147,6 +148,7 @@ import com.android.wm.shell.transition.TestRemoteTransition import com.android.wm.shell.transition.Transitions import com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS import com.android.wm.shell.transition.Transitions.TransitionHandler import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModelTestsBase.Companion.HOME_LAUNCHER_PACKAGE_NAME import com.android.wm.shell.windowdecor.DesktopModeWindowDecoration import com.android.wm.shell.windowdecor.tiling.DesktopTilingDecorViewModel import com.google.common.truth.Truth.assertThat Loading Loading @@ -186,7 +188,6 @@ import org.mockito.kotlin.anyOrNull import org.mockito.kotlin.argThat import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.atLeastOnce import org.mockito.kotlin.capture import org.mockito.kotlin.eq import org.mockito.kotlin.whenever import org.mockito.quality.Strictness Loading Loading @@ -256,6 +257,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() @Mock private lateinit var desksOrganizer: DesksOrganizer @Mock private lateinit var userProfileContexts: UserProfileContexts @Mock private lateinit var desksTransitionsObserver: DesksTransitionObserver @Mock private lateinit var packageManager: PackageManager private lateinit var controller: DesktopTasksController private lateinit var shellInit: ShellInit Loading @@ -265,6 +267,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() private lateinit var recentsTransitionStateListener: RecentsTransitionStateListener private lateinit var testScope: CoroutineScope private lateinit var desktopModeCompatPolicy: DesktopModeCompatPolicy private lateinit var spyContext: TestableContext private val shellExecutor = TestShellExecutor() Loading @@ -281,6 +284,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() private val UNRESIZABLE_LANDSCAPE_BOUNDS = Rect(25, 449, 1575, 1611) private val UNRESIZABLE_PORTRAIT_BOUNDS = Rect(830, 75, 1730, 1275) private val wallpaperToken = MockToken().token() private val homeComponentName = ComponentName(HOME_LAUNCHER_PACKAGE_NAME, /* class */ "") @Before fun setUp() { Loading @@ -294,6 +298,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() doReturn(true).`when` { DesktopModeStatus.canEnterDesktopMode(any()) } testScope = CoroutineScope(Dispatchers.Unconfined + SupervisorJob()) spyContext = spy(mContext) shellInit = spy(ShellInit(testExecutor)) userRepositories = DesktopUserRepositories( Loading @@ -315,7 +320,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() mContext, mockHandler, ) desktopModeCompatPolicy = spy(DesktopModeCompatPolicy(context)) desktopModeCompatPolicy = spy(DesktopModeCompatPolicy(spyContext)) whenever(shellTaskOrganizer.getRunningTasks(anyInt())).thenAnswer { runningTasks } whenever(transitions.startTransition(anyInt(), any(), isNull())).thenAnswer { Binder() } Loading Loading @@ -373,6 +378,9 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() taskRepository = userRepositories.current taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY) taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY) spyContext.setMockPackageManager(packageManager) whenever(packageManager.getHomeActivities(ArrayList())).thenReturn(homeComponentName) } private fun createController() = Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/compatui/SystemModalsTransitionHandlerTest.kt +13 −1 Original line number Diff line number Diff line Loading @@ -16,9 +16,12 @@ package com.android.wm.shell.desktopmode.compatui import android.content.ComponentName import android.content.Intent import android.content.pm.PackageManager import android.os.Binder import android.testing.AndroidTestingRunner import android.testing.TestableContext import android.view.SurfaceControl import android.view.WindowManager.TRANSIT_CHANGE import android.view.WindowManager.TRANSIT_CLOSE Loading @@ -37,6 +40,7 @@ import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy import com.android.wm.shell.sysui.ShellInit import com.android.wm.shell.transition.TransitionInfoBuilder import com.android.wm.shell.transition.Transitions import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModelTestsBase.Companion.HOME_LAUNCHER_PACKAGE_NAME import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Test Loading @@ -44,6 +48,7 @@ import org.junit.runner.RunWith import org.mockito.ArgumentMatchers.anyInt import org.mockito.kotlin.any import org.mockito.kotlin.mock import org.mockito.kotlin.spy import org.mockito.kotlin.verify import org.mockito.kotlin.whenever Loading @@ -62,16 +67,23 @@ class SystemModalsTransitionHandlerTest : ShellTestCase() { private val desktopRepository = mock<DesktopRepository>() private val startT = mock<SurfaceControl.Transaction>() private val finishT = mock<SurfaceControl.Transaction>() private val packageManager = mock<PackageManager>() private val componentName = mock<ComponentName>() private lateinit var spyContext: TestableContext private lateinit var transitionHandler: SystemModalsTransitionHandler private lateinit var desktopModeCompatPolicy: DesktopModeCompatPolicy @Before fun setUp() { spyContext = spy(mContext) // Simulate having one Desktop task so that we see Desktop Mode as active whenever(desktopUserRepositories.current).thenReturn(desktopRepository) whenever(desktopRepository.getVisibleTaskCount(anyInt())).thenReturn(1) desktopModeCompatPolicy = DesktopModeCompatPolicy(context) whenever(spyContext.packageManager).thenReturn(packageManager) whenever(componentName.packageName).thenReturn(HOME_LAUNCHER_PACKAGE_NAME) whenever(packageManager.getHomeActivities(ArrayList())).thenReturn(componentName) desktopModeCompatPolicy = DesktopModeCompatPolicy(spyContext) transitionHandler = createTransitionHandler() } Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicyTest.kt +20 −8 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import com.android.internal.R import com.android.window.flags.Flags import com.android.wm.shell.ShellTestCase import com.android.wm.shell.desktopmode.DesktopTestHelpers.createFreeformTask import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModelTestsBase.Companion.HOME_LAUNCHER_PACKAGE_NAME import libcore.junit.util.compat.CoreCompatChangeRule.DisableCompatChanges import libcore.junit.util.compat.CoreCompatChangeRule.EnableCompatChanges import org.junit.Assert.assertFalse Loading @@ -52,10 +53,14 @@ import org.mockito.kotlin.whenever class DesktopModeCompatPolicyTest : ShellTestCase() { @get:Rule val compatRule = PlatformCompatChangeRule() private lateinit var desktopModeCompatPolicy: DesktopModeCompatPolicy private val packageManager: PackageManager = mock() private val homeActivities = ComponentName(HOME_LAUNCHER_PACKAGE_NAME, /* class */ "") @Before fun setUp() { desktopModeCompatPolicy = DesktopModeCompatPolicy(mContext) whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) mContext.setMockPackageManager(packageManager) } @Test Loading Loading @@ -128,10 +133,6 @@ class DesktopModeCompatPolicyTest : ShellTestCase() { @Test fun testIsTopActivityExemptFromDesktopWindowing_defaultHomePackage() { val packageManager: PackageManager = mock() val homeActivities = ComponentName("defaultHomePackage", /* class */ "") whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) mContext.setMockPackageManager(packageManager) assertTrue(desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( createFreeformTask(/* displayId */ 0) .apply { Loading @@ -142,10 +143,6 @@ class DesktopModeCompatPolicyTest : ShellTestCase() { @Test fun testIsTopActivityExemptFromDesktopWindowing_defaultHomePackage_notDisplayed() { val packageManager: PackageManager = mock() val homeActivities = ComponentName("defaultHomePackage", /* class */ "") whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) mContext.setMockPackageManager(packageManager) assertFalse(desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( createFreeformTask(/* displayId */ 0) .apply { Loading @@ -154,6 +151,21 @@ class DesktopModeCompatPolicyTest : ShellTestCase() { })) } @Test fun testIsTopActivityExemptFromDesktopWindowing_defaultHomePackage_notYetAvailable() { val emptyHomeActivities: ComponentName = mock() mContext.setMockPackageManager(packageManager) whenever(emptyHomeActivities.packageName).thenReturn(null) whenever(packageManager.getHomeActivities(any())).thenReturn(emptyHomeActivities) assertTrue(desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( createFreeformTask(/* displayId */ 0) .apply { isTopActivityNoDisplay = false })) } @Test @EnableFlags(Flags.FLAG_EXCLUDE_CAPTION_FROM_APP_BOUNDS) @DisableCompatChanges(ActivityInfo.INSETS_DECOUPLED_CONFIGURATION_ENFORCED) Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt +1 −6 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import android.content.ComponentName import android.content.Context import android.content.Intent import android.content.Intent.ACTION_MAIN import android.content.pm.PackageManager import android.graphics.Rect import android.graphics.Region import android.hardware.display.DisplayManager Loading Loading @@ -310,14 +309,10 @@ class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTest @Test @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) fun testDecorationIsNotCreatedForDefaultHomePackage() { val packageManager: PackageManager = org.mockito.kotlin.mock() val homeActivities = ComponentName("defaultHomePackage", /* class */ "") val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN).apply { baseActivity = homeActivities baseActivity = homeComponentName isTopActivityNoDisplay = false } mContext.setMockPackageManager(packageManager) whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) onTaskOpening(task) Loading Loading
libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicy.kt +5 −4 Original line number Diff line number Diff line Loading @@ -50,7 +50,7 @@ class DesktopModeCompatPolicy(private val context: Context) { numActivities: Int, isTopActivityNoDisplay: Boolean, isActivityStackTransparent: Boolean) = DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY.isTrue && ((isSystemUiTask(packageName) || isPartOfDefaultHomePackage(packageName) || isPartOfDefaultHomePackageOrNoHomeAvailable(packageName) || isTransparentTask(isActivityStackTransparent, numActivities)) && !isTopActivityNoDisplay) Loading Loading @@ -85,10 +85,11 @@ class DesktopModeCompatPolicy(private val context: Context) { private fun isSystemUiTask(packageName: String?) = packageName == systemUiPackage /** * Returns true if the tasks base activity is part of the default home package. * Returns true if the tasks base activity is part of the default home package, or there is * currently no default home package available. */ private fun isPartOfDefaultHomePackage(packageName: String?) = packageName != null && packageName == defaultHomePackage private fun isPartOfDefaultHomePackageOrNoHomeAvailable(packageName: String?) = defaultHomePackage == null || (packageName != null && packageName == defaultHomePackage) private fun isAnyForceConsumptionFlagsEnabled(): Boolean = DesktopModeFlags.ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS.isTrue Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt +10 −2 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ import android.os.UserManager import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.FlagsParameterization import android.testing.TestableContext import android.view.Display.DEFAULT_DISPLAY import android.view.DragEvent import android.view.Gravity Loading Loading @@ -147,6 +148,7 @@ import com.android.wm.shell.transition.TestRemoteTransition import com.android.wm.shell.transition.Transitions import com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS import com.android.wm.shell.transition.Transitions.TransitionHandler import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModelTestsBase.Companion.HOME_LAUNCHER_PACKAGE_NAME import com.android.wm.shell.windowdecor.DesktopModeWindowDecoration import com.android.wm.shell.windowdecor.tiling.DesktopTilingDecorViewModel import com.google.common.truth.Truth.assertThat Loading Loading @@ -186,7 +188,6 @@ import org.mockito.kotlin.anyOrNull import org.mockito.kotlin.argThat import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.atLeastOnce import org.mockito.kotlin.capture import org.mockito.kotlin.eq import org.mockito.kotlin.whenever import org.mockito.quality.Strictness Loading Loading @@ -256,6 +257,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() @Mock private lateinit var desksOrganizer: DesksOrganizer @Mock private lateinit var userProfileContexts: UserProfileContexts @Mock private lateinit var desksTransitionsObserver: DesksTransitionObserver @Mock private lateinit var packageManager: PackageManager private lateinit var controller: DesktopTasksController private lateinit var shellInit: ShellInit Loading @@ -265,6 +267,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() private lateinit var recentsTransitionStateListener: RecentsTransitionStateListener private lateinit var testScope: CoroutineScope private lateinit var desktopModeCompatPolicy: DesktopModeCompatPolicy private lateinit var spyContext: TestableContext private val shellExecutor = TestShellExecutor() Loading @@ -281,6 +284,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() private val UNRESIZABLE_LANDSCAPE_BOUNDS = Rect(25, 449, 1575, 1611) private val UNRESIZABLE_PORTRAIT_BOUNDS = Rect(830, 75, 1730, 1275) private val wallpaperToken = MockToken().token() private val homeComponentName = ComponentName(HOME_LAUNCHER_PACKAGE_NAME, /* class */ "") @Before fun setUp() { Loading @@ -294,6 +298,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() doReturn(true).`when` { DesktopModeStatus.canEnterDesktopMode(any()) } testScope = CoroutineScope(Dispatchers.Unconfined + SupervisorJob()) spyContext = spy(mContext) shellInit = spy(ShellInit(testExecutor)) userRepositories = DesktopUserRepositories( Loading @@ -315,7 +320,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() mContext, mockHandler, ) desktopModeCompatPolicy = spy(DesktopModeCompatPolicy(context)) desktopModeCompatPolicy = spy(DesktopModeCompatPolicy(spyContext)) whenever(shellTaskOrganizer.getRunningTasks(anyInt())).thenAnswer { runningTasks } whenever(transitions.startTransition(anyInt(), any(), isNull())).thenAnswer { Binder() } Loading Loading @@ -373,6 +378,9 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() taskRepository = userRepositories.current taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY) taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY) spyContext.setMockPackageManager(packageManager) whenever(packageManager.getHomeActivities(ArrayList())).thenReturn(homeComponentName) } private fun createController() = Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/compatui/SystemModalsTransitionHandlerTest.kt +13 −1 Original line number Diff line number Diff line Loading @@ -16,9 +16,12 @@ package com.android.wm.shell.desktopmode.compatui import android.content.ComponentName import android.content.Intent import android.content.pm.PackageManager import android.os.Binder import android.testing.AndroidTestingRunner import android.testing.TestableContext import android.view.SurfaceControl import android.view.WindowManager.TRANSIT_CHANGE import android.view.WindowManager.TRANSIT_CLOSE Loading @@ -37,6 +40,7 @@ import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy import com.android.wm.shell.sysui.ShellInit import com.android.wm.shell.transition.TransitionInfoBuilder import com.android.wm.shell.transition.Transitions import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModelTestsBase.Companion.HOME_LAUNCHER_PACKAGE_NAME import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Test Loading @@ -44,6 +48,7 @@ import org.junit.runner.RunWith import org.mockito.ArgumentMatchers.anyInt import org.mockito.kotlin.any import org.mockito.kotlin.mock import org.mockito.kotlin.spy import org.mockito.kotlin.verify import org.mockito.kotlin.whenever Loading @@ -62,16 +67,23 @@ class SystemModalsTransitionHandlerTest : ShellTestCase() { private val desktopRepository = mock<DesktopRepository>() private val startT = mock<SurfaceControl.Transaction>() private val finishT = mock<SurfaceControl.Transaction>() private val packageManager = mock<PackageManager>() private val componentName = mock<ComponentName>() private lateinit var spyContext: TestableContext private lateinit var transitionHandler: SystemModalsTransitionHandler private lateinit var desktopModeCompatPolicy: DesktopModeCompatPolicy @Before fun setUp() { spyContext = spy(mContext) // Simulate having one Desktop task so that we see Desktop Mode as active whenever(desktopUserRepositories.current).thenReturn(desktopRepository) whenever(desktopRepository.getVisibleTaskCount(anyInt())).thenReturn(1) desktopModeCompatPolicy = DesktopModeCompatPolicy(context) whenever(spyContext.packageManager).thenReturn(packageManager) whenever(componentName.packageName).thenReturn(HOME_LAUNCHER_PACKAGE_NAME) whenever(packageManager.getHomeActivities(ArrayList())).thenReturn(componentName) desktopModeCompatPolicy = DesktopModeCompatPolicy(spyContext) transitionHandler = createTransitionHandler() } Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicyTest.kt +20 −8 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import com.android.internal.R import com.android.window.flags.Flags import com.android.wm.shell.ShellTestCase import com.android.wm.shell.desktopmode.DesktopTestHelpers.createFreeformTask import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModelTestsBase.Companion.HOME_LAUNCHER_PACKAGE_NAME import libcore.junit.util.compat.CoreCompatChangeRule.DisableCompatChanges import libcore.junit.util.compat.CoreCompatChangeRule.EnableCompatChanges import org.junit.Assert.assertFalse Loading @@ -52,10 +53,14 @@ import org.mockito.kotlin.whenever class DesktopModeCompatPolicyTest : ShellTestCase() { @get:Rule val compatRule = PlatformCompatChangeRule() private lateinit var desktopModeCompatPolicy: DesktopModeCompatPolicy private val packageManager: PackageManager = mock() private val homeActivities = ComponentName(HOME_LAUNCHER_PACKAGE_NAME, /* class */ "") @Before fun setUp() { desktopModeCompatPolicy = DesktopModeCompatPolicy(mContext) whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) mContext.setMockPackageManager(packageManager) } @Test Loading Loading @@ -128,10 +133,6 @@ class DesktopModeCompatPolicyTest : ShellTestCase() { @Test fun testIsTopActivityExemptFromDesktopWindowing_defaultHomePackage() { val packageManager: PackageManager = mock() val homeActivities = ComponentName("defaultHomePackage", /* class */ "") whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) mContext.setMockPackageManager(packageManager) assertTrue(desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( createFreeformTask(/* displayId */ 0) .apply { Loading @@ -142,10 +143,6 @@ class DesktopModeCompatPolicyTest : ShellTestCase() { @Test fun testIsTopActivityExemptFromDesktopWindowing_defaultHomePackage_notDisplayed() { val packageManager: PackageManager = mock() val homeActivities = ComponentName("defaultHomePackage", /* class */ "") whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) mContext.setMockPackageManager(packageManager) assertFalse(desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( createFreeformTask(/* displayId */ 0) .apply { Loading @@ -154,6 +151,21 @@ class DesktopModeCompatPolicyTest : ShellTestCase() { })) } @Test fun testIsTopActivityExemptFromDesktopWindowing_defaultHomePackage_notYetAvailable() { val emptyHomeActivities: ComponentName = mock() mContext.setMockPackageManager(packageManager) whenever(emptyHomeActivities.packageName).thenReturn(null) whenever(packageManager.getHomeActivities(any())).thenReturn(emptyHomeActivities) assertTrue(desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( createFreeformTask(/* displayId */ 0) .apply { isTopActivityNoDisplay = false })) } @Test @EnableFlags(Flags.FLAG_EXCLUDE_CAPTION_FROM_APP_BOUNDS) @DisableCompatChanges(ActivityInfo.INSETS_DECOUPLED_CONFIGURATION_ENFORCED) Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt +1 −6 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import android.content.ComponentName import android.content.Context import android.content.Intent import android.content.Intent.ACTION_MAIN import android.content.pm.PackageManager import android.graphics.Rect import android.graphics.Region import android.hardware.display.DisplayManager Loading Loading @@ -310,14 +309,10 @@ class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTest @Test @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) fun testDecorationIsNotCreatedForDefaultHomePackage() { val packageManager: PackageManager = org.mockito.kotlin.mock() val homeActivities = ComponentName("defaultHomePackage", /* class */ "") val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN).apply { baseActivity = homeActivities baseActivity = homeComponentName isTopActivityNoDisplay = false } mContext.setMockPackageManager(packageManager) whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) onTaskOpening(task) Loading