diff options
| author | 2025-02-26 14:09:33 -0800 | |
|---|---|---|
| committer | 2025-03-03 02:41:27 -0800 | |
| commit | f66580ff00a3308dcea5ec8ceca73ab18af45bab (patch) | |
| tree | 6f1d4724e91e8fde8f008bd25e399fa190680467 | |
| parent | a458b252774090d9c6127b97e69fc8bba4d7a449 (diff) | |
Update aconfig flag for persisting display size in connected displays
This flag was incorrectly marked as Bug-fix, flag name is updated with this change to create a new workflow.
Flag: com.android.window.flags.enable_persisting_display_size_for_connected_displays
RenamedFlag: com.android.window.flags.enable_persisting_density_scale_for_connected_displays
Test: NA
Bug: 392855657
Change-Id: I9d383f19d6398eeb5c47699768c3ff5b3cd388fd
5 files changed, 11 insertions, 12 deletions
diff --git a/core/java/android/window/DesktopExperienceFlags.java b/core/java/android/window/DesktopExperienceFlags.java index e0c48b03dad8..cf582176a9f7 100644 --- a/core/java/android/window/DesktopExperienceFlags.java +++ b/core/java/android/window/DesktopExperienceFlags.java @@ -60,6 +60,8 @@ public enum DesktopExperienceFlags { ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT(Flags::enableMoveToNextDisplayShortcut, false), ENABLE_MULTIPLE_DESKTOPS_BACKEND(Flags::enableMultipleDesktopsBackend, false), ENABLE_MULTIPLE_DESKTOPS_FRONTEND(Flags::enableMultipleDesktopsFrontend, false), + ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS( + Flags::enablePersistingDisplaySizeForConnectedDisplays, false), ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY(Flags::enablePerDisplayDesktopWallpaperActivity, false), ENABLE_PER_DISPLAY_PACKAGE_CONTEXT_CACHE_IN_STATUSBAR_NOTIF( diff --git a/core/java/android/window/flags/lse_desktop_experience.aconfig b/core/java/android/window/flags/lse_desktop_experience.aconfig index 9b1dd954eaf5..32338f29b05e 100644 --- a/core/java/android/window/flags/lse_desktop_experience.aconfig +++ b/core/java/android/window/flags/lse_desktop_experience.aconfig @@ -804,13 +804,10 @@ flag { } flag { - name: "enable_persisting_density_scale_for_connected_displays" + name: "enable_persisting_display_size_for_connected_displays" namespace: "lse_desktop_experience" - description: "Enables persisting density scale on resolution change for connected displays." + description: "Enables persisting display size on resolution change for connected displays." bug: "392855657" - metadata { - purpose: PURPOSE_BUGFIX - } } flag { diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index 64c19ff70c9f..647b02686a78 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -156,7 +156,6 @@ import static com.android.server.wm.utils.DisplayInfoOverrides.WM_OVERRIDE_FIELD import static com.android.server.wm.utils.DisplayInfoOverrides.copyDisplayInfoFields; import static com.android.server.wm.utils.RegionUtils.forEachRectReverse; import static com.android.server.wm.utils.RegionUtils.rectListToRegion; -import static com.android.window.flags.Flags.enablePersistingDensityScaleForConnectedDisplays; import static com.android.window.flags.Flags.enablePresentationForConnectedDisplays; import android.annotation.IntDef; @@ -237,6 +236,7 @@ import android.view.WindowManager; import android.view.WindowManager.DisplayImePolicy; import android.view.WindowManagerPolicyConstants.PointerEventListener; import android.view.inputmethod.ImeTracker; +import android.window.DesktopExperienceFlags; import android.window.DisplayWindowPolicyController; import android.window.IDisplayAreaOrganizer; import android.window.ScreenCapture; @@ -3154,7 +3154,7 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp } } // Update the base density if there is a forced density ratio. - if (enablePersistingDensityScaleForConnectedDisplays() + if (DesktopExperienceFlags.ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS.isTrue() && mIsDensityForced && mExternalDisplayForcedDensityRatio != 0.0f) { mBaseDisplayDensity = (int) (mInitialDisplayDensity * mExternalDisplayForcedDensityRatio + 0.5); @@ -3189,7 +3189,7 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp density = 0; } // Save the new density ratio to settings for external displays. - if (enablePersistingDensityScaleForConnectedDisplays() + if (DesktopExperienceFlags.ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS.isTrue() && mDisplayInfo.type == TYPE_EXTERNAL) { mExternalDisplayForcedDensityRatio = (float) mBaseDisplayDensity / getInitialDisplayDensity(); diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java index 61ed0b53cdcf..04170c4722fa 100644 --- a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java @@ -87,7 +87,7 @@ import static com.android.server.wm.TransitionSubject.assertThat; import static com.android.window.flags.Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING; import static com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE; import static com.android.server.display.feature.flags.Flags.FLAG_ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT; -import static com.android.window.flags.Flags.FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS; +import static com.android.window.flags.Flags.FLAG_ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS; import static com.google.common.truth.Truth.assertThat; @@ -2921,7 +2921,7 @@ public class DisplayContentTests extends WindowTestsBase { assertFalse(dc.mWmService.mDisplayWindowSettings.shouldShowSystemDecorsLocked(dc)); } - @EnableFlags(FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS) + @EnableFlags(FLAG_ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS) @Test public void testForcedDensityRatioSetForExternalDisplays_persistDensityScaleFlagEnabled() { final DisplayInfo displayInfo = new DisplayInfo(mDisplayInfo); @@ -2951,7 +2951,7 @@ public class DisplayContentTests extends WindowTestsBase { displayContent.mExternalDisplayForcedDensityRatio, 0.01); } - @EnableFlags(FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS) + @EnableFlags(FLAG_ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS) @Test public void testForcedDensityUpdateForExternalDisplays_persistDensityScaleFlagEnabled() { final DisplayInfo displayInfo = new DisplayInfo(mDisplayInfo); diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java index a57577a96f79..81e487a67725 100644 --- a/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java @@ -274,7 +274,7 @@ public class DisplayWindowSettingsTests extends WindowTestsBase { mSecondaryDisplay.mBaseDisplayDensity); } - @EnableFlags(Flags.FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS) + @EnableFlags(Flags.FLAG_ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS) @Test public void testSetForcedDensityRatio() { mDisplayWindowSettings.setForcedDensity(mSecondaryDisplay.getDisplayInfo(), |