Loading libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt +4 −1 Original line number Diff line number Diff line Loading @@ -2130,6 +2130,7 @@ class DesktopTasksController( // TODO(b/337915660): Add a transition handler for these; animations // need updates in some cases. val baseActivity = callingTaskInfo.baseActivity ?: return val userHandle = UserHandle.of(callingTaskInfo.userId) val fillIn: Intent = userProfileContexts .getOrCreate(callingTaskInfo.userId) Loading @@ -2137,11 +2138,13 @@ class DesktopTasksController( .getLaunchIntentForPackage(baseActivity.packageName) ?: return fillIn.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_MULTIPLE_TASK) val launchIntent = PendingIntent.getActivity( PendingIntent.getActivityAsUser( context, /* requestCode= */ 0, fillIn, PendingIntent.FLAG_IMMUTABLE, /* options= */ null, userHandle, ) val options = createNewWindowOptions(callingTaskInfo) when (options.launchWindowingMode) { Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTestHelpers.kt +6 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ object DesktopTestHelpers { .setActivityType(ACTIVITY_TYPE_STANDARD) .setWindowingMode(WINDOWING_MODE_FREEFORM) .setLastActiveTime(100) .setUserId(DEFAULT_USER_ID) .apply { bounds?.let { setBounds(it) } } .build() Loading @@ -50,6 +51,7 @@ object DesktopTestHelpers { .setToken(MockToken().token()) .setActivityType(ACTIVITY_TYPE_STANDARD) .setWindowingMode(WINDOWING_MODE_FULLSCREEN) .setUserId(DEFAULT_USER_ID) .setLastActiveTime(100) /** Create a task that has windowing mode set to [WINDOWING_MODE_FULLSCREEN] */ Loading @@ -63,6 +65,7 @@ object DesktopTestHelpers { .setToken(MockToken().token()) .setActivityType(ACTIVITY_TYPE_STANDARD) .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW) .setUserId(DEFAULT_USER_ID) .setLastActiveTime(100) .build() Loading @@ -72,6 +75,7 @@ object DesktopTestHelpers { .setToken(MockToken().token()) .setActivityType(ACTIVITY_TYPE_HOME) .setWindowingMode(WINDOWING_MODE_FULLSCREEN) .setUserId(DEFAULT_USER_ID) .setLastActiveTime(100) .build() Loading @@ -91,4 +95,6 @@ object DesktopTestHelpers { createSystemModalTask().apply { baseActivity = ComponentName("com.test.dummypackage", "TestClass") } const val DEFAULT_USER_ID = 10 } Loading
libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt +4 −1 Original line number Diff line number Diff line Loading @@ -2130,6 +2130,7 @@ class DesktopTasksController( // TODO(b/337915660): Add a transition handler for these; animations // need updates in some cases. val baseActivity = callingTaskInfo.baseActivity ?: return val userHandle = UserHandle.of(callingTaskInfo.userId) val fillIn: Intent = userProfileContexts .getOrCreate(callingTaskInfo.userId) Loading @@ -2137,11 +2138,13 @@ class DesktopTasksController( .getLaunchIntentForPackage(baseActivity.packageName) ?: return fillIn.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_MULTIPLE_TASK) val launchIntent = PendingIntent.getActivity( PendingIntent.getActivityAsUser( context, /* requestCode= */ 0, fillIn, PendingIntent.FLAG_IMMUTABLE, /* options= */ null, userHandle, ) val options = createNewWindowOptions(callingTaskInfo) when (options.launchWindowingMode) { Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTestHelpers.kt +6 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ object DesktopTestHelpers { .setActivityType(ACTIVITY_TYPE_STANDARD) .setWindowingMode(WINDOWING_MODE_FREEFORM) .setLastActiveTime(100) .setUserId(DEFAULT_USER_ID) .apply { bounds?.let { setBounds(it) } } .build() Loading @@ -50,6 +51,7 @@ object DesktopTestHelpers { .setToken(MockToken().token()) .setActivityType(ACTIVITY_TYPE_STANDARD) .setWindowingMode(WINDOWING_MODE_FULLSCREEN) .setUserId(DEFAULT_USER_ID) .setLastActiveTime(100) /** Create a task that has windowing mode set to [WINDOWING_MODE_FULLSCREEN] */ Loading @@ -63,6 +65,7 @@ object DesktopTestHelpers { .setToken(MockToken().token()) .setActivityType(ACTIVITY_TYPE_STANDARD) .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW) .setUserId(DEFAULT_USER_ID) .setLastActiveTime(100) .build() Loading @@ -72,6 +75,7 @@ object DesktopTestHelpers { .setToken(MockToken().token()) .setActivityType(ACTIVITY_TYPE_HOME) .setWindowingMode(WINDOWING_MODE_FULLSCREEN) .setUserId(DEFAULT_USER_ID) .setLastActiveTime(100) .build() Loading @@ -91,4 +95,6 @@ object DesktopTestHelpers { createSystemModalTask().apply { baseActivity = ComponentName("com.test.dummypackage", "TestClass") } const val DEFAULT_USER_ID = 10 }