OSDN Git Service

Prevent ProgressBar from slowing down everything.
authorRomain Guy <romainguy@google.com>
Fri, 4 Feb 2011 02:03:29 +0000 (18:03 -0800)
committerRomain Guy <romainguy@google.com>
Fri, 4 Feb 2011 02:03:29 +0000 (18:03 -0800)
bug #3422568

Change-Id: I70b322e140a8fdbe504c6984c54a22bcb7b753e7

core/java/android/view/ViewGroup.java

index 6981b9c..26f8627 100644 (file)
@@ -2224,10 +2224,12 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
         final View[] children = mChildren;
         for (int i = 0; i < count; i++) {
             final View child = children[i];
-            child.mRecreateDisplayList = (child.mPrivateFlags & INVALIDATED) == INVALIDATED;
-            child.mPrivateFlags &= ~INVALIDATED;
-            child.getDisplayList();
-            child.mRecreateDisplayList = false;
+            if ((child.mViewFlags & VISIBILITY_MASK) == VISIBLE || child.getAnimation() != null) {
+                child.mRecreateDisplayList = (child.mPrivateFlags & INVALIDATED) == INVALIDATED;
+                child.mPrivateFlags &= ~INVALIDATED;
+                child.getDisplayList();
+                child.mRecreateDisplayList = false;
+            }
         }
     }