diff options
author | Danesh M <daneshm90@gmail.com> | 2015-02-27 14:05:16 -0800 |
---|---|---|
committer | Danesh M <daneshm90@gmail.com> | 2015-02-27 23:19:44 +0000 |
commit | 5931038c71a562e0f446666a90e6d44c96ba818c (patch) | |
tree | db1ef98308cc5748c6ecd77e53a5ddaaad3d867a | |
parent | cd7190d40976cc891511f8d05563d451f495681e (diff) | |
download | android_frameworks_base-stable/cm-12.0-YNG1I.tar.gz android_frameworks_base-stable/cm-12.0-YNG1I.tar.bz2 android_frameworks_base-stable/cm-12.0-YNG1I.zip |
ScreenOrientationTile : Add instanceof checks for AnimatedVectorDrawablesstable/cm-12.0-YNG1I
Change-Id: I5937805e5731055b55123c4974341ebc1d486920
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/qs/tiles/ScreenTimeoutTile.java | 35 |
1 files changed, 20 insertions, 15 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/ScreenTimeoutTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/ScreenTimeoutTile.java index 8e87ac10b2f..c16e7dd38b2 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/ScreenTimeoutTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/ScreenTimeoutTile.java @@ -22,6 +22,7 @@ import android.content.pm.PackageManager; import android.content.res.Resources; import android.database.ContentObserver; import android.graphics.drawable.AnimatedVectorDrawable; +import android.graphics.drawable.Drawable; import android.net.Uri; import android.provider.Settings; import android.view.View; @@ -43,8 +44,8 @@ public class ScreenTimeoutTile extends QSTile<ScreenTimeoutTile.TimeoutState> { private static final String SETTINGS_PACKAGE_NAME = "com.android.settings"; private String[] mEntries, mValues; private boolean mShowingDetail; - ArrayList<AnimatedVectorDrawable> mAnimationList - = new ArrayList<AnimatedVectorDrawable>(); + ArrayList<Drawable> mAnimationList + = new ArrayList<Drawable>(); public ScreenTimeoutTile(Host host) { super(host); @@ -223,13 +224,15 @@ public class ScreenTimeoutTile extends QSTile<ScreenTimeoutTile.TimeoutState> { } if (state.icon == null || previousBucket != nextBucket) { - final AnimatedVectorDrawable d = (AnimatedVectorDrawable) resources.getDrawable(drawableId); - mUiHandler.post(new Runnable() { - @Override - public void run() { - d.start(); - } - }); + final Drawable d = resources.getDrawable(drawableId); + if (d instanceof AnimatedVectorDrawable) { + mUiHandler.post(new Runnable() { + @Override + public void run() { + ((AnimatedVectorDrawable) d).start(); + } + }); + } state.icon = d; } @@ -244,12 +247,14 @@ public class ScreenTimeoutTile extends QSTile<ScreenTimeoutTile.TimeoutState> { return; } state.icon = mAnimationList.remove(0); - mUiHandler.post(new Runnable() { - @Override - public void run() { - ((AnimatedVectorDrawable) state.icon).start(); - } - }); + if (state.icon instanceof AnimatedVectorDrawable) { + mUiHandler.post(new Runnable() { + @Override + public void run() { + ((AnimatedVectorDrawable) state.icon).start(); + } + }); + } } private class RadioAdapter extends ArrayAdapter<String> { |