resolved conflicts for merge of 1162fd77 to eclair-mr2
diff --git a/core/java/android/widget/ViewAnimator.java b/core/java/android/widget/ViewAnimator.java
index fa8935e3..4112501 100644
--- a/core/java/android/widget/ViewAnimator.java
+++ b/core/java/android/widget/ViewAnimator.java
@@ -43,7 +43,7 @@
 
     public ViewAnimator(Context context) {
         super(context);
-        initViewAnimator();
+        initViewAnimator(context, null);
     }
 
     public ViewAnimator(Context context, AttributeSet attrs) {
@@ -61,11 +61,28 @@
         }
         a.recycle();
 
-        initViewAnimator();
+        initViewAnimator(context, attrs);
     }
 
-    private void initViewAnimator() {
-        mMeasureAllChildren = true;
+    /**
+     * Initialize this {@link ViewAnimator}, possibly setting
+     * {@link #setMeasureAllChildren(boolean)} based on {@link FrameLayout} flags.
+     */
+    private void initViewAnimator(Context context, AttributeSet attrs) {
+        if (attrs == null) {
+            // For compatibility, always measure children when undefined.
+            mMeasureAllChildren = true;
+            return;
+        }
+
+        // For compatibility, default to measure children, but allow XML
+        // attribute to override.
+        final TypedArray a = context.obtainStyledAttributes(attrs,
+                com.android.internal.R.styleable.FrameLayout);
+        final boolean measureAllChildren = a.getBoolean(
+                com.android.internal.R.styleable.FrameLayout_measureAllChildren, true);
+        setMeasureAllChildren(measureAllChildren);
+        a.recycle();
     }
     
     /**
diff --git a/core/java/android/widget/ViewFlipper.java b/core/java/android/widget/ViewFlipper.java
index 2dd79b2..aee25b0 100644
--- a/core/java/android/widget/ViewFlipper.java
+++ b/core/java/android/widget/ViewFlipper.java
@@ -24,6 +24,7 @@
 import android.os.Handler;
 import android.os.Message;
 import android.util.AttributeSet;
+import android.util.Log;
 import android.widget.RemoteViews.RemoteView;
 
 /**
@@ -36,6 +37,9 @@
  */
 @RemoteView
 public class ViewFlipper extends ViewAnimator {
+    private static final String TAG = "ViewFlipper";
+    private static final boolean LOGD = true;
+
     private static final int DEFAULT_INTERVAL = 3000;
 
     private int mFlipInterval = DEFAULT_INTERVAL;
@@ -151,6 +155,10 @@
             }
             mRunning = running;
         }
+        if (LOGD) {
+            Log.d(TAG, "updateRunning() mVisible=" + mVisible + ", mStarted=" + mStarted
+                    + ", mUserPresent=" + mUserPresent + ", mRunning=" + mRunning);
+        }
     }
 
     /**