Loading core/java/android/window/DesktopExperienceFlags.java +3 −0 Original line number Diff line number Diff line Loading @@ -148,6 +148,9 @@ public enum DesktopExperienceFlags { ENABLE_TALL_APP_HEADERS(Flags::enableTallAppHeaders, false, Flags.FLAG_ENABLE_TALL_APP_HEADERS), ENABLE_TASKBAR_CONNECTED_DISPLAYS(Flags::enableTaskbarConnectedDisplays, true, Flags.FLAG_ENABLE_TASKBAR_CONNECTED_DISPLAYS), ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS( Flags::enableWindowingTransitionHandlersObservers, false, Flags.FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS), ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS(Flags::enterDesktopByDefaultOnFreeformDisplays, true, Flags.FLAG_ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS), FORM_FACTOR_BASED_DESKTOP_FIRST_SWITCH(Flags::formFactorBasedDesktopFirstSwitch, false, Loading core/java/android/window/DesktopModeFlags.java +0 −2 Original line number Diff line number Diff line Loading @@ -139,8 +139,6 @@ public enum DesktopModeFlags { ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS(Flags::enableWindowingDynamicInitialBounds, true), ENABLE_WINDOWING_EDGE_DRAG_RESIZE(Flags::enableWindowingEdgeDragResize, true), ENABLE_WINDOWING_SCALED_RESIZING(Flags::enableWindowingScaledResizing, true), ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS( Flags::enableWindowingTransitionHandlersObservers, false), EXCLUDE_CAPTION_FROM_APP_BOUNDS(Flags::excludeCaptionFromAppBounds, true), FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK( Flags::forceCloseTopTransparentFullscreenTask, false), Loading libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java +1 −1 Original line number Diff line number Diff line Loading @@ -16,11 +16,11 @@ package com.android.wm.shell.dagger; import static android.window.DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_SYSTEM_DIALOGS_TRANSITIONS; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_ENTER_TRANSITIONS_BUGFIX; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_TASK_LIMIT; import static android.window.DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS; import static com.android.systemui.Flags.enableViewCaptureTracing; Loading libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt +1 −1 Original line number Diff line number Diff line Loading @@ -178,7 +178,7 @@ class DesktopTasksLimiter( // markClosingTasks() is a workaround while // ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS is ramping up, so don't run this // logic when that flag has been enabled. if (DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue) { if (DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue) { return } info.changes.forEach { change -> Loading libs/WindowManager/Shell/src/com/android/wm/shell/freeform/FreeformTaskListener.java +6 −6 Original line number Diff line number Diff line Loading @@ -106,8 +106,8 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, state.mLeash = leash; mTasks.put(taskInfo.taskId, state); if (!DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode()) { if (!DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode()) { mDesktopUserRepositories.ifPresent(userRepositories -> { DesktopRepository currentRepo = userRepositories.getProfile(taskInfo.userId); currentRepo.addTask(taskInfo.displayId, taskInfo.taskId, taskInfo.isVisible); Loading @@ -122,8 +122,8 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, taskInfo.taskId); mTasks.remove(taskInfo.taskId); if (!DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode() if (!DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode() && mDesktopUserRepositories.isPresent()) { DesktopRepository repository = mDesktopUserRepositories.get().getProfile(taskInfo.userId); Loading Loading @@ -159,7 +159,7 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, mWindowDecorationViewModel.onTaskInfoChanged(taskInfo); state.mTaskInfo = taskInfo; if (mDesktopState.canEnterDesktopMode()) { if (DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { if (DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { // Pass task info changes to the [TaskChangeListener] since [TransitionsObserver] // does not propagate all task info changes. mTaskChangeListener.ifPresent(listener -> Loading Loading @@ -192,7 +192,7 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, @Override public void onFocusTaskChanged(RunningTaskInfo taskInfo) { if (taskInfo.getWindowingMode() != WINDOWING_MODE_FREEFORM || DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { || DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { return; } ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TASK_ORG, Loading Loading
core/java/android/window/DesktopExperienceFlags.java +3 −0 Original line number Diff line number Diff line Loading @@ -148,6 +148,9 @@ public enum DesktopExperienceFlags { ENABLE_TALL_APP_HEADERS(Flags::enableTallAppHeaders, false, Flags.FLAG_ENABLE_TALL_APP_HEADERS), ENABLE_TASKBAR_CONNECTED_DISPLAYS(Flags::enableTaskbarConnectedDisplays, true, Flags.FLAG_ENABLE_TASKBAR_CONNECTED_DISPLAYS), ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS( Flags::enableWindowingTransitionHandlersObservers, false, Flags.FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS), ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS(Flags::enterDesktopByDefaultOnFreeformDisplays, true, Flags.FLAG_ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS), FORM_FACTOR_BASED_DESKTOP_FIRST_SWITCH(Flags::formFactorBasedDesktopFirstSwitch, false, Loading
core/java/android/window/DesktopModeFlags.java +0 −2 Original line number Diff line number Diff line Loading @@ -139,8 +139,6 @@ public enum DesktopModeFlags { ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS(Flags::enableWindowingDynamicInitialBounds, true), ENABLE_WINDOWING_EDGE_DRAG_RESIZE(Flags::enableWindowingEdgeDragResize, true), ENABLE_WINDOWING_SCALED_RESIZING(Flags::enableWindowingScaledResizing, true), ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS( Flags::enableWindowingTransitionHandlersObservers, false), EXCLUDE_CAPTION_FROM_APP_BOUNDS(Flags::excludeCaptionFromAppBounds, true), FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK( Flags::forceCloseTopTransparentFullscreenTask, false), Loading
libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java +1 −1 Original line number Diff line number Diff line Loading @@ -16,11 +16,11 @@ package com.android.wm.shell.dagger; import static android.window.DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_SYSTEM_DIALOGS_TRANSITIONS; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_ENTER_TRANSITIONS_BUGFIX; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_TASK_LIMIT; import static android.window.DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS; import static com.android.systemui.Flags.enableViewCaptureTracing; Loading
libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt +1 −1 Original line number Diff line number Diff line Loading @@ -178,7 +178,7 @@ class DesktopTasksLimiter( // markClosingTasks() is a workaround while // ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS is ramping up, so don't run this // logic when that flag has been enabled. if (DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue) { if (DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue) { return } info.changes.forEach { change -> Loading
libs/WindowManager/Shell/src/com/android/wm/shell/freeform/FreeformTaskListener.java +6 −6 Original line number Diff line number Diff line Loading @@ -106,8 +106,8 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, state.mLeash = leash; mTasks.put(taskInfo.taskId, state); if (!DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode()) { if (!DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode()) { mDesktopUserRepositories.ifPresent(userRepositories -> { DesktopRepository currentRepo = userRepositories.getProfile(taskInfo.userId); currentRepo.addTask(taskInfo.displayId, taskInfo.taskId, taskInfo.isVisible); Loading @@ -122,8 +122,8 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, taskInfo.taskId); mTasks.remove(taskInfo.taskId); if (!DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode() if (!DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() && mDesktopState.canEnterDesktopMode() && mDesktopUserRepositories.isPresent()) { DesktopRepository repository = mDesktopUserRepositories.get().getProfile(taskInfo.userId); Loading Loading @@ -159,7 +159,7 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, mWindowDecorationViewModel.onTaskInfoChanged(taskInfo); state.mTaskInfo = taskInfo; if (mDesktopState.canEnterDesktopMode()) { if (DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { if (DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { // Pass task info changes to the [TaskChangeListener] since [TransitionsObserver] // does not propagate all task info changes. mTaskChangeListener.ifPresent(listener -> Loading Loading @@ -192,7 +192,7 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, @Override public void onFocusTaskChanged(RunningTaskInfo taskInfo) { if (taskInfo.getWindowingMode() != WINDOWING_MODE_FREEFORM || DesktopModeFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { || DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { return; } ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TASK_ORG, Loading