OSDN Git Service

Fix Battery Fix slice can not displayed
authorRaff Tsai <rafftsai@google.com>
Tue, 30 Apr 2019 07:13:12 +0000 (15:13 +0800)
committerRaff Tsai <rafftsai@google.com>
Tue, 30 Apr 2019 07:13:12 +0000 (15:13 +0800)
Fixes: 123174237
Test: manual
Change-Id: I3b349a27be5ecffbc64aaccb709c443f6ada875b

src/com/android/settings/homepage/contextualcards/slices/BatteryFixSlice.java

index 761755c..d1051fe 100644 (file)
@@ -30,6 +30,7 @@ import android.graphics.PorterDuffColorFilter;
 import android.graphics.drawable.Drawable;
 import android.net.Uri;
 import android.util.ArrayMap;
+import android.view.View;
 
 import androidx.annotation.VisibleForTesting;
 import androidx.annotation.WorkerThread;
@@ -112,9 +113,12 @@ public class BatteryFixSlice implements CustomSliceable {
                 continue;
             }
             final Drawable drawable = mContext.getDrawable(batteryTip.getIconId());
-            drawable.setColorFilter(new PorterDuffColorFilter(
-                    mContext.getResources().getColor(batteryTip.getIconTintColorId()),
-                    PorterDuff.Mode.SRC_IN));
+            final int iconTintColorId = batteryTip.getIconTintColorId();
+            if (iconTintColorId != View.NO_ID) {
+                drawable.setColorFilter(new PorterDuffColorFilter(
+                        mContext.getResources().getColor(iconTintColorId),
+                        PorterDuff.Mode.SRC_IN));
+            }
 
             final IconCompat icon = Utils.createIconWithDrawable(drawable);
             final SliceAction primaryAction = SliceAction.createDeeplink(getPrimaryAction(),