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

Commit 6a6977e8 authored by Chet Haase's avatar Chet Haase Committed by Android (Google) Code Review
Browse files

Merge "Fix 5266335: bad DIRTY/invalidation logic"

parents 8a48a2b9 f186f30a
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -8193,6 +8193,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal
                (mPrivateFlags & INVALIDATED) != INVALIDATED) {
            mPrivateFlags &= ~DRAWING_CACHE_VALID;
            mPrivateFlags |= INVALIDATED;
            mPrivateFlags |= DIRTY;
            final ViewParent p = mParent;
            final AttachInfo ai = mAttachInfo;
            //noinspection PointlessBooleanExpression,ConstantConditions
@@ -8239,6 +8240,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal
                (mPrivateFlags & INVALIDATED) != INVALIDATED) {
            mPrivateFlags &= ~DRAWING_CACHE_VALID;
            mPrivateFlags |= INVALIDATED;
            mPrivateFlags |= DIRTY;
            final ViewParent p = mParent;
            final AttachInfo ai = mAttachInfo;
            //noinspection PointlessBooleanExpression,ConstantConditions
@@ -8294,6 +8296,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal
                (mPrivateFlags & INVALIDATED) != INVALIDATED || isOpaque() != mLastIsOpaque) {
            mLastIsOpaque = isOpaque();
            mPrivateFlags &= ~DRAWN;
            mPrivateFlags |= DIRTY;
            if (invalidateCache) {
                mPrivateFlags |= INVALIDATED;
                mPrivateFlags &= ~DRAWING_CACHE_VALID;
@@ -8334,6 +8337,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal
                ((View) mParent).mPrivateFlags |= INVALIDATED;
            }
            mPrivateFlags &= ~DRAWN;
            mPrivateFlags |= DIRTY;
            mPrivateFlags |= INVALIDATED;
            mPrivateFlags &= ~DRAWING_CACHE_VALID;
            if (mParent != null && mAttachInfo != null) {