summaryrefslogtreecommitdiff
path: root/core/java/android/widget/ImageView.java
diff options
context:
space:
mode:
authorAlan Viverette <alanv@google.com>2015-09-04 10:10:42 -0400
committerAlan Viverette <alanv@google.com>2015-09-04 10:10:42 -0400
commitad0020f8075ecf768cb610d60dbb167d41f0fbe5 (patch)
treeb09784bf0b41d3a09a581d9f70333955622ea693 /core/java/android/widget/ImageView.java
parent3916e7e757c8d157ee736a86b25c41a0a74015f6 (diff)
Invalidate when Drawable.setState() returns true
Ensures views that manage drawables follow the contract set forth in the Drawable.setState() documentation. Bug: 23792020 Change-Id: I4e5a449cd6535487873fd8443da50555c38e8ed9
Diffstat (limited to 'core/java/android/widget/ImageView.java')
-rw-r--r--core/java/android/widget/ImageView.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/core/java/android/widget/ImageView.java b/core/java/android/widget/ImageView.java
index b53af0c7342a..245c7332aba3 100644
--- a/core/java/android/widget/ImageView.java
+++ b/core/java/android/widget/ImageView.java
@@ -1165,9 +1165,10 @@ public class ImageView extends View {
protected void drawableStateChanged() {
super.drawableStateChanged();
- final Drawable d = mDrawable;
- if (d != null && d.isStateful()) {
- d.setState(getDrawableState());
+ final Drawable drawable = mDrawable;
+ if (drawable != null && drawable.isStateful()
+ && drawable.setState(getDrawableState())) {
+ invalidateDrawable(drawable);
}
}