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

Commit 40190375 authored by Craig Mautner's avatar Craig Mautner Committed by Android Git Automerger
Browse files

am 6fe2184b: Do not treat the dummy animation as an animation

* commit '6fe2184b':
  Do not treat the dummy animation as an animation
parents 122ee7e8 6fe2184b
Loading
Loading
Loading
Loading
+16 −2
Original line number Diff line number Diff line
@@ -154,7 +154,8 @@ public class TaskStack {
            for (int activityNdx = activities.size() - 1; activityNdx >= 0; --activityNdx) {
                final ArrayList<WindowState> windows = activities.get(activityNdx).allAppWindows;
                for (int winNdx = windows.size() - 1; winNdx >= 0; --winNdx) {
                    if (windows.get(winNdx).mWinAnimator.isAnimating()) {
                    final WindowStateAnimator winAnimator = windows.get(winNdx).mWinAnimator;
                    if (winAnimator.isAnimating() && !winAnimator.isDummyAnimation()) {
                        return true;
                    }
                }
@@ -236,9 +237,22 @@ public class TaskStack {

    void detachDisplay() {
        EventLog.writeEvent(EventLogTags.WM_STACK_REMOVED, mStackId);

        boolean doAnotherLayoutPass = false;
        for (int taskNdx = mTasks.size() - 1; taskNdx >= 0; --taskNdx) {
            mService.tmpRemoveTaskWindowsLocked(mTasks.get(taskNdx));
            final AppTokenList appWindowTokens = mTasks.get(taskNdx).mAppTokens;
            for (int appNdx = appWindowTokens.size() - 1; appNdx >= 0; --appNdx) {
                final WindowList appWindows = appWindowTokens.get(appNdx).allAppWindows;
                for (int winNdx = appWindows.size() - 1; winNdx >= 0; --winNdx) {
                    mService.removeWindowInnerLocked(null, appWindows.get(winNdx));
                    doAnotherLayoutPass = true;
                }
            }
        }
        if (doAnotherLayoutPass) {
            mService.requestTraversalLocked();
        }

        mAnimationBackgroundSurface.destroySurface();
        mAnimationBackgroundSurface = null;
        mDimLayer.destroySurface();
+1 −1
Original line number Diff line number Diff line
@@ -2488,7 +2488,7 @@ public class WindowManagerService extends IWindowManager.Stub
        Binder.restoreCallingIdentity(origId);
    }

    private void removeWindowInnerLocked(Session session, WindowState win) {
    void removeWindowInnerLocked(Session session, WindowState win) {
        if (win.mRemoved) {
            // Nothing to do.
            return;