diff options
| author | 2018-05-18 21:48:54 +0000 | |
|---|---|---|
| committer | 2018-05-18 21:48:54 +0000 | |
| commit | 9335f1e3637af9c2b146ab1ff2cf60349d538e0d (patch) | |
| tree | 181b7d99c1cf8c841e3f7ad43d48aeae4259c787 | |
| parent | fedf04f3dfc1195d98bb928d30b47ac07b7f3a29 (diff) | |
| parent | a8531a054aca594b3e0a0a3263d82601573c3332 (diff) | |
Merge changes I281c748a,Ia5b68d59 into pi-dev
* changes:
Remove preserve surface block when detaching children.
Reparent children when hiding preserved surface.
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowState.java | 8 | ||||
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowStateAnimator.java | 1 |
2 files changed, 1 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 4e12daf7348c..dac85b345624 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -4415,14 +4415,6 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP result |= (!wasVisible || !isDrawnLw()) ? RELAYOUT_RES_FIRST_TIME : 0; - if (mWinAnimator.mChildrenDetached) { - // If there are detached children hanging around we need to force - // the client receiving a new Surface. - mWinAnimator.preserveSurfaceLocked(); - result |= RELAYOUT_RES_SURFACE_CHANGED - | RELAYOUT_RES_FIRST_TIME; - } - if (mAnimatingExit) { Slog.d(TAG, "relayoutVisibleWindow: " + this + " mAnimatingExit=true, mRemoveOnExit=" + mRemoveOnExit + ", mDestroying=" + mDestroying); diff --git a/services/core/java/com/android/server/wm/WindowStateAnimator.java b/services/core/java/com/android/server/wm/WindowStateAnimator.java index c44a5820e92c..3eef12540e7f 100644 --- a/services/core/java/com/android/server/wm/WindowStateAnimator.java +++ b/services/core/java/com/android/server/wm/WindowStateAnimator.java @@ -1298,6 +1298,7 @@ class WindowStateAnimator { // if we are transparent. if (mPendingDestroySurface != null && mDestroyPreservedSurfaceUponRedraw) { mPendingDestroySurface.mSurfaceControl.hide(); + mPendingDestroySurface.reparentChildrenInTransaction(mSurfaceController); } return true; |