Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c38879e4 authored by Android Build Merger (Role)'s avatar Android Build Merger (Role) Committed by Android (Google) Code Review
Browse files

Merge "Merge "Make sure preserved surface is removed when it\'s no longer...

Merge "Merge "Make sure preserved surface is removed when it\'s no longer needed" into nyc-dev am: 0a872f0b am: 5c99f3a4" into nyc-mr1-dev-plus-aosp
parents 47eefda3 44b00555
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -329,11 +329,14 @@ class AppWindowToken extends WindowToken {
        final DisplayContentList displayList = new DisplayContentList();
        for (int i = allWindows.size() - 1; i >= 0; i--) {
            final WindowState win = allWindows.get(i);
            if (!win.mDestroying) {

            if (!(mAppStopped || win.mWindowRemovalAllowed)) {
                continue;
            }

            if (!(mAppStopped || win.mWindowRemovalAllowed)) {
            win.mWinAnimator.destroyPreservedSurfaceLocked();

            if (!win.mDestroying) {
                continue;
            }

+8 −3
Original line number Diff line number Diff line
@@ -659,6 +659,13 @@ class WindowStateAnimator {
        mDestroyPreservedSurfaceUponRedraw = false;
    }

    void markPreservedSurfaceForDestroy() {
        if (mDestroyPreservedSurfaceUponRedraw
                && !mService.mDestroyPreservedSurface.contains(mWin)) {
            mService.mDestroyPreservedSurface.add(mWin);
        }
    }

    WindowSurfaceController createSurfaceLocked() {
        final WindowState w = mWin;
        if (w.hasSavedSurface()) {
@@ -1518,9 +1525,7 @@ class WindowStateAnimator {

            if (prepared && mLastHidden && mDrawState == HAS_DRAWN) {
                if (showSurfaceRobustlyLocked()) {
                    if (mDestroyPreservedSurfaceUponRedraw) {
                        mService.mDestroyPreservedSurface.add(mWin);
                    }
                    markPreservedSurfaceForDestroy();
                    mAnimator.requestRemovalOfReplacedWindows(w);
                    mLastHidden = false;
                    if (mIsWallpaper) {