summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Riddle Hsu <riddlehsu@google.com> 2024-05-02 07:28:10 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-05-02 07:28:10 +0000
commita8f99519ab3fec77352f506c62c057e480ae90af (patch)
tree25b56e4eaad74258f9a3b854196ca28b3ed8917e
parent1bed4824d1b312d901469c2112df36fc776dc7c9 (diff)
parent11452bf78cb3e919088ee1d97aa9fd8602911f0d (diff)
Merge "Reduce duplicated invocation of sendNewConfiguration" into main
-rw-r--r--services/core/java/com/android/server/wm/DisplayContent.java11
-rw-r--r--services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java1
2 files changed, 5 insertions, 7 deletions
diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java
index da2999810a10..2f37e8813365 100644
--- a/services/core/java/com/android/server/wm/DisplayContent.java
+++ b/services/core/java/com/android/server/wm/DisplayContent.java
@@ -2030,12 +2030,11 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp
}
// Update directly because the app which will change the orientation of display is ready.
if (mDisplayRotation.updateOrientation(getOrientation(), false /* forceUpdate */)) {
- // Run rotation change on display thread. See Transition#shouldApplyOnDisplayThread().
- mWmService.mH.post(() -> {
- synchronized (mWmService.mGlobalLock) {
- sendNewConfiguration();
- }
- });
+ // If a transition is collecting, let the transition apply the rotation change on
+ // display thread. See Transition#shouldApplyOnDisplayThread().
+ if (!mTransitionController.isCollecting(this)) {
+ sendNewConfiguration();
+ }
return;
}
if (mRemoteDisplayChangeController.isWaitingForRemoteDisplayChange()) {
diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
index 7356b4376e8a..2c88ed2db2d6 100644
--- a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
@@ -1717,7 +1717,6 @@ public class DisplayContentTests extends WindowTestsBase {
// The display should be rotated after the launch is finished.
doReturn(false).when(app).isAnimating(anyInt(), anyInt());
mDisplayContent.mAppTransition.notifyAppTransitionFinishedLocked(app.token);
- waitHandlerIdle(mWm.mH);
mStatusBarWindow.finishSeamlessRotation(t);
mNavBarWindow.finishSeamlessRotation(t);