Loading services/core/java/com/android/server/wm/WindowState.java +4 −5 Original line number Diff line number Diff line Loading @@ -4106,11 +4106,10 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP mDestroying = true; final boolean hasSurface = mWinAnimator.hasSurface(); if (hasSurface) { // Use pendingTransaction here so hide is done the same transaction as the other // animations when exiting mWinAnimator.hide(getPendingTransaction(), "onExitAnimationDone"); } // If we have an app token, we ask it to destroy the surface for us, so that it can take // care to ensure the activity has actually stopped and the surface is not still in use. Loading services/core/java/com/android/server/wm/WindowStateAnimator.java +6 −0 Original line number Diff line number Diff line Loading @@ -308,6 +308,12 @@ class WindowStateAnimator { if (!mLastHidden) { //dump(); mLastHidden = true; // We may have a preserved surface which we no longer need. If there was a quick // VISIBLE, GONE, VISIBLE, GONE sequence, the surface may never draw, so we don't mark // it to be destroyed in prepareSurfaceLocked. markPreservedSurfaceForDestroy(); if (mSurfaceController != null) { mSurfaceController.hide(transaction, reason); } Loading Loading
services/core/java/com/android/server/wm/WindowState.java +4 −5 Original line number Diff line number Diff line Loading @@ -4106,11 +4106,10 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP mDestroying = true; final boolean hasSurface = mWinAnimator.hasSurface(); if (hasSurface) { // Use pendingTransaction here so hide is done the same transaction as the other // animations when exiting mWinAnimator.hide(getPendingTransaction(), "onExitAnimationDone"); } // If we have an app token, we ask it to destroy the surface for us, so that it can take // care to ensure the activity has actually stopped and the surface is not still in use. Loading
services/core/java/com/android/server/wm/WindowStateAnimator.java +6 −0 Original line number Diff line number Diff line Loading @@ -308,6 +308,12 @@ class WindowStateAnimator { if (!mLastHidden) { //dump(); mLastHidden = true; // We may have a preserved surface which we no longer need. If there was a quick // VISIBLE, GONE, VISIBLE, GONE sequence, the surface may never draw, so we don't mark // it to be destroyed in prepareSurfaceLocked. markPreservedSurfaceForDestroy(); if (mSurfaceController != null) { mSurfaceController.hide(transaction, reason); } Loading