summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/wm/ActivityRecord.java4
-rw-r--r--services/core/java/com/android/server/wm/AppCompatAspectRatioOverrides.java6
-rw-r--r--services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java3
3 files changed, 10 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java
index ae55a1a77873..d2546e49267a 100644
--- a/services/core/java/com/android/server/wm/ActivityRecord.java
+++ b/services/core/java/com/android/server/wm/ActivityRecord.java
@@ -3230,8 +3230,8 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
return false;
}
// If the user preference respects aspect ratio, then it becomes non-resizable.
- return !mAppCompatController.getAppCompatOverrides().getAppCompatAspectRatioOverrides()
- .shouldApplyUserMinAspectRatioOverride();
+ return mAppCompatController.getAppCompatOverrides().getAppCompatAspectRatioOverrides()
+ .userPreferenceCompatibleWithNonResizability();
}
boolean isResizeable() {
diff --git a/services/core/java/com/android/server/wm/AppCompatAspectRatioOverrides.java b/services/core/java/com/android/server/wm/AppCompatAspectRatioOverrides.java
index 90c0866d7dff..086b11c25a8d 100644
--- a/services/core/java/com/android/server/wm/AppCompatAspectRatioOverrides.java
+++ b/services/core/java/com/android/server/wm/AppCompatAspectRatioOverrides.java
@@ -135,6 +135,12 @@ class AppCompatAspectRatioOverrides {
&& aspectRatio != USER_MIN_ASPECT_RATIO_FULLSCREEN;
}
+ boolean userPreferenceCompatibleWithNonResizability() {
+ final int aspectRatio = getUserMinAspectRatioOverrideCode();
+ return aspectRatio == USER_MIN_ASPECT_RATIO_UNSET
+ || aspectRatio == USER_MIN_ASPECT_RATIO_FULLSCREEN;
+ }
+
boolean shouldApplyUserFullscreenOverride() {
if (isUserFullscreenOverrideEnabled()) {
final int aspectRatio = getUserMinAspectRatioOverrideCode();
diff --git a/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java b/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java
index 4fbe492ea7fb..584c4c96ae1d 100644
--- a/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java
@@ -4917,7 +4917,8 @@ public class SizeCompatTests extends WindowTestsBase {
assertEquals(minAspect, aspectRatioPolicy.getMinAspectRatio(), 0 /* delta */);
// User override can still take effect.
- doReturn(true).when(aspectRatioOverrides).shouldApplyUserMinAspectRatioOverride();
+ doReturn(USER_MIN_ASPECT_RATIO_3_2).when(aspectRatioOverrides)
+ .getUserMinAspectRatioOverrideCode();
assertFalse(mActivity.isResizeable());
assertEquals(maxAspect, aspectRatioPolicy.getMaxAspectRatio(), 0 /* delta */);
assertNotEquals(SCREEN_ORIENTATION_UNSPECIFIED, mActivity.getOverrideOrientation());