Loading libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeFlags.kt +4 −1 Original line number Diff line number Diff line Loading @@ -39,7 +39,10 @@ enum class DesktopModeFlags( MODALS_POLICY(Flags::enableDesktopWindowingModalsPolicy, true), THEMED_APP_HEADERS(Flags::enableThemedAppHeaders, true), QUICK_SWITCH(Flags::enableDesktopWindowingQuickSwitch, true), APP_HEADER_WITH_TASK_DENSITY(Flags::enableAppHeaderWithTaskDensity, true); APP_HEADER_WITH_TASK_DENSITY(Flags::enableAppHeaderWithTaskDensity, true), TASK_STACK_OBSERVER_IN_SHELL(Flags::enableTaskStackObserverInShell, true), SIZE_CONSTRAINTS(Flags::enableDesktopWindowingSizeConstraints, true), DYNAMIC_INITIAL_BOUNDS(Flags::enableWindowingDynamicInitialBounds, true); /** * Determines state of flag based on the actual flag and desktop mode developer option overrides. Loading libs/WindowManager/Shell/src/com/android/wm/shell/compatui/CompatUIWindowManager.java +3 −2 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ import com.android.wm.shell.compatui.CompatUIController.CompatUIHintsState; import com.android.wm.shell.compatui.api.CompatUIEvent; import com.android.wm.shell.compatui.impl.CompatUIEvents.CameraControlStateUpdated; import com.android.wm.shell.compatui.impl.CompatUIEvents.SizeCompatRestartButtonAppeared; import com.android.wm.shell.shared.desktopmode.DesktopModeFlags; import java.util.function.Consumer; Loading Loading @@ -94,7 +95,7 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { mCallback = callback; mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat; if (DESKTOP_WINDOWING_MODE.isEnabled(mContext) && Flags.enableWindowingDynamicInitialBounds()) { && DesktopModeFlags.THEMED_APP_HEADERS.isEnabled(context)) { // Don't show the SCM button for freeform tasks mHasSizeCompat &= !taskInfo.isFreeform(); } Loading Loading @@ -154,7 +155,7 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { final int prevCameraCompatControlState = mCameraCompatControlState; mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat; if (DESKTOP_WINDOWING_MODE.isEnabled(mContext) && Flags.enableWindowingDynamicInitialBounds()) { && DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(mContext)) { // Don't show the SCM button for freeform tasks mHasSizeCompat &= !taskInfo.isFreeform(); } Loading libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +2 −1 Original line number Diff line number Diff line Loading @@ -946,10 +946,11 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides static TaskStackTransitionObserver provideTaskStackTransitionObserver( Context context, Lazy<Transitions> transitions, ShellInit shellInit ) { return new TaskStackTransitionObserver(transitions, shellInit); return new TaskStackTransitionObserver(context, transitions, shellInit); } // Loading libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt +2 −2 Original line number Diff line number Diff line Loading @@ -664,7 +664,7 @@ class DesktopTasksController( if (taskBoundsBeforeMaximize != null) { destinationBounds.set(taskBoundsBeforeMaximize) } else { if (Flags.enableWindowingDynamicInitialBounds()) { if (DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(context)) { destinationBounds.set(calculateInitialBounds(displayLayout, taskInfo)) } else { destinationBounds.set(getDefaultDesktopTaskBounds(displayLayout)) Loading Loading @@ -1362,7 +1362,7 @@ class DesktopTasksController( // Start a new jank interaction for the drag release to desktop window animation. interactionJankMonitor.begin(taskSurface, context, CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE, "to_desktop") if (Flags.enableWindowingDynamicInitialBounds()) { if (DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(context)) { finalizeDragToDesktop(taskInfo, calculateInitialBounds(displayLayout, taskInfo)) } else { finalizeDragToDesktop(taskInfo, getDefaultDesktopTaskBounds(displayLayout)) Loading libs/WindowManager/Shell/src/com/android/wm/shell/recents/RecentTasksController.java +2 −2 Original line number Diff line number Diff line Loading @@ -20,7 +20,6 @@ import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.content.pm.PackageManager.FEATURE_PC; import static com.android.window.flags.Flags.enableDesktopWindowingTaskbarRunningApps; import static com.android.window.flags.Flags.enableTaskStackObserverInShell; import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_RECENT_TASKS; import android.app.ActivityManager; Loading Loading @@ -55,6 +54,7 @@ import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.annotations.ExternalThread; import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.shared.desktopmode.DesktopModeFlags; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; Loading Loading @@ -351,7 +351,7 @@ public class RecentTasksController implements TaskStackListenerCallback, private void notifyTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) { if (mListener == null || !enableTaskStackObserverInShell() || !DesktopModeFlags.TASK_STACK_OBSERVER_IN_SHELL.isEnabled(mContext) || taskInfo.realActivity == null) { return; } Loading Loading
libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeFlags.kt +4 −1 Original line number Diff line number Diff line Loading @@ -39,7 +39,10 @@ enum class DesktopModeFlags( MODALS_POLICY(Flags::enableDesktopWindowingModalsPolicy, true), THEMED_APP_HEADERS(Flags::enableThemedAppHeaders, true), QUICK_SWITCH(Flags::enableDesktopWindowingQuickSwitch, true), APP_HEADER_WITH_TASK_DENSITY(Flags::enableAppHeaderWithTaskDensity, true); APP_HEADER_WITH_TASK_DENSITY(Flags::enableAppHeaderWithTaskDensity, true), TASK_STACK_OBSERVER_IN_SHELL(Flags::enableTaskStackObserverInShell, true), SIZE_CONSTRAINTS(Flags::enableDesktopWindowingSizeConstraints, true), DYNAMIC_INITIAL_BOUNDS(Flags::enableWindowingDynamicInitialBounds, true); /** * Determines state of flag based on the actual flag and desktop mode developer option overrides. Loading
libs/WindowManager/Shell/src/com/android/wm/shell/compatui/CompatUIWindowManager.java +3 −2 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ import com.android.wm.shell.compatui.CompatUIController.CompatUIHintsState; import com.android.wm.shell.compatui.api.CompatUIEvent; import com.android.wm.shell.compatui.impl.CompatUIEvents.CameraControlStateUpdated; import com.android.wm.shell.compatui.impl.CompatUIEvents.SizeCompatRestartButtonAppeared; import com.android.wm.shell.shared.desktopmode.DesktopModeFlags; import java.util.function.Consumer; Loading Loading @@ -94,7 +95,7 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { mCallback = callback; mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat; if (DESKTOP_WINDOWING_MODE.isEnabled(mContext) && Flags.enableWindowingDynamicInitialBounds()) { && DesktopModeFlags.THEMED_APP_HEADERS.isEnabled(context)) { // Don't show the SCM button for freeform tasks mHasSizeCompat &= !taskInfo.isFreeform(); } Loading Loading @@ -154,7 +155,7 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { final int prevCameraCompatControlState = mCameraCompatControlState; mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat; if (DESKTOP_WINDOWING_MODE.isEnabled(mContext) && Flags.enableWindowingDynamicInitialBounds()) { && DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(mContext)) { // Don't show the SCM button for freeform tasks mHasSizeCompat &= !taskInfo.isFreeform(); } Loading
libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +2 −1 Original line number Diff line number Diff line Loading @@ -946,10 +946,11 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides static TaskStackTransitionObserver provideTaskStackTransitionObserver( Context context, Lazy<Transitions> transitions, ShellInit shellInit ) { return new TaskStackTransitionObserver(transitions, shellInit); return new TaskStackTransitionObserver(context, transitions, shellInit); } // Loading
libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt +2 −2 Original line number Diff line number Diff line Loading @@ -664,7 +664,7 @@ class DesktopTasksController( if (taskBoundsBeforeMaximize != null) { destinationBounds.set(taskBoundsBeforeMaximize) } else { if (Flags.enableWindowingDynamicInitialBounds()) { if (DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(context)) { destinationBounds.set(calculateInitialBounds(displayLayout, taskInfo)) } else { destinationBounds.set(getDefaultDesktopTaskBounds(displayLayout)) Loading Loading @@ -1362,7 +1362,7 @@ class DesktopTasksController( // Start a new jank interaction for the drag release to desktop window animation. interactionJankMonitor.begin(taskSurface, context, CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE, "to_desktop") if (Flags.enableWindowingDynamicInitialBounds()) { if (DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(context)) { finalizeDragToDesktop(taskInfo, calculateInitialBounds(displayLayout, taskInfo)) } else { finalizeDragToDesktop(taskInfo, getDefaultDesktopTaskBounds(displayLayout)) Loading
libs/WindowManager/Shell/src/com/android/wm/shell/recents/RecentTasksController.java +2 −2 Original line number Diff line number Diff line Loading @@ -20,7 +20,6 @@ import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.content.pm.PackageManager.FEATURE_PC; import static com.android.window.flags.Flags.enableDesktopWindowingTaskbarRunningApps; import static com.android.window.flags.Flags.enableTaskStackObserverInShell; import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_RECENT_TASKS; import android.app.ActivityManager; Loading Loading @@ -55,6 +54,7 @@ import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.annotations.ExternalThread; import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.shared.desktopmode.DesktopModeFlags; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; Loading Loading @@ -351,7 +351,7 @@ public class RecentTasksController implements TaskStackListenerCallback, private void notifyTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) { if (mListener == null || !enableTaskStackObserverInShell() || !DesktopModeFlags.TASK_STACK_OBSERVER_IN_SHELL.isEnabled(mContext) || taskInfo.realActivity == null) { return; } Loading