summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--graphics/java/android/graphics/Paint.java22
1 files changed, 13 insertions, 9 deletions
diff --git a/graphics/java/android/graphics/Paint.java b/graphics/java/android/graphics/Paint.java
index 2c166c32ba50..9bf4d65e1865 100644
--- a/graphics/java/android/graphics/Paint.java
+++ b/graphics/java/android/graphics/Paint.java
@@ -836,11 +836,13 @@ public class Paint {
mNativeColorFilter = newNativeColorFilter;
nSetColorFilter(mNativePaint, mNativeColorFilter);
}
- if (mXfermode instanceof RuntimeXfermode) {
- long newNativeXfermode = ((RuntimeXfermode) mXfermode).createNativeInstance();
- if (newNativeXfermode != mNativeXfermode) {
- mNativeXfermode = newNativeXfermode;
- nSetXfermode(mNativePaint, mNativeXfermode);
+ if (com.android.graphics.hwui.flags.Flags.runtimeColorFiltersBlenders()) {
+ if (mXfermode instanceof RuntimeXfermode) {
+ long newNativeXfermode = ((RuntimeXfermode) mXfermode).createNativeInstance();
+ if (newNativeXfermode != mNativeXfermode) {
+ mNativeXfermode = newNativeXfermode;
+ nSetXfermode(mNativePaint, mNativeXfermode);
+ }
}
}
return mNativePaint;
@@ -1470,10 +1472,12 @@ public class Paint {
@Nullable
private Xfermode installXfermode(Xfermode xfermode) {
- if (xfermode instanceof RuntimeXfermode) {
- mXfermode = xfermode;
- nSetXfermode(mNativePaint, ((RuntimeXfermode) xfermode).createNativeInstance());
- return xfermode;
+ if (com.android.graphics.hwui.flags.Flags.runtimeColorFiltersBlenders()) {
+ if (xfermode instanceof RuntimeXfermode) {
+ mXfermode = xfermode;
+ nSetXfermode(mNativePaint, ((RuntimeXfermode) xfermode).createNativeInstance());
+ return xfermode;
+ }
}
int newMode = (xfermode instanceof PorterDuffXfermode)
? ((PorterDuffXfermode) xfermode).porterDuffMode : PorterDuffXfermode.DEFAULT;