Loading services/core/java/com/android/server/wm/ActivityClientController.java +3 −3 Original line number Diff line number Diff line Loading @@ -827,9 +827,9 @@ class ActivityClientController extends IActivityClientController.Stub { if (rootTask.inFreeformWindowingMode()) { rootTask.setWindowingMode(WINDOWING_MODE_FULLSCREEN); } else if (!mService.mSupportsNonResizableMultiWindow && r.inSizeCompatMode()) { throw new IllegalStateException("Size-compat windows are currently not" + "freeform-enabled"); } else if (!r.supportsFreeform()) { throw new IllegalStateException( "This activity is currently not freeform-enabled"); } else if (rootTask.getParent().inFreeformWindowingMode()) { // If the window is on a freeform display, set it to undefined. It will be // resolved to freeform and it can adjust windowing mode when the display mode Loading services/core/java/com/android/server/wm/ActivityRecord.java +1 −2 Original line number Diff line number Diff line Loading @@ -2465,8 +2465,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A if (windowingMode == WINDOWING_MODE_PINNED && info.supportsPictureInPicture()) { return false; } if (WindowConfiguration.inMultiWindowMode(windowingMode) && mAtmService.mSupportsNonResizableMultiWindow if (WindowConfiguration.inMultiWindowMode(windowingMode) && supportsMultiWindow() && !mAtmService.mForceResizableActivities) { // The non resizable app will be letterboxed instead of being forced resizable. return false; Loading services/core/java/com/android/server/wm/Task.java +4 −5 Original line number Diff line number Diff line Loading @@ -2836,14 +2836,13 @@ class Task extends WindowContainer<WindowContainer> { getResolvedOverrideConfiguration().windowConfiguration.setWindowingMode(windowingMode); } // Do not allow non-resizable tasks to be in a multi-window mode, unless it is in pinned // windowing mode or supports non-resizable tasks in multi-window mode. if (!isResizeable()) { // Do not allow tasks not support multi window to be in a multi-window mode, unless it is in // pinned windowing mode. if (!supportsMultiWindow()) { final int candidateWindowingMode = windowingMode != WINDOWING_MODE_UNDEFINED ? windowingMode : parentWindowingMode; if (WindowConfiguration.inMultiWindowMode(candidateWindowingMode) && candidateWindowingMode != WINDOWING_MODE_PINNED && !mTaskSupervisor.mService.mSupportsNonResizableMultiWindow) { && candidateWindowingMode != WINDOWING_MODE_PINNED) { getResolvedOverrideConfiguration().windowConfiguration.setWindowingMode( WINDOWING_MODE_FULLSCREEN); } Loading services/core/java/com/android/server/wm/TaskLaunchParamsModifier.java +1 −1 Original line number Diff line number Diff line Loading @@ -612,7 +612,7 @@ class TaskLaunchParamsModifier implements LaunchParamsModifier { private boolean shouldLaunchUnresizableAppInFreeform(ActivityRecord activity, TaskDisplayArea displayArea) { if (!mSupervisor.mService.mSupportsNonResizableMultiWindow || activity.isResizeable()) { if (!activity.supportsFreeform() || activity.isResizeable()) { return false; } Loading Loading
services/core/java/com/android/server/wm/ActivityClientController.java +3 −3 Original line number Diff line number Diff line Loading @@ -827,9 +827,9 @@ class ActivityClientController extends IActivityClientController.Stub { if (rootTask.inFreeformWindowingMode()) { rootTask.setWindowingMode(WINDOWING_MODE_FULLSCREEN); } else if (!mService.mSupportsNonResizableMultiWindow && r.inSizeCompatMode()) { throw new IllegalStateException("Size-compat windows are currently not" + "freeform-enabled"); } else if (!r.supportsFreeform()) { throw new IllegalStateException( "This activity is currently not freeform-enabled"); } else if (rootTask.getParent().inFreeformWindowingMode()) { // If the window is on a freeform display, set it to undefined. It will be // resolved to freeform and it can adjust windowing mode when the display mode Loading
services/core/java/com/android/server/wm/ActivityRecord.java +1 −2 Original line number Diff line number Diff line Loading @@ -2465,8 +2465,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A if (windowingMode == WINDOWING_MODE_PINNED && info.supportsPictureInPicture()) { return false; } if (WindowConfiguration.inMultiWindowMode(windowingMode) && mAtmService.mSupportsNonResizableMultiWindow if (WindowConfiguration.inMultiWindowMode(windowingMode) && supportsMultiWindow() && !mAtmService.mForceResizableActivities) { // The non resizable app will be letterboxed instead of being forced resizable. return false; Loading
services/core/java/com/android/server/wm/Task.java +4 −5 Original line number Diff line number Diff line Loading @@ -2836,14 +2836,13 @@ class Task extends WindowContainer<WindowContainer> { getResolvedOverrideConfiguration().windowConfiguration.setWindowingMode(windowingMode); } // Do not allow non-resizable tasks to be in a multi-window mode, unless it is in pinned // windowing mode or supports non-resizable tasks in multi-window mode. if (!isResizeable()) { // Do not allow tasks not support multi window to be in a multi-window mode, unless it is in // pinned windowing mode. if (!supportsMultiWindow()) { final int candidateWindowingMode = windowingMode != WINDOWING_MODE_UNDEFINED ? windowingMode : parentWindowingMode; if (WindowConfiguration.inMultiWindowMode(candidateWindowingMode) && candidateWindowingMode != WINDOWING_MODE_PINNED && !mTaskSupervisor.mService.mSupportsNonResizableMultiWindow) { && candidateWindowingMode != WINDOWING_MODE_PINNED) { getResolvedOverrideConfiguration().windowConfiguration.setWindowingMode( WINDOWING_MODE_FULLSCREEN); } Loading
services/core/java/com/android/server/wm/TaskLaunchParamsModifier.java +1 −1 Original line number Diff line number Diff line Loading @@ -612,7 +612,7 @@ class TaskLaunchParamsModifier implements LaunchParamsModifier { private boolean shouldLaunchUnresizableAppInFreeform(ActivityRecord activity, TaskDisplayArea displayArea) { if (!mSupervisor.mService.mSupportsNonResizableMultiWindow || activity.isResizeable()) { if (!activity.supportsFreeform() || activity.isResizeable()) { return false; } Loading