diff options
| author | Michael Jurka <mikejurka@google.com> | 2013-05-08 15:05:18 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2013-05-08 15:05:18 -0700 |
| commit | 82f92ee5bddbb03f4efe348288150d133ab52e87 (patch) | |
| tree | 9bed98ac84895e587e2ba1da7cbd17328d04df40 /core/java/android/view/ViewRootImpl.java | |
| parent | 2a31741eecfed7d6412d0a8018c5a5ec679c4cd2 (diff) | |
| parent | 7741b63c5a8e14b5123c4b735dc768cf55fa2ed5 (diff) | |
am 7741b63c: am 6dee0a0f: Merge "Fix bug where thumbnails flashed more often in Recents" into jb-mr2-dev
* commit '7741b63c5a8e14b5123c4b735dc768cf55fa2ed5':
Fix bug where thumbnails flashed more often in Recents
Diffstat (limited to 'core/java/android/view/ViewRootImpl.java')
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 29530399f3bd..fc005d169ef9 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -205,6 +205,7 @@ public final class ViewRootImpl implements ViewParent, boolean mHasHadWindowFocus; boolean mLastWasImTarget; boolean mWindowsAnimating; + boolean mDrawDuringWindowsAnimating; boolean mIsDrawing; int mLastSystemUiVisibility; int mClientWindowLayoutFlags; @@ -1358,8 +1359,10 @@ public final class ViewRootImpl implements ViewParent, final int surfaceGenerationId = mSurface.getGenerationId(); relayoutResult = relayoutWindow(params, viewVisibility, insetsPending); - mWindowsAnimating |= - (relayoutResult & WindowManagerGlobal.RELAYOUT_RES_ANIMATING) != 0; + if (!mDrawDuringWindowsAnimating) { + mWindowsAnimating |= + (relayoutResult & WindowManagerGlobal.RELAYOUT_RES_ANIMATING) != 0; + } if (DEBUG_LAYOUT) Log.v(TAG, "relayout: frame=" + frame.toShortString() + " overscan=" + mPendingOverscanInsets.toShortString() @@ -2534,6 +2537,16 @@ public final class ViewRootImpl implements ViewParent, displayLists.clear(); } + /** + * @hide + */ + public void setDrawDuringWindowsAnimating(boolean value) { + mDrawDuringWindowsAnimating = value; + if (value) { + handleDispatchDoneAnimating(); + } + } + boolean scrollToRectOrFocus(Rect rectangle, boolean immediate) { final View.AttachInfo attachInfo = mAttachInfo; final Rect ci = attachInfo.mContentInsets; |
