summaryrefslogtreecommitdiff
path: root/core/java/android/widget/CompoundButton.java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/widget/CompoundButton.java')
-rw-r--r--core/java/android/widget/CompoundButton.java13
1 files changed, 5 insertions, 8 deletions
diff --git a/core/java/android/widget/CompoundButton.java b/core/java/android/widget/CompoundButton.java
index 602e1ab069dd..b19fe17054d7 100644
--- a/core/java/android/widget/CompoundButton.java
+++ b/core/java/android/widget/CompoundButton.java
@@ -456,14 +456,11 @@ public abstract class CompoundButton extends Button implements Checkable {
@Override
protected void drawableStateChanged() {
super.drawableStateChanged();
-
- if (mButtonDrawable != null) {
- int[] myDrawableState = getDrawableState();
-
- // Set the state of the Drawable
- mButtonDrawable.setState(myDrawableState);
-
- invalidate();
+
+ final Drawable buttonDrawable = mButtonDrawable;
+ if (buttonDrawable != null && buttonDrawable.isStateful()
+ && buttonDrawable.setState(getDrawableState())) {
+ invalidateDrawable(buttonDrawable);
}
}