Merge "Change Size Compat mode resizability heuristic to look at top activity" into tm-qpr-dev

This commit is contained in:
Vali Calinescu
2023-03-02 10:24:18 +00:00
committed by Android (Google) Code Review
2 changed files with 4 additions and 8 deletions

View File

@@ -7973,11 +7973,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
return false;
}
}
// Activity should be resizable if the task is.
final boolean isResizeable = task != null
? task.isResizeable() || isResizeable()
: isResizeable();
return !isResizeable && (info.isFixedOrientation() || hasFixedAspectRatio())
return !isResizeable() && (info.isFixedOrientation() || hasFixedAspectRatio())
// The configuration of non-standard type should be enforced by system.
// {@link WindowConfiguration#ACTIVITY_TYPE_STANDARD} is set when this activity is
// added to a task, but this function is called when resolving the launch params, at

View File

@@ -961,7 +961,7 @@ public class SizeCompatTests extends WindowTestsBase {
.setResizeMode(ActivityInfo.RESIZE_MODE_UNRESIZEABLE)
.setScreenOrientation(SCREEN_ORIENTATION_PORTRAIT)
.build();
assertFalse(activity.shouldCreateCompatDisplayInsets());
assertTrue(activity.shouldCreateCompatDisplayInsets());
// The non-resizable activity should not be size compat because it is on a resizable task
// in multi-window mode.
@@ -994,7 +994,7 @@ public class SizeCompatTests extends WindowTestsBase {
}
@Test
public void testShouldNotCreateCompatDisplayInsetsWhenRootActivityIsResizeable() {
public void testShouldCreateCompatDisplayInsetsWhenUnresizeableAndSupportsSizeChangesFalse() {
setUpDisplaySizeWithApp(1000, 2500);
// Make the task root resizable.
@@ -1003,7 +1003,7 @@ public class SizeCompatTests extends WindowTestsBase {
// Create an activity on the same task.
final ActivityRecord activity = buildActivityRecord(/* supportsSizeChanges= */false,
RESIZE_MODE_UNRESIZEABLE, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
assertFalse(activity.shouldCreateCompatDisplayInsets());
assertTrue(activity.shouldCreateCompatDisplayInsets());
}
@Test