summaryrefslogtreecommitdiff
path: root/core/java/android/view/ViewRootImpl.java
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2013-05-08 15:05:18 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-05-08 15:05:18 -0700
commit82f92ee5bddbb03f4efe348288150d133ab52e87 (patch)
tree9bed98ac84895e587e2ba1da7cbd17328d04df40 /core/java/android/view/ViewRootImpl.java
parent2a31741eecfed7d6412d0a8018c5a5ec679c4cd2 (diff)
parent7741b63c5a8e14b5123c4b735dc768cf55fa2ed5 (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.java17
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;