Set letterbox verticalPositionMultiplier to 0

Change the default value of the verticalPositionMultiplier to 0 so that we align to top

Bug: 236226770
Test: atest WmTests:SizeCompatTests
Change-Id: Ib15e95f34b3c0e9ac2ec8afa4869116ca60da20f
This commit is contained in:
Vali Calinescu
2022-09-08 14:04:25 +00:00
parent 6f1c42b424
commit 4e18a84fcf
3 changed files with 11 additions and 9 deletions

View File

@@ -5218,7 +5218,7 @@
<!-- Vertical position of a center of the letterboxed app window.
0 corresponds to the upper side of the screen and 1 to the lower side. If given value < 0
or > 1, it is ignored and central position is used (0.5). -->
<item name="config_letterboxVerticalPositionMultiplier" format="float" type="dimen">0.5</item>
<item name="config_letterboxVerticalPositionMultiplier" format="float" type="dimen">0.0</item>
<!-- Whether horizontal reachability repositioning is allowed for letterboxed fullscreen apps.
-->

View File

@@ -2270,7 +2270,7 @@ public class SizeCompatTests extends WindowTestsBase {
prepareUnresizable(mActivity, /* maxAspect */ 1.1f, SCREEN_ORIENTATION_UNSPECIFIED);
// Bounds are letterboxed to respect the provided max aspect ratio.
assertEquals(mActivity.getBounds(), new Rect(0, 850, 1000, 1950));
assertEquals(mActivity.getBounds(), new Rect(0, 0, 1000, 1100));
// Move activity to split screen which has landscape size.
mTask.reparent(organizer.mPrimary, POSITION_TOP, /* moveParents */ false, "test");
@@ -2337,6 +2337,8 @@ public class SizeCompatTests extends WindowTestsBase {
@Test
public void testLetterboxDetailsForStatusBar_letterboxNotOverlappingStatusBar() {
// Align to center so that we don't overlap with the status bar
mAtm.mWindowManager.mLetterboxConfiguration.setLetterboxVerticalPositionMultiplier(0.5f);
final DisplayContent display = new TestDisplayContent.Builder(mAtm, 1000, 2800)
.setNotch(100)
.build();
@@ -2453,7 +2455,7 @@ public class SizeCompatTests extends WindowTestsBase {
// At launch.
/* fixedOrientationLetterbox */ new Rect(0, 0, 700, 1400),
// After 90 degree rotation.
/* sizeCompatUnscaled */ new Rect(0, 700, 700, 2100),
/* sizeCompatUnscaled */ new Rect(0, 0, 700, 1400),
// After the display is resized to (700, 1400).
/* sizeCompatScaled */ new Rect(0, 0, 350, 700));
}
@@ -2466,7 +2468,7 @@ public class SizeCompatTests extends WindowTestsBase {
// At launch.
/* fixedOrientationLetterbox */ new Rect(1050, 0, 1750, 1400),
// After 90 degree rotation.
/* sizeCompatUnscaled */ new Rect(350, 700, 1050, 2100),
/* sizeCompatUnscaled */ new Rect(350, 0, 1050, 1400),
// After the display is resized to (700, 1400).
/* sizeCompatScaled */ new Rect(525, 0, 875, 700));
}
@@ -2481,7 +2483,7 @@ public class SizeCompatTests extends WindowTestsBase {
// At launch.
/* fixedOrientationLetterbox */ new Rect(1050, 0, 1750, 1400),
// After 90 degree rotation.
/* sizeCompatUnscaled */ new Rect(350, 700, 1050, 2100),
/* sizeCompatUnscaled */ new Rect(350, 0, 1050, 1400),
// After the display is resized to (700, 1400).
/* sizeCompatScaled */ new Rect(525, 0, 875, 700));
@@ -2491,7 +2493,7 @@ public class SizeCompatTests extends WindowTestsBase {
// At launch.
/* fixedOrientationLetterbox */ new Rect(1050, 0, 1750, 1400),
// After 90 degree rotation.
/* sizeCompatUnscaled */ new Rect(350, 700, 1050, 2100),
/* sizeCompatUnscaled */ new Rect(350, 0, 1050, 1400),
// After the display is resized to (700, 1400).
/* sizeCompatScaled */ new Rect(525, 0, 875, 700));
}
@@ -2504,7 +2506,7 @@ public class SizeCompatTests extends WindowTestsBase {
// At launch.
/* fixedOrientationLetterbox */ new Rect(2100, 0, 2800, 1400),
// After 90 degree rotation.
/* sizeCompatUnscaled */ new Rect(700, 700, 1400, 2100),
/* sizeCompatUnscaled */ new Rect(700, 0, 1400, 1400),
// After the display is resized to (700, 1400).
/* sizeCompatScaled */ new Rect(1050, 0, 1400, 700));
}
@@ -2954,7 +2956,7 @@ public class SizeCompatTests extends WindowTestsBase {
rotateDisplay(mActivity.mDisplayContent, ROTATION_90);
assertTrue(mActivity.inSizeCompatMode());
// Activity is in size compat mode but not scaled.
assertEquals(new Rect(0, 1050, 1400, 1750), mActivity.getBounds());
assertEquals(new Rect(0, 0, 1400, 700), mActivity.getBounds());
}
private void assertVerticalPositionForDifferentDisplayConfigsForPortraitActivity(

View File

@@ -238,7 +238,7 @@ class WindowTestsBase extends SystemServiceTestsBase {
// Ensure letterbox vertical position multiplier is not overridden on any device target.
// {@link com.android.internal.R.dimen.config_letterboxHorizontalPositionMultiplier},
// may be set on some device form factors.
mAtm.mWindowManager.mLetterboxConfiguration.setLetterboxVerticalPositionMultiplier(0.5f);
mAtm.mWindowManager.mLetterboxConfiguration.setLetterboxVerticalPositionMultiplier(0.0f);
// Ensure letterbox horizontal reachability treatment isn't overridden on any device target.
// {@link com.android.internal.R.bool.config_letterboxIsHorizontalReachabilityEnabled},
// may be set on some device form factors.