diff options
5 files changed, 23 insertions, 23 deletions
diff --git a/libs/WindowManager/Shell/aconfig/multitasking.aconfig b/libs/WindowManager/Shell/aconfig/multitasking.aconfig index 0967f4e83c74..b61dda4c4e53 100644 --- a/libs/WindowManager/Shell/aconfig/multitasking.aconfig +++ b/libs/WindowManager/Shell/aconfig/multitasking.aconfig @@ -8,14 +8,6 @@ flag { } flag { - name: "enable_desktop_windowing" - namespace: "multitasking" - description: "Enables desktop windowing" - bug: "304778354" - is_fixed_read_only: true -} - -flag { name: "enable_split_contextual" namespace: "multitasking" description: "Enables invoking split contextually" diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeStatus.java b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeStatus.java index 88949b2a5acd..1f0eb9cb4868 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeStatus.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeStatus.java @@ -18,15 +18,13 @@ package com.android.wm.shell.desktopmode; import android.os.SystemProperties; -import com.android.wm.shell.Flags; +import com.android.window.flags.Flags; /** * Constants for desktop mode feature */ public class DesktopModeStatus { - private static final boolean ENABLE_DESKTOP_WINDOWING = Flags.enableDesktopWindowing(); - /** * Flag to indicate whether desktop mode proto is available on the device */ @@ -79,7 +77,7 @@ public class DesktopModeStatus { */ public static boolean isEnabled() { // Check for aconfig flag first - if (ENABLE_DESKTOP_WINDOWING) { + if (Flags.enableDesktopWindowingMode()) { return true; } // Fall back to sysprop flag diff --git a/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java b/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java index f11d6ec0828c..635d9ffd8a80 100644 --- a/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java +++ b/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java @@ -27,7 +27,7 @@ import android.os.SystemProperties; import android.util.Slog; import com.android.server.wm.LaunchParamsController.LaunchParamsModifier; -import com.android.wm.shell.Flags; +import com.android.window.flags.Flags; /** * The class that defines default launch params for tasks in desktop mode */ @@ -37,8 +37,6 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier { TAG_WITH_CLASS_NAME ? "DesktopModeLaunchParamsModifier" : TAG_ATM; private static final boolean DEBUG = false; - // Desktop mode feature flags. - private static final boolean ENABLE_DESKTOP_WINDOWING = Flags.enableDesktopWindowing(); private static final boolean DESKTOP_MODE_PROTO2_SUPPORTED = SystemProperties.getBoolean("persist.wm.debug.desktop_mode_2", false); public static final float DESKTOP_MODE_INITIAL_BOUNDS_SCALE = @@ -67,6 +65,11 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier { LaunchParamsController.LaunchParams currentParams, LaunchParamsController.LaunchParams outParams) { + if (!isDesktopModeEnabled()) { + appendLog("desktop mode is not enabled, continuing"); + return RESULT_CONTINUE; + } + if (task == null) { appendLog("task null, skipping"); return RESULT_SKIP; @@ -87,7 +90,7 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier { // previous windowing mode to be restored even if the desktop mode state has changed. // Let task launches inherit the windowing mode from the source task if available, which // should have the desired windowing mode set by WM Shell. See b/286929122. - if (isDesktopModeSupported() && source != null && source.getTask() != null) { + if (isDesktopModeEnabled() && source != null && source.getTask() != null) { final Task sourceTask = source.getTask(); outParams.mWindowingMode = sourceTask.getWindowingMode(); appendLog("inherit-from-source=" + outParams.mWindowingMode); @@ -140,10 +143,10 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier { if (DEBUG) Slog.d(TAG, mLogBuilder.toString()); } - /** Whether desktop mode is supported. */ - static boolean isDesktopModeSupported() { + /** Whether desktop mode is enabled. */ + static boolean isDesktopModeEnabled() { // Check for aconfig flag first - if (ENABLE_DESKTOP_WINDOWING) { + if (Flags.enableDesktopWindowingMode()) { return true; } // Fall back to sysprop flag diff --git a/services/core/java/com/android/server/wm/LaunchParamsController.java b/services/core/java/com/android/server/wm/LaunchParamsController.java index 91bb8d007948..97b5925893ae 100644 --- a/services/core/java/com/android/server/wm/LaunchParamsController.java +++ b/services/core/java/com/android/server/wm/LaunchParamsController.java @@ -64,10 +64,7 @@ class LaunchParamsController { void registerDefaultModifiers(ActivityTaskSupervisor supervisor) { // {@link TaskLaunchParamsModifier} handles window layout preferences. registerModifier(new TaskLaunchParamsModifier(supervisor)); - if (DesktopModeLaunchParamsModifier.isDesktopModeSupported()) { - // {@link DesktopModeLaunchParamsModifier} handles default task size changes - registerModifier(new DesktopModeLaunchParamsModifier()); - } + registerModifier(new DesktopModeLaunchParamsModifier()); } /** diff --git a/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java b/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java index ef36bff91a67..cd64c73daff3 100644 --- a/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java @@ -31,11 +31,13 @@ import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.mock; import android.graphics.Rect; +import android.platform.test.annotations.EnableFlags; import android.platform.test.annotations.Presubmit; import androidx.test.filters.SmallTest; import com.android.server.wm.LaunchParamsController.LaunchParamsModifier.Result; +import com.android.window.flags.Flags; import org.junit.Before; import org.junit.Test; @@ -70,11 +72,13 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testReturnsSkipIfTaskIsNull() { assertEquals(RESULT_SKIP, new CalculateRequestBuilder().setTask(null).calculate()); } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testReturnsSkipIfNotBoundsPhase() { final Task task = new TaskBuilder(mSupervisor).build(); assertEquals(RESULT_SKIP, new CalculateRequestBuilder().setTask(task).setPhase( @@ -82,6 +86,7 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testReturnsSkipIfTaskNotUsingActivityTypeStandardOrUndefined() { final Task task = new TaskBuilder(mSupervisor).setActivityType( ACTIVITY_TYPE_ASSISTANT).build(); @@ -89,6 +94,7 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testReturnsDoneIfTaskUsingActivityTypeStandard() { final Task task = new TaskBuilder(mSupervisor).setActivityType( ACTIVITY_TYPE_STANDARD).build(); @@ -96,6 +102,7 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testReturnsDoneIfTaskUsingActivityTypeUndefined() { final Task task = new TaskBuilder(mSupervisor).setActivityType( ACTIVITY_TYPE_UNDEFINED).build(); @@ -103,6 +110,7 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testReturnsSkipIfCurrentParamsHasBounds() { final Task task = new TaskBuilder(mSupervisor).setActivityType( ACTIVITY_TYPE_STANDARD).build(); @@ -111,6 +119,7 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testUsesDefaultBounds() { final Task task = new TaskBuilder(mSupervisor).setActivityType( ACTIVITY_TYPE_STANDARD).build(); @@ -125,6 +134,7 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) public void testUsesDisplayAreaAndWindowingModeFromSource() { final Task task = new TaskBuilder(mSupervisor).setActivityType( ACTIVITY_TYPE_STANDARD).build(); |