diff options
| author | 2022-05-16 08:04:27 +0000 | |
|---|---|---|
| committer | 2022-05-16 08:04:27 +0000 | |
| commit | 0a066377f37040d19e741a02df65a1840b870898 (patch) | |
| tree | a9dbaa14a05969ba4583aeb3af78ddf9f7980b9c | |
| parent | 1b69099c10b848a8c9ad8578cdcdb83c7fc10c19 (diff) | |
| parent | 98b4783fa88262ed817c6ccf2fd7fcd7ce66c10c (diff) | |
Merge "Remove supportsSplitScreenMultiWindow" into tm-qpr-dev
10 files changed, 5 insertions, 103 deletions
diff --git a/core/java/android/app/ActivityManager.java b/core/java/android/app/ActivityManager.java index 5d1d225f4d2d..e25e374122cf 100644 --- a/core/java/android/app/ActivityManager.java +++ b/core/java/android/app/ActivityManager.java @@ -2210,7 +2210,6 @@ public class ActivityManager { pw.print(((baseIntent.getFlags() & FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS) != 0)); pw.print(" activityType="); pw.print(activityTypeToString(getActivityType())); pw.print(" windowingMode="); pw.print(windowingModeToString(getWindowingMode())); - pw.print(" supportsSplitScreenMultiWindow="); pw.print(supportsSplitScreenMultiWindow); pw.print(" supportsMultiWindow="); pw.println(supportsMultiWindow); if (taskDescription != null) { diff --git a/core/java/android/app/TaskInfo.java b/core/java/android/app/TaskInfo.java index 1b87945ec985..f7bbd7440701 100644 --- a/core/java/android/app/TaskInfo.java +++ b/core/java/android/app/TaskInfo.java @@ -143,13 +143,6 @@ public class TaskInfo { public LocusId mTopActivityLocusId; /** - * True if the task can go in the split-screen primary stack. - * @hide - */ - @UnsupportedAppUsage - public boolean supportsSplitScreenMultiWindow; - - /** * Whether this task supports multi windowing modes based on the device settings and the * root activity resizability and configuration. * @hide @@ -516,7 +509,6 @@ public class TaskInfo { lastActiveTime = source.readLong(); taskDescription = source.readTypedObject(ActivityManager.TaskDescription.CREATOR); - supportsSplitScreenMultiWindow = source.readBoolean(); supportsMultiWindow = source.readBoolean(); resizeMode = source.readInt(); configuration.readFromParcel(source); @@ -563,7 +555,6 @@ public class TaskInfo { dest.writeLong(lastActiveTime); dest.writeTypedObject(taskDescription, flags); - dest.writeBoolean(supportsSplitScreenMultiWindow); dest.writeBoolean(supportsMultiWindow); dest.writeInt(resizeMode); configuration.writeToParcel(dest, flags); @@ -601,7 +592,6 @@ public class TaskInfo { + " realActivity=" + realActivity + " numActivities=" + numActivities + " lastActiveTime=" + lastActiveTime - + " supportsSplitScreenMultiWindow=" + supportsSplitScreenMultiWindow + " supportsMultiWindow=" + supportsMultiWindow + " resizeMode=" + resizeMode + " isResizeable=" + isResizeable diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipMenuView.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipMenuView.java index 6390c8984dac..1958157fc319 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipMenuView.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipMenuView.java @@ -282,7 +282,7 @@ public class PipMenuView extends FrameLayout { && mSplitScreenControllerOptional.get().isTaskInSplitScreen(taskInfo.taskId); mFocusedTaskAllowSplitScreen = isSplitScreen || (taskInfo.getWindowingMode() == WINDOWING_MODE_FULLSCREEN - && taskInfo.supportsSplitScreenMultiWindow + && taskInfo.supportsMultiWindow && taskInfo.topActivityType != WindowConfiguration.ACTIVITY_TYPE_HOME); } diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/Task.java b/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/Task.java index 675dc9b533fb..e9c1acbf7ca0 100644 --- a/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/Task.java +++ b/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/Task.java @@ -243,7 +243,7 @@ public class Task { return new Task(taskKey, td != null ? td.getPrimaryColor() : 0, td != null ? td.getBackgroundColor() : 0, - taskInfo.supportsSplitScreenMultiWindow, isLocked, td, taskInfo.topActivity); + taskInfo.supportsMultiWindow, isLocked, td, taskInfo.topActivity); } public Task(TaskKey key) { diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java index 96478272a8d5..f4d215e5f2f1 100644 --- a/services/core/java/com/android/server/wm/ActivityRecord.java +++ b/services/core/java/com/android/server/wm/ActivityRecord.java @@ -2995,25 +2995,6 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A && info.supportsPictureInPicture(); } - /** - * @return whether this activity supports split-screen multi-window and can be put in - * split-screen. - */ - @Override - public boolean supportsSplitScreenWindowingMode() { - return supportsSplitScreenWindowingModeInDisplayArea(getDisplayArea()); - } - - /** - * @return whether this activity supports split-screen multi-window and can be put in - * split-screen if it is in the given {@link TaskDisplayArea}. - */ - boolean supportsSplitScreenWindowingModeInDisplayArea(@Nullable TaskDisplayArea tda) { - return super.supportsSplitScreenWindowingMode() - && mAtmService.mSupportsSplitScreenMultiWindow - && supportsMultiWindowInDisplayArea(tda); - } - boolean supportsFreeform() { return supportsFreeformInDisplayArea(getDisplayArea()); } diff --git a/services/core/java/com/android/server/wm/ConfigurationContainer.java b/services/core/java/com/android/server/wm/ConfigurationContainer.java index e7c03aa7a099..1e8ec3a2a067 100644 --- a/services/core/java/com/android/server/wm/ConfigurationContainer.java +++ b/services/core/java/com/android/server/wm/ConfigurationContainer.java @@ -478,14 +478,6 @@ public abstract class ConfigurationContainer<E extends ConfigurationContainer> { return WindowConfiguration.inMultiWindowMode(windowingMode); } - /** - * Returns true if this container supports split-screen multi-window and can be put in - * split-screen based on its current state. - */ - public boolean supportsSplitScreenWindowingMode() { - return mFullConfiguration.windowConfiguration.supportSplitScreenWindowingMode(); - } - public boolean inPinnedWindowingMode() { return mFullConfiguration.windowConfiguration.getWindowingMode() == WINDOWING_MODE_PINNED; } diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java index f579b6703a86..eea9d6c123ae 100644 --- a/services/core/java/com/android/server/wm/Task.java +++ b/services/core/java/com/android/server/wm/Task.java @@ -1697,23 +1697,6 @@ class Task extends TaskFragment { lockTaskAuthToString()); } - @Override - public boolean supportsSplitScreenWindowingMode() { - return supportsSplitScreenWindowingModeInDisplayArea(getDisplayArea()); - } - - boolean supportsSplitScreenWindowingModeInDisplayArea(@Nullable TaskDisplayArea tda) { - final Task topTask = getTopMostTask(); - return super.supportsSplitScreenWindowingMode() - && (topTask == null || topTask.supportsSplitScreenWindowingModeInner(tda)); - } - - private boolean supportsSplitScreenWindowingModeInner(@Nullable TaskDisplayArea tda) { - return super.supportsSplitScreenWindowingMode() - && mAtmService.mSupportsSplitScreenMultiWindow - && supportsMultiWindowInDisplayArea(tda); - } - boolean supportsFreeform() { return supportsFreeformInDisplayArea(getDisplayArea()); } @@ -3397,9 +3380,7 @@ class Task extends TaskFragment { info.realActivity = realActivity; info.lastActiveTime = lastActiveTime; info.taskDescription = new ActivityManager.TaskDescription(getTaskDescription()); - info.supportsSplitScreenMultiWindow = supportsSplitScreenWindowingModeInDisplayArea(tda); - info.supportsMultiWindow = info.supportsSplitScreenMultiWindow - || supportsMultiWindowInDisplayArea(tda); + info.supportsMultiWindow = supportsMultiWindowInDisplayArea(tda); info.configuration.setTo(getConfiguration()); // Update to the task's current activity type and windowing mode which may differ from the // window configuration diff --git a/services/core/java/com/android/server/wm/TaskDisplayArea.java b/services/core/java/com/android/server/wm/TaskDisplayArea.java index 7c90478e0326..a9e80af04e1c 100644 --- a/services/core/java/com/android/server/wm/TaskDisplayArea.java +++ b/services/core/java/com/android/server/wm/TaskDisplayArea.java @@ -1900,15 +1900,12 @@ final class TaskDisplayArea extends DisplayArea<WindowContainer> { task.remove(false /* withTransition */, "removeTaskDisplayArea"); } else { // Reparent task to corresponding launch root or display area. - final WindowContainer launchRoot = - task.supportsSplitScreenWindowingModeInDisplayArea(toDisplayArea) - ? toDisplayArea.getLaunchRootTask( + final WindowContainer launchRoot = toDisplayArea.getLaunchRootTask( task.getWindowingMode(), task.getActivityType(), null /* options */, null /* sourceTask */, - 0 /* launchFlags */) - : null; + 0 /* launchFlags */); task.reparent(launchRoot == null ? toDisplayArea : launchRoot, POSITION_TOP); // Set the windowing mode to undefined by default to let the root task inherited the diff --git a/services/tests/wmtests/src/com/android/server/wm/ActivityRecordTests.java b/services/tests/wmtests/src/com/android/server/wm/ActivityRecordTests.java index 38be96e66883..3f260fe66a8e 100644 --- a/services/tests/wmtests/src/com/android/server/wm/ActivityRecordTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/ActivityRecordTests.java @@ -2168,39 +2168,6 @@ public class ActivityRecordTests extends WindowTestsBase { } @Test - public void testSupportsSplitScreenWindowingMode() { - final ActivityRecord activity = new ActivityBuilder(mAtm) - .setCreateTask(true) - .setResizeMode(ActivityInfo.RESIZE_MODE_UNRESIZEABLE) - .setScreenOrientation(SCREEN_ORIENTATION_LANDSCAPE) - .build(); - - // Not allow non-resizable - mAtm.mForceResizableActivities = false; - mAtm.mSupportsNonResizableMultiWindow = -1; - mAtm.mDevEnableNonResizableMultiWindow = false; - assertFalse(activity.supportsSplitScreenWindowingMode()); - - // Force resizable - mAtm.mForceResizableActivities = true; - mAtm.mSupportsNonResizableMultiWindow = -1; - mAtm.mDevEnableNonResizableMultiWindow = false; - assertTrue(activity.supportsSplitScreenWindowingMode()); - - // Use development option to allow non-resizable - mAtm.mForceResizableActivities = false; - mAtm.mSupportsNonResizableMultiWindow = -1; - mAtm.mDevEnableNonResizableMultiWindow = true; - assertTrue(activity.supportsSplitScreenWindowingMode()); - - // Always allow non-resizable - mAtm.mForceResizableActivities = false; - mAtm.mSupportsNonResizableMultiWindow = 1; - mAtm.mDevEnableNonResizableMultiWindow = false; - assertTrue(activity.supportsSplitScreenWindowingMode()); - } - - @Test public void testSupportsFreeform() { final ActivityRecord activity = new ActivityBuilder(mAtm) .setCreateTask(true) diff --git a/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java b/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java index 284728397c9f..caa35694f6be 100644 --- a/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java +++ b/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java @@ -1204,7 +1204,6 @@ public class RecentTasksTest extends WindowTestsBase { RecentTaskInfo info = mRecentTasks.createRecentTaskInfo(task, true); assertTrue(info.supportsMultiWindow); - assertTrue(info.supportsSplitScreenMultiWindow); // The task can be put in split screen even if it is not attached now. task.removeImmediately(); @@ -1212,7 +1211,6 @@ public class RecentTasksTest extends WindowTestsBase { info = mRecentTasks.createRecentTaskInfo(task, true); assertTrue(info.supportsMultiWindow); - assertTrue(info.supportsSplitScreenMultiWindow); // Test non-resizable. // The non-resizable task cannot be put in split screen because of the config. @@ -1222,7 +1220,6 @@ public class RecentTasksTest extends WindowTestsBase { info = mRecentTasks.createRecentTaskInfo(task, true); assertFalse(info.supportsMultiWindow); - assertFalse(info.supportsSplitScreenMultiWindow); // Even if it is not attached, the non-resizable task can be put in split screen as long as // the device supports it. @@ -1231,8 +1228,6 @@ public class RecentTasksTest extends WindowTestsBase { info = mRecentTasks.createRecentTaskInfo(task, true); assertTrue(info.supportsMultiWindow); - assertTrue(info.supportsSplitScreenMultiWindow); - } private TaskSnapshot createSnapshot(Point taskSize, Point bufferSize) { |