Loading core/java/android/app/TaskInfo.java +2 −1 Original line number Diff line number Diff line Loading @@ -361,7 +361,8 @@ public class TaskInfo { && (!topActivityInSizeCompat || configuration.windowConfiguration.getBounds() .equals(that.configuration.windowConfiguration.getBounds())) && (!topActivityInSizeCompat || configuration.getLayoutDirection() == that.configuration.getLayoutDirection()); == that.configuration.getLayoutDirection()) && (!topActivityInSizeCompat || isVisible == that.isVisible); } /** Loading libs/WindowManager/Shell/src/com/android/wm/shell/ShellTaskOrganizer.java +1 −1 Original line number Diff line number Diff line Loading @@ -497,7 +497,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { // The task is vanished or doesn't support size compat UI, notify to remove size compat UI // on this Task if there is any. if (taskListener == null || !taskListener.supportSizeCompatUI() || !taskInfo.topActivityInSizeCompat) { || !taskInfo.topActivityInSizeCompat || !taskInfo.isVisible) { mSizeCompatUI.onSizeCompatInfoChanged(taskInfo.displayId, taskInfo.taskId, null /* taskConfig */, null /* sizeCompatActivity*/, null /* taskListener */); Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/ShellTaskOrganizerTests.java +13 −0 Original line number Diff line number Diff line Loading @@ -306,10 +306,23 @@ public class ShellTaskOrganizerTests { taskInfo2.displayId = taskInfo1.displayId; taskInfo2.topActivityToken = taskInfo1.topActivityToken; taskInfo2.topActivityInSizeCompat = true; taskInfo2.isVisible = true; mOrganizer.onTaskInfoChanged(taskInfo2); verify(mSizeCompatUI).onSizeCompatInfoChanged(taskInfo1.displayId, taskInfo1.taskId, taskInfo1.configuration, taskInfo1.topActivityToken, taskListener); // Not show size compat UI if task is not visible. clearInvocations(mSizeCompatUI); final RunningTaskInfo taskInfo3 = createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); taskInfo3.displayId = taskInfo1.displayId; taskInfo3.topActivityToken = taskInfo1.topActivityToken; taskInfo3.topActivityInSizeCompat = true; taskInfo3.isVisible = false; mOrganizer.onTaskInfoChanged(taskInfo3); verify(mSizeCompatUI).onSizeCompatInfoChanged(taskInfo1.displayId, taskInfo1.taskId, null /* taskConfig */, null /* sizeCompatActivity*/, null /* taskListener */); clearInvocations(mSizeCompatUI); mOrganizer.onTaskVanished(taskInfo1); verify(mSizeCompatUI).onSizeCompatInfoChanged(taskInfo1.displayId, taskInfo1.taskId, Loading Loading
core/java/android/app/TaskInfo.java +2 −1 Original line number Diff line number Diff line Loading @@ -361,7 +361,8 @@ public class TaskInfo { && (!topActivityInSizeCompat || configuration.windowConfiguration.getBounds() .equals(that.configuration.windowConfiguration.getBounds())) && (!topActivityInSizeCompat || configuration.getLayoutDirection() == that.configuration.getLayoutDirection()); == that.configuration.getLayoutDirection()) && (!topActivityInSizeCompat || isVisible == that.isVisible); } /** Loading
libs/WindowManager/Shell/src/com/android/wm/shell/ShellTaskOrganizer.java +1 −1 Original line number Diff line number Diff line Loading @@ -497,7 +497,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { // The task is vanished or doesn't support size compat UI, notify to remove size compat UI // on this Task if there is any. if (taskListener == null || !taskListener.supportSizeCompatUI() || !taskInfo.topActivityInSizeCompat) { || !taskInfo.topActivityInSizeCompat || !taskInfo.isVisible) { mSizeCompatUI.onSizeCompatInfoChanged(taskInfo.displayId, taskInfo.taskId, null /* taskConfig */, null /* sizeCompatActivity*/, null /* taskListener */); Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/ShellTaskOrganizerTests.java +13 −0 Original line number Diff line number Diff line Loading @@ -306,10 +306,23 @@ public class ShellTaskOrganizerTests { taskInfo2.displayId = taskInfo1.displayId; taskInfo2.topActivityToken = taskInfo1.topActivityToken; taskInfo2.topActivityInSizeCompat = true; taskInfo2.isVisible = true; mOrganizer.onTaskInfoChanged(taskInfo2); verify(mSizeCompatUI).onSizeCompatInfoChanged(taskInfo1.displayId, taskInfo1.taskId, taskInfo1.configuration, taskInfo1.topActivityToken, taskListener); // Not show size compat UI if task is not visible. clearInvocations(mSizeCompatUI); final RunningTaskInfo taskInfo3 = createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); taskInfo3.displayId = taskInfo1.displayId; taskInfo3.topActivityToken = taskInfo1.topActivityToken; taskInfo3.topActivityInSizeCompat = true; taskInfo3.isVisible = false; mOrganizer.onTaskInfoChanged(taskInfo3); verify(mSizeCompatUI).onSizeCompatInfoChanged(taskInfo1.displayId, taskInfo1.taskId, null /* taskConfig */, null /* sizeCompatActivity*/, null /* taskListener */); clearInvocations(mSizeCompatUI); mOrganizer.onTaskVanished(taskInfo1); verify(mSizeCompatUI).onSizeCompatInfoChanged(taskInfo1.displayId, taskInfo1.taskId, Loading