summaryrefslogtreecommitdiff
path: root/graphics/java
diff options
context:
space:
mode:
author Jorge Betancourt <jmbetancourt@google.com> 2024-11-14 06:02:45 +0000
committer Jorge Betancourt <jmbetancourt@google.com> 2024-11-14 06:03:16 +0000
commitea12150b5b386d36312ff178b43c780a78f901b0 (patch)
tree020899a677ee4578386aa852c57715a1f620501a /graphics/java
parentd0e4ee2fc64240bfeb8c4f1024ae3fe0e18fd976 (diff)
guard new Xfermode API usage in Paint
Flag: com.android.graphics.hwui.flags.runtime_color_filters_blenders Test: atest CtsUiRenderingTestCases:RuntimeXfermodeTests Bug: b/358126864 Change-Id: I74088b551eb4b313d81310e2cfaceaeeee1b8cda
Diffstat (limited to 'graphics/java')
-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;