Bug 1312114 - Support VectorDrawable's in ResourceDrawableUtils r=sebastian draft
authorAndrzej Hunt <ahunt@mozilla.com>
Thu, 03 Nov 2016 11:47:38 +0100
changeset 433295 320700cc1c6d0a075f80026d4296f7248861aaf5
parent 433284 7f97964f2944c8062ccbcc2439b001a966a287ee
child 433296 1ef542376460e0f532145d7eed668db1c879e449
push id34532
push userahunt@mozilla.com
push dateThu, 03 Nov 2016 10:57:55 +0000
reviewerssebastian
bugs1312114
milestone52.0a1
Bug 1312114 - Support VectorDrawable's in ResourceDrawableUtils r=sebastian MozReview-Commit-ID: 26jCSWUpiRU
mobile/android/base/java/org/mozilla/gecko/util/DrawableUtil.java
mobile/android/base/java/org/mozilla/gecko/util/ResourceDrawableUtils.java
--- a/mobile/android/base/java/org/mozilla/gecko/util/DrawableUtil.java
+++ b/mobile/android/base/java/org/mozilla/gecko/util/DrawableUtil.java
@@ -11,30 +11,31 @@ import android.graphics.Color;
 import android.graphics.drawable.Drawable;
 import android.support.annotation.CheckResult;
 import android.support.annotation.ColorInt;
 import android.support.annotation.ColorRes;
 import android.support.annotation.DrawableRes;
 import android.support.annotation.NonNull;
 import android.support.v4.content.ContextCompat;
 import android.support.v4.graphics.drawable.DrawableCompat;
+import android.support.v7.widget.AppCompatDrawableManager;
 
 import org.mozilla.gecko.AppConstants;
 
 public class DrawableUtil {
 
     /**
      * Tints the given drawable with the given color and returns it.
      */
     @CheckResult
     public static Drawable tintDrawable(@NonNull final Context context,
                                         @DrawableRes final int drawableID,
                                         @ColorInt final int color) {
         final Drawable icon = DrawableCompat.wrap(
-                ContextCompat.getDrawable(context, drawableID).mutate());
+                AppCompatDrawableManager.get().getDrawable(context, drawableID).mutate());
         DrawableCompat.setTint(icon, color);
         return icon;
     }
 
     /**
      * Tints the given drawable with the given color and returns it.
      */
     @CheckResult
--- a/mobile/android/base/java/org/mozilla/gecko/util/ResourceDrawableUtils.java
+++ b/mobile/android/base/java/org/mozilla/gecko/util/ResourceDrawableUtils.java
@@ -110,17 +110,17 @@ public class ResourceDrawableUtils {
             } catch (Exception ex) { }
 
             return;
         }
 
         if (data.startsWith("drawable://")) {
             final Uri imageUri = Uri.parse(data);
             final int id = getResource(context, imageUri);
-            final Drawable d = context.getResources().getDrawable(id);
+            final Drawable d = AppCompatDrawableManager.get().getDrawable(context, id);
 
             runOnBitmapFoundOnUiThread(loader, d);
             return;
         }
 
         runOnBitmapFoundOnUiThread(loader, null);
     }