Merge "Fix default app size for desktop proto 2" into tm-qpr-dev am: 61a5674849 am: 4c3804ec1e

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21529805

Change-Id: I0de6bb933820c0c8a69f5a62fc9f275561aa6ca8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Ats Jenk
2023-03-10 18:04:20 +00:00
committed by Automerger Merge Worker
2 changed files with 15 additions and 13 deletions

View File

@@ -41,7 +41,8 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
// Desktop mode feature flag.
static final boolean DESKTOP_MODE_SUPPORTED = SystemProperties.getBoolean(
"persist.wm.debug.desktop_mode", false);
"persist.wm.debug.desktop_mode", false) || SystemProperties.getBoolean(
"persist.wm.debug.desktop_mode_2", false);
// Override default freeform task width when desktop mode is enabled. In dips.
private static final int DESKTOP_MODE_DEFAULT_WIDTH_DP = SystemProperties.getInt(
"persist.wm.debug.desktop_mode.default_width", 840);
@@ -79,8 +80,8 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
appendLog("not in bounds phase, skipping");
return RESULT_SKIP;
}
if (!task.inFreeformWindowingMode()) {
appendLog("not a freeform task, skipping");
if (!task.isActivityTypeStandard()) {
appendLog("not standard activity type, skipping");
return RESULT_SKIP;
}
if (!currentParams.mBounds.isEmpty()) {

View File

@@ -16,8 +16,9 @@
package com.android.server.wm;
import static android.app.WindowConfiguration.ACTIVITY_TYPE_ASSISTANT;
import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD;
import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM;
import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN;
import static android.util.DisplayMetrics.DENSITY_DEFAULT;
import static com.android.server.wm.LaunchParamsController.LaunchParamsModifier.PHASE_BOUNDS;
@@ -79,24 +80,24 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase {
}
@Test
public void testReturnsSkipIfTaskNotInFreeform() {
final Task task = new TaskBuilder(mSupervisor).setWindowingMode(
WINDOWING_MODE_FULLSCREEN).build();
public void testReturnsSkipIfTaskNotUsingActivityTypeStandard() {
final Task task = new TaskBuilder(mSupervisor).setActivityType(
ACTIVITY_TYPE_ASSISTANT).build();
assertEquals(RESULT_SKIP, new CalculateRequestBuilder().setTask(task).calculate());
}
@Test
public void testReturnsSkipIfCurrentParamsHasBounds() {
final Task task = new TaskBuilder(mSupervisor).setWindowingMode(
WINDOWING_MODE_FREEFORM).build();
final Task task = new TaskBuilder(mSupervisor).setActivityType(
ACTIVITY_TYPE_STANDARD).build();
mCurrent.mBounds.set(/* left */ 0, /* top */ 0, /* right */ 100, /* bottom */ 100);
assertEquals(RESULT_SKIP, new CalculateRequestBuilder().setTask(task).calculate());
}
@Test
public void testUsesDefaultBounds() {
final Task task = new TaskBuilder(mSupervisor).setWindowingMode(
WINDOWING_MODE_FREEFORM).build();
final Task task = new TaskBuilder(mSupervisor).setActivityType(
ACTIVITY_TYPE_STANDARD).build();
assertEquals(RESULT_DONE, new CalculateRequestBuilder().setTask(task).calculate());
assertEquals(dpiToPx(task, 840), mResult.mBounds.width());
assertEquals(dpiToPx(task, 630), mResult.mBounds.height());
@@ -104,8 +105,8 @@ public class DesktopModeLaunchParamsModifierTests extends WindowTestsBase {
@Test
public void testUsesDisplayAreaAndWindowingModeFromSource() {
final Task task = new TaskBuilder(mSupervisor).setWindowingMode(
WINDOWING_MODE_FREEFORM).build();
final Task task = new TaskBuilder(mSupervisor).setActivityType(
ACTIVITY_TYPE_STANDARD).build();
TaskDisplayArea mockTaskDisplayArea = mock(TaskDisplayArea.class);
mCurrent.mPreferredTaskDisplayArea = mockTaskDisplayArea;
mCurrent.mWindowingMode = WINDOWING_MODE_FREEFORM;