From a64494059c699af4664f70e2f2193331899cf5b3 Mon Sep 17 00:00:00 2001 From: Jerry Chang Date: Fri, 3 Mar 2023 04:48:39 +0000 Subject: [PATCH] Do not clear activity type in clearSizeCompatMode The activity type was set when adding the activity to a task, so reseting activity type in clearSizeCompatMode might leaving it undefined because the activity is already added to a task. Fix: 267559999 Test: atest SizeCompatTests Change-Id: I611a5e98124937b7056b02cdedfe3884f99c3218 --- .../core/java/com/android/server/wm/ActivityRecord.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java index 9944f127521d5..c8f9db7f7e343 100644 --- a/services/core/java/com/android/server/wm/ActivityRecord.java +++ b/services/core/java/com/android/server/wm/ActivityRecord.java @@ -8035,7 +8035,13 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } // Clear config override in #updateCompatDisplayInsets(). - onRequestedOverrideConfigurationChanged(EMPTY); + final int activityType = getActivityType(); + final Configuration overrideConfig = getRequestedOverrideConfiguration(); + overrideConfig.unset(); + // Keep the activity type which was set when attaching to a task to prevent leaving it + // undefined. + overrideConfig.windowConfiguration.setActivityType(activityType); + onRequestedOverrideConfigurationChanged(overrideConfig); } @Override