Fix display List bugs

Various property setters in View need to invalidate the parent's
cache to get redrawn properly when accelerated with display lists.

Also, fix logic around display lists and old-style Animations in
ViewGroup.

Change-Id: I70e1c2fa49e62228ee4a1301a006ce50bda4c305
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 2e6664b..e2c346f 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -2937,13 +2937,6 @@
     }
 
     /**
-     * Gets the current list of listeners for layout changes.
-     */
-    public List<OnLayoutChangeListener> getOnLayoutChangeListeners() {
-        return mOnLayoutChangeListeners;
-    }
-
-    /**
      * Returns the focus-change callback registered for this view.
      *
      * @return The callback, or null if one is not registered.
@@ -6011,6 +6004,7 @@
                 invalidate(true);
             }
             mBackgroundSizeChanged = true;
+            invalidateParentIfNeeded();
         }
     }
 
@@ -6077,6 +6071,7 @@
                 invalidate(true);
             }
             mBackgroundSizeChanged = true;
+            invalidateParentIfNeeded();
         }
     }
 
@@ -6137,6 +6132,7 @@
                 invalidate(true);
             }
             mBackgroundSizeChanged = true;
+            invalidateParentIfNeeded();
         }
     }
 
@@ -6194,6 +6190,7 @@
                 invalidate(true);
             }
             mBackgroundSizeChanged = true;
+            invalidateParentIfNeeded();
         }
     }
 
@@ -6438,6 +6435,7 @@
                 mPrivateFlags |= DRAWN; // force another invalidation with the new orientation
                 invalidate(false);
             }
+            invalidateParentIfNeeded();
         }
     }
 
@@ -6476,6 +6474,7 @@
                 mPrivateFlags |= DRAWN; // force another invalidation with the new orientation
                 invalidate(false);
             }
+            invalidateParentIfNeeded();
         }
     }