Merge "Do not set report-orientation-changed for window without surface" into tm-dev

This commit is contained in:
Riddle Hsu
2022-04-07 08:47:27 +00:00
committed by Android (Google) Code Review
2 changed files with 6 additions and 1 deletions

View File

@@ -1992,7 +1992,8 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp
scheduleAnimation();
forAllWindows(w -> {
if (w.mHasSurface && !rotateSeamlessly) {
if (!w.mHasSurface) return;
if (!rotateSeamlessly) {
ProtoLog.v(WM_DEBUG_ORIENTATION, "Set mOrientationChanging of %s", w);
w.setOrientationChanging(true);
}

View File

@@ -3609,6 +3609,10 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP
mAnimatingExit = false;
ProtoLog.d(WM_DEBUG_ANIM, "Clear animatingExit: reason=destroySurface win=%s", this);
// Clear the flag so the buffer requested for the next new surface won't be dropped by
// mistaking the surface size needs to update.
mReportOrientationChanged = false;
if (useBLASTSync()) {
immediatelyNotifyBlastSync();
}