From 6af3840addcf1546290477be94c25730a2440aa0 Mon Sep 17 00:00:00 2001 From: Louis Chang Date: Thu, 10 Aug 2023 09:59:29 +0000 Subject: [PATCH] Revert "Send update config change when letterbox is moved" This reverts commit 70187af25ce3f56f85ddd703f982caa82f685605. Reason for revert: b/294382653 Change-Id: I17de4adfb85bc04f740d5d5268d79532b6db5502 --- core/java/android/app/ActivityThread.java | 6 ------ core/java/android/window/ConfigurationHelper.java | 2 +- .../src/android/app/activity/ActivityThreadTest.java | 6 ++++-- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 41c58ef67e656..1571fddb012f9 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -34,7 +34,6 @@ import static android.view.Display.INVALID_DISPLAY; import static android.window.ConfigurationHelper.freeTextLayoutCachesIfNeeded; import static android.window.ConfigurationHelper.isDifferentDisplay; import static android.window.ConfigurationHelper.shouldUpdateResources; -import static android.window.ConfigurationHelper.shouldUpdateWindowMetricsBounds; import static com.android.internal.annotations.VisibleForTesting.Visibility.PACKAGE; import static com.android.internal.os.SafeZipPathValidatorCallback.VALIDATE_ZIP_PATH_FOR_PATH_TRAVERSAL; @@ -6118,11 +6117,6 @@ public final class ActivityThread extends ClientTransactionHandler public static boolean shouldReportChange(@Nullable Configuration currentConfig, @NonNull Configuration newConfig, @Nullable SizeConfigurationBuckets sizeBuckets, int handledConfigChanges, boolean alwaysReportChange) { - // Always report changes in window configuration bounds - if (shouldUpdateWindowMetricsBounds(currentConfig, newConfig)) { - return true; - } - final int publicDiff = currentConfig.diffPublicOnly(newConfig); // Don't report the change if there's no public diff between current and new config. if (publicDiff == 0) { diff --git a/core/java/android/window/ConfigurationHelper.java b/core/java/android/window/ConfigurationHelper.java index 269ce083d2059..e32adcf23a3b8 100644 --- a/core/java/android/window/ConfigurationHelper.java +++ b/core/java/android/window/ConfigurationHelper.java @@ -106,7 +106,7 @@ public class ConfigurationHelper { * @see WindowManager#getCurrentWindowMetrics() * @see WindowManager#getMaximumWindowMetrics() */ - public static boolean shouldUpdateWindowMetricsBounds(@NonNull Configuration currentConfig, + private static boolean shouldUpdateWindowMetricsBounds(@NonNull Configuration currentConfig, @NonNull Configuration newConfig) { final Rect currentBounds = currentConfig.windowConfiguration.getBounds(); final Rect newBounds = newConfig.windowConfiguration.getBounds(); diff --git a/core/tests/coretests/src/android/app/activity/ActivityThreadTest.java b/core/tests/coretests/src/android/app/activity/ActivityThreadTest.java index 48577416b3d06..f9a714841d328 100644 --- a/core/tests/coretests/src/android/app/activity/ActivityThreadTest.java +++ b/core/tests/coretests/src/android/app/activity/ActivityThreadTest.java @@ -451,8 +451,10 @@ public class ActivityThreadTest { final Rect bounds = activity.getWindowManager().getCurrentWindowMetrics().getBounds(); assertEquals(activityConfigPortrait.windowConfiguration.getBounds(), bounds); - // Ensure changes in window configuration bounds are reported - assertEquals(numOfConfig + 1, activity.mNumOfConfigChanges); + // Ensure that Activity#onConfigurationChanged() not be called because the changes in + // WindowConfiguration shouldn't be reported, and we only apply the latest Configuration + // update in transaction. + assertEquals(numOfConfig, activity.mNumOfConfigChanges); } @Test