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

Commit ef53fcc3 authored by Dianne Hackborn's avatar Dianne Hackborn Committed by Android (Google) Code Review
Browse files

Merge "Fix issue #11199654: Action bar enter animation skips frames when...

Merge "Fix issue #11199654: Action bar enter animation skips frames when cleared by the system" into klp-dev
parents 103a734b 021d243d
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -1408,9 +1408,9 @@ public final class ViewRootImpl implements ViewParent,

                final int surfaceGenerationId = mSurface.getGenerationId();
                relayoutResult = relayoutWindow(params, viewVisibility, insetsPending);
                if (!mDrawDuringWindowsAnimating) {
                    mWindowsAnimating |=
                            (relayoutResult & WindowManagerGlobal.RELAYOUT_RES_ANIMATING) != 0;
                if (!mDrawDuringWindowsAnimating &&
                        (relayoutResult & WindowManagerGlobal.RELAYOUT_RES_ANIMATING) != 0) {
                    mWindowsAnimating = true;
                }

                if (DEBUG_LAYOUT) Log.v(TAG, "relayout: frame=" + frame.toShortString()
@@ -3798,6 +3798,9 @@ public final class ViewRootImpl implements ViewParent,
            if (q.mEvent instanceof KeyEvent) {
                return processKeyEvent(q);
            } else {
                // If delivering a new non-key event, make sure the window is
                // now allowed to start updating.
                handleDispatchDoneAnimating();
                final int source = q.mEvent.getSource();
                if ((source & InputDevice.SOURCE_CLASS_POINTER) != 0) {
                    return processPointerEvent(q);
@@ -3812,6 +3815,12 @@ public final class ViewRootImpl implements ViewParent,
        private int processKeyEvent(QueuedInputEvent q) {
            final KeyEvent event = (KeyEvent)q.mEvent;

            if (event.getAction() != KeyEvent.ACTION_UP) {
                // If delivering a new key event, make sure the window is
                // now allowed to start updating.
                handleDispatchDoneAnimating();
            }

            // Deliver the key to the view hierarchy.
            if (mView.dispatchKeyEvent(event)) {
                return FINISH_HANDLED;
+1 −1
Original line number Diff line number Diff line
@@ -3014,7 +3014,7 @@ public class WindowManagerService extends IWindowManager.Stub
                TAG, "Relayout of " + win + ": focusMayChange=" + focusMayChange);

            inTouchMode = mInTouchMode;
            animating = mAnimator.mAnimating;
            animating = mAnimator.mAnimating && win.mWinAnimator.isAnimating();
            if (animating && !mRelayoutWhileAnimating.contains(win)) {
                mRelayoutWhileAnimating.add(win);
            }