public class com.android.internal.util.NotificationColorUtil
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.android.internal.util.NotificationColorUtil
super_class: java.lang.Object
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "NotificationColorUtil"
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final java.lang.Object sLock;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static com.android.internal.util.NotificationColorUtil sInstance;
descriptor: Lcom/android/internal/util/NotificationColorUtil;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final com.android.internal.util.ImageUtils mImageUtils;
descriptor: Lcom/android/internal/util/ImageUtils;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.WeakHashMap<android.graphics.Bitmap, android.util.Pair<java.lang.Boolean, java.lang.Integer>> mGrayscaleBitmapCache;
descriptor: Ljava/util/WeakHashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/WeakHashMap<Landroid/graphics/Bitmap;Landroid/util/Pair<Ljava/lang/Boolean;Ljava/lang/Integer;>;>;
private final int mGrayscaleIconMaxSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic com.android.internal.util.NotificationColorUtil.sLock:Ljava/lang/Object;
1: return
LocalVariableTable:
Start End Slot Name Signature
public static com.android.internal.util.NotificationColorUtil getInstance(android.content.Context);
descriptor: (Landroid/content/Context;)Lcom/android/internal/util/NotificationColorUtil;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic com.android.internal.util.NotificationColorUtil.sLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: getstatic com.android.internal.util.NotificationColorUtil.sInstance:Lcom/android/internal/util/NotificationColorUtil;
ifnonnull 3
2: new com.android.internal.util.NotificationColorUtil
dup
aload 0
invokespecial com.android.internal.util.NotificationColorUtil.<init>:(Landroid/content/Context;)V
putstatic com.android.internal.util.NotificationColorUtil.sInstance:Lcom/android/internal/util/NotificationColorUtil;
3: StackMap locals: java.lang.Object
StackMap stack:
getstatic com.android.internal.util.NotificationColorUtil.sInstance:Lcom/android/internal/util/NotificationColorUtil;
aload 1
monitorexit
4: areturn
5: StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
6: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 context Landroid/content/Context;
Exception table:
from to target type
1 4 5 any
5 6 5 any
MethodParameters:
Name Flags
context
private void <init>(android.content.Context);
descriptor: (Landroid/content/Context;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tcom.android.internal.R.dimen cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/util/NotificationColorUtil;
MethodParameters:
Name Flags
context
public boolean isGrayscaleIcon(android.graphics.Bitmap);
descriptor: (Landroid/graphics/Bitmap;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual android.graphics.Bitmap.getWidth:()I
aload 0
getfield com.android.internal.util.NotificationColorUtil.mGrayscaleIconMaxSize:I
if_icmpgt 2
1: aload 1
invokevirtual android.graphics.Bitmap.getHeight:()I
aload 0
getfield com.android.internal.util.NotificationColorUtil.mGrayscaleIconMaxSize:I
if_icmple 3
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
getstatic com.android.internal.util.NotificationColorUtil.sLock:Ljava/lang/Object;
dup
astore 2
monitorenter
4: aload 0
getfield com.android.internal.util.NotificationColorUtil.mGrayscaleBitmapCache:Ljava/util/WeakHashMap;
aload 1
invokevirtual java.util.WeakHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast android.util.Pair
astore 3
start local 3 5: aload 3
ifnull 9
6: aload 3
getfield android.util.Pair.second:Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
aload 1
invokevirtual android.graphics.Bitmap.getGenerationId:()I
if_icmpne 9
7: aload 3
getfield android.util.Pair.first:Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
aload 2
monitorexit
8: ireturn
end local 3 9: StackMap locals: java.lang.Object
StackMap stack:
aload 2
monitorexit
10: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
11: aload 2
monitorexit
12: athrow
13: StackMap locals:
StackMap stack:
aload 0
getfield com.android.internal.util.NotificationColorUtil.mImageUtils:Lcom/android/internal/util/ImageUtils;
dup
astore 4
monitorenter
14: aload 0
getfield com.android.internal.util.NotificationColorUtil.mImageUtils:Lcom/android/internal/util/ImageUtils;
aload 1
invokevirtual com.android.internal.util.ImageUtils.isGrayscale:(Landroid/graphics/Bitmap;)Z
istore 2
start local 2 15: aload 1
invokevirtual android.graphics.Bitmap.getGenerationId:()I
istore 3
start local 3 16: aload 4
monitorexit
17: goto 20
end local 3 end local 2 StackMap locals: com.android.internal.util.NotificationColorUtil android.graphics.Bitmap top top com.android.internal.util.ImageUtils
StackMap stack: java.lang.Throwable
18: aload 4
monitorexit
19: athrow
start local 2 start local 3 20: StackMap locals: com.android.internal.util.NotificationColorUtil android.graphics.Bitmap int int
StackMap stack:
getstatic com.android.internal.util.NotificationColorUtil.sLock:Ljava/lang/Object;
dup
astore 4
monitorenter
21: aload 0
getfield com.android.internal.util.NotificationColorUtil.mGrayscaleBitmapCache:Ljava/util/WeakHashMap;
aload 1
iload 2
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic android.util.Pair.create:(Ljava/lang/Object;Ljava/lang/Object;)Landroid/util/Pair;
invokevirtual java.util.WeakHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
22: aload 4
monitorexit
23: goto 26
StackMap locals: com.android.internal.util.NotificationColorUtil android.graphics.Bitmap int int java.lang.Object
StackMap stack: java.lang.Throwable
24: aload 4
monitorexit
25: athrow
26: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/android/internal/util/NotificationColorUtil;
0 27 1 bitmap Landroid/graphics/Bitmap;
5 9 3 cached Landroid/util/Pair<Ljava/lang/Boolean;Ljava/lang/Integer;>;
15 18 2 result Z
20 27 2 result Z
16 18 3 generationId I
20 27 3 generationId I
Exception table:
from to target type
4 8 11 any
9 10 11 any
11 12 11 any
14 17 18 any
18 19 18 any
21 23 24 any
24 25 24 any
MethodParameters:
Name Flags
bitmap
public boolean isGrayscaleIcon(android.graphics.drawable.Drawable);
descriptor: (Landroid/graphics/drawable/Drawable;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof android.graphics.drawable.BitmapDrawable
ifeq 6
3: aload 1
checkcast android.graphics.drawable.BitmapDrawable
astore 2
start local 2 4: aload 2
invokevirtual android.graphics.drawable.BitmapDrawable.getBitmap:()Landroid/graphics/Bitmap;
ifnull 5
aload 0
aload 2
invokevirtual android.graphics.drawable.BitmapDrawable.getBitmap:()Landroid/graphics/Bitmap;
invokevirtual com.android.internal.util.NotificationColorUtil.isGrayscaleIcon:(Landroid/graphics/Bitmap;)Z
ifeq 5
iconst_1
ireturn
StackMap locals: android.graphics.drawable.BitmapDrawable
StackMap stack:
5: iconst_0
ireturn
end local 2 6: StackMap locals:
StackMap stack:
aload 1
instanceof android.graphics.drawable.AnimationDrawable
ifeq 11
7: aload 1
checkcast android.graphics.drawable.AnimationDrawable
astore 2
start local 2 8: aload 2
invokevirtual android.graphics.drawable.AnimationDrawable.getNumberOfFrames:()I
istore 3
start local 3 9: iload 3
ifle 10
aload 0
aload 2
iconst_0
invokevirtual android.graphics.drawable.AnimationDrawable.getFrame:(I)Landroid/graphics/drawable/Drawable;
invokevirtual com.android.internal.util.NotificationColorUtil.isGrayscaleIcon:(Landroid/graphics/drawable/Drawable;)Z
ifeq 10
iconst_1
ireturn
StackMap locals: android.graphics.drawable.AnimationDrawable int
StackMap stack:
10: iconst_0
ireturn
end local 3 end local 2 11: StackMap locals:
StackMap stack:
aload 1
instanceof android.graphics.drawable.VectorDrawable
ifeq 13
12: iconst_1
ireturn
13: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/android/internal/util/NotificationColorUtil;
0 14 1 d Landroid/graphics/drawable/Drawable;
4 6 2 bd Landroid/graphics/drawable/BitmapDrawable;
8 11 2 ad Landroid/graphics/drawable/AnimationDrawable;
9 11 3 count I
MethodParameters:
Name Flags
d
public boolean isGrayscaleIcon(android.content.Context, android.graphics.drawable.Icon);
descriptor: (Landroid/content/Context;Landroid/graphics/drawable/Icon;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual android.graphics.drawable.Icon.getType:()I
tableswitch { // 1 - 2
1: 3
2: 4
default: 5
}
3: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokevirtual com.android.internal.util.NotificationColorUtil.isGrayscaleIcon:(Landroid/graphics/Bitmap;)Z
ireturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual android.graphics.drawable.Icon.getResId:()I
invokevirtual com.android.internal.util.NotificationColorUtil.isGrayscaleIcon:(Landroid/content/Context;I)Z
ireturn
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/android/internal/util/NotificationColorUtil;
0 6 1 context Landroid/content/Context;
0 6 2 icon Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
context
icon
public boolean isGrayscaleIcon(android.content.Context, int);
descriptor: (Landroid/content/Context;I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 6
1: aload 0
aload 1
iload 2
invokevirtual android.content.Context.getDrawable:(I)Landroid/graphics/drawable/Drawable;
invokevirtual com.android.internal.util.NotificationColorUtil.isGrayscaleIcon:(Landroid/graphics/drawable/Drawable;)Z
2: ireturn
3: StackMap locals:
StackMap stack: android.content.res.Resources$NotFoundException
pop
4: ldc "NotificationColorUtil"
new java.lang.StringBuilder
dup
ldc "Drawable not found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/android/internal/util/NotificationColorUtil;
0 7 1 context Landroid/content/Context;
0 7 2 drawableResId I
Exception table:
from to target type
1 2 3 Class android.content.res.Resources$NotFoundException
MethodParameters:
Name Flags
context
drawableResId
public java.lang.CharSequence invertCharSequenceColors(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=12, args_size=2
start local 0 start local 1 0: aload 1
instanceof android.text.Spanned
ifeq 30
1: aload 1
checkcast android.text.Spanned
astore 2
start local 2 2: aload 2
iconst_0
aload 2
invokeinterface android.text.Spanned.length:()I
ldc Ljava/lang/Object;
invokeinterface android.text.Spanned.getSpans:(IILjava/lang/Class;)[Ljava/lang/Object;
astore 3
start local 3 3: new android.text.SpannableStringBuilder
dup
aload 2
invokeinterface android.text.Spanned.toString:()Ljava/lang/String;
invokespecial android.text.SpannableStringBuilder.<init>:(Ljava/lang/CharSequence;)V
astore 4
start local 4 4: aload 3
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 28
StackMap locals: com.android.internal.util.NotificationColorUtil java.lang.CharSequence android.text.Spanned java.lang.Object[] android.text.SpannableStringBuilder top int int java.lang.Object[]
StackMap stack:
5: aload 8
iload 6
aaload
astore 5
start local 5 6: aload 5
astore 9
start local 9 7: aload 9
instanceof android.text.style.CharacterStyle
ifeq 9
8: aload 5
checkcast android.text.style.CharacterStyle
invokevirtual android.text.style.CharacterStyle.getUnderlying:()Landroid/text/style/CharacterStyle;
astore 9
9: StackMap locals: com.android.internal.util.NotificationColorUtil java.lang.CharSequence android.text.Spanned java.lang.Object[] android.text.SpannableStringBuilder java.lang.Object int int java.lang.Object[] java.lang.Object
StackMap stack:
aload 9
instanceof android.text.style.TextAppearanceSpan
ifeq 18
10: aload 0
11: aload 5
checkcast android.text.style.TextAppearanceSpan
12: invokevirtual com.android.internal.util.NotificationColorUtil.processTextAppearanceSpan:(Landroid/text/style/TextAppearanceSpan;)Landroid/text/style/TextAppearanceSpan;
astore 10
start local 10 13: aload 10
aload 9
if_acmpeq 16
14: aload 10
astore 9
15: goto 24
16: StackMap locals: android.text.style.TextAppearanceSpan
StackMap stack:
aload 5
astore 9
end local 10 17: goto 24
StackMap locals:
StackMap stack:
18: aload 9
instanceof android.text.style.ForegroundColorSpan
ifeq 23
19: aload 9
checkcast android.text.style.ForegroundColorSpan
astore 10
start local 10 20: aload 10
invokevirtual android.text.style.ForegroundColorSpan.getForegroundColor:()I
istore 11
start local 11 21: new android.text.style.ForegroundColorSpan
dup
aload 0
iload 11
invokevirtual com.android.internal.util.NotificationColorUtil.processColor:(I)I
invokespecial android.text.style.ForegroundColorSpan.<init>:(I)V
astore 9
end local 11 end local 10 22: goto 24
23: StackMap locals:
StackMap stack:
aload 5
astore 9
24: StackMap locals:
StackMap stack:
aload 4
aload 9
aload 2
aload 5
invokeinterface android.text.Spanned.getSpanStart:(Ljava/lang/Object;)I
aload 2
aload 5
invokeinterface android.text.Spanned.getSpanEnd:(Ljava/lang/Object;)I
25: aload 2
aload 5
invokeinterface android.text.Spanned.getSpanFlags:(Ljava/lang/Object;)I
26: invokevirtual android.text.SpannableStringBuilder.setSpan:(Ljava/lang/Object;III)V
end local 9 end local 5 27: iinc 6 1
StackMap locals: com.android.internal.util.NotificationColorUtil java.lang.CharSequence android.text.Spanned java.lang.Object[] android.text.SpannableStringBuilder top int int java.lang.Object[]
StackMap stack:
28: iload 6
iload 7
if_icmplt 5
29: aload 4
areturn
end local 4 end local 3 end local 2 30: StackMap locals: com.android.internal.util.NotificationColorUtil java.lang.CharSequence
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lcom/android/internal/util/NotificationColorUtil;
0 31 1 charSequence Ljava/lang/CharSequence;
2 30 2 ss Landroid/text/Spanned;
3 30 3 spans [Ljava/lang/Object;
4 30 4 builder Landroid/text/SpannableStringBuilder;
6 27 5 span Ljava/lang/Object;
7 27 9 resultSpan Ljava/lang/Object;
13 17 10 processedSpan Landroid/text/style/TextAppearanceSpan;
20 22 10 originalSpan Landroid/text/style/ForegroundColorSpan;
21 22 11 foregroundColor I
MethodParameters:
Name Flags
charSequence
private android.text.style.TextAppearanceSpan processTextAppearanceSpan(android.text.style.TextAppearanceSpan);
descriptor: (Landroid/text/style/TextAppearanceSpan;)Landroid/text/style/TextAppearanceSpan;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual android.text.style.TextAppearanceSpan.getTextColor:()Landroid/content/res/ColorStateList;
astore 2
start local 2 1: aload 2
ifnull 19
2: aload 2
invokevirtual android.content.res.ColorStateList.getColors:()[I
astore 3
start local 3 3: iconst_0
istore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 12
6: StackMap locals: com.android.internal.util.NotificationColorUtil android.text.style.TextAppearanceSpan android.content.res.ColorStateList int[] int int
StackMap stack:
aload 3
iload 5
iaload
invokestatic com.android.internal.util.ImageUtils.isGrayscale:(I)Z
ifeq 11
7: iload 4
ifne 9
8: aload 3
aload 3
arraylength
invokestatic java.util.Arrays.copyOf:([II)[I
astore 3
9: StackMap locals:
StackMap stack:
aload 3
iload 5
aload 0
aload 3
iload 5
iaload
invokevirtual com.android.internal.util.NotificationColorUtil.processColor:(I)I
iastore
10: iconst_1
istore 4
11: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
aload 3
arraylength
if_icmplt 6
end local 5 13: iload 4
ifeq 19
14: new android.text.style.TextAppearanceSpan
dup
15: aload 1
invokevirtual android.text.style.TextAppearanceSpan.getFamily:()Ljava/lang/String;
aload 1
invokevirtual android.text.style.TextAppearanceSpan.getTextStyle:()I
aload 1
invokevirtual android.text.style.TextAppearanceSpan.getTextSize:()I
16: new android.content.res.ColorStateList
dup
aload 2
invokevirtual android.content.res.ColorStateList.getStates:()[[I
aload 3
invokespecial android.content.res.ColorStateList.<init>:([[I[I)V
17: aload 1
invokevirtual android.text.style.TextAppearanceSpan.getLinkTextColor:()Landroid/content/res/ColorStateList;
18: invokespecial android.text.style.TextAppearanceSpan.<init>:(Ljava/lang/String;IILandroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;)V
areturn
end local 4 end local 3 19: StackMap locals:
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lcom/android/internal/util/NotificationColorUtil;
0 20 1 span Landroid/text/style/TextAppearanceSpan;
1 20 2 colorStateList Landroid/content/res/ColorStateList;
3 19 3 colors [I
4 19 4 changed Z
5 13 5 i I
MethodParameters:
Name Flags
span
public static java.lang.CharSequence clearColorSpans(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=10, args_size=1
start local 0 0: aload 0
instanceof android.text.Spanned
ifeq 30
1: aload 0
checkcast android.text.Spanned
astore 1
start local 1 2: aload 1
iconst_0
aload 1
invokeinterface android.text.Spanned.length:()I
ldc Ljava/lang/Object;
invokeinterface android.text.Spanned.getSpans:(IILjava/lang/Class;)[Ljava/lang/Object;
astore 2
start local 2 3: new android.text.SpannableStringBuilder
dup
aload 1
invokeinterface android.text.Spanned.toString:()Ljava/lang/String;
invokespecial android.text.SpannableStringBuilder.<init>:(Ljava/lang/CharSequence;)V
astore 3
start local 3 4: aload 2
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 28
StackMap locals: java.lang.CharSequence android.text.Spanned java.lang.Object[] android.text.SpannableStringBuilder top int int java.lang.Object[]
StackMap stack:
5: aload 7
iload 5
aaload
astore 4
start local 4 6: aload 4
astore 8
start local 8 7: aload 8
instanceof android.text.style.CharacterStyle
ifeq 9
8: aload 4
checkcast android.text.style.CharacterStyle
invokevirtual android.text.style.CharacterStyle.getUnderlying:()Landroid/text/style/CharacterStyle;
astore 8
9: StackMap locals: java.lang.CharSequence android.text.Spanned java.lang.Object[] android.text.SpannableStringBuilder java.lang.Object int int java.lang.Object[] java.lang.Object
StackMap stack:
aload 8
instanceof android.text.style.TextAppearanceSpan
ifeq 20
10: aload 8
checkcast android.text.style.TextAppearanceSpan
astore 9
start local 9 11: aload 9
invokevirtual android.text.style.TextAppearanceSpan.getTextColor:()Landroid/content/res/ColorStateList;
ifnull 24
12: new android.text.style.TextAppearanceSpan
dup
13: aload 9
invokevirtual android.text.style.TextAppearanceSpan.getFamily:()Ljava/lang/String;
14: aload 9
invokevirtual android.text.style.TextAppearanceSpan.getTextStyle:()I
15: aload 9
invokevirtual android.text.style.TextAppearanceSpan.getTextSize:()I
16: aconst_null
17: aload 9
invokevirtual android.text.style.TextAppearanceSpan.getLinkTextColor:()Landroid/content/res/ColorStateList;
18: invokespecial android.text.style.TextAppearanceSpan.<init>:(Ljava/lang/String;IILandroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;)V
astore 8
end local 9 19: goto 24
StackMap locals:
StackMap stack:
20: aload 8
instanceof android.text.style.ForegroundColorSpan
ifne 27
21: aload 8
instanceof android.text.style.BackgroundColorSpan
ifeq 23
22: goto 27
23: StackMap locals:
StackMap stack:
aload 4
astore 8
24: StackMap locals:
StackMap stack:
aload 3
aload 8
aload 1
aload 4
invokeinterface android.text.Spanned.getSpanStart:(Ljava/lang/Object;)I
aload 1
aload 4
invokeinterface android.text.Spanned.getSpanEnd:(Ljava/lang/Object;)I
25: aload 1
aload 4
invokeinterface android.text.Spanned.getSpanFlags:(Ljava/lang/Object;)I
26: invokevirtual android.text.SpannableStringBuilder.setSpan:(Ljava/lang/Object;III)V
end local 8 end local 4 27: StackMap locals: java.lang.CharSequence android.text.Spanned java.lang.Object[] android.text.SpannableStringBuilder top int int java.lang.Object[]
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
28: iload 5
iload 6
if_icmplt 5
29: aload 3
areturn
end local 3 end local 2 end local 1 30: StackMap locals: java.lang.CharSequence
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 charSequence Ljava/lang/CharSequence;
2 30 1 ss Landroid/text/Spanned;
3 30 2 spans [Ljava/lang/Object;
4 30 3 builder Landroid/text/SpannableStringBuilder;
6 27 4 span Ljava/lang/Object;
7 27 8 resultSpan Ljava/lang/Object;
11 19 9 originalSpan Landroid/text/style/TextAppearanceSpan;
MethodParameters:
Name Flags
charSequence
private int processColor(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
invokestatic android.graphics.Color.alpha:(I)I
1: sipush 255
iload 1
invokestatic android.graphics.Color.red:(I)I
isub
2: sipush 255
iload 1
invokestatic android.graphics.Color.green:(I)I
isub
3: sipush 255
iload 1
invokestatic android.graphics.Color.blue:(I)I
isub
4: invokestatic android.graphics.Color.argb:(IIII)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/android/internal/util/NotificationColorUtil;
0 5 1 color I
MethodParameters:
Name Flags
color
public static int findContrastColor(int, int, boolean, double);
descriptor: (IIZD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=19, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
ifeq 1
iload 0
goto 2
StackMap locals:
StackMap stack:
1: iload 1
StackMap locals:
StackMap stack: int
2: istore 5
start local 5 3: iload 2
ifeq 4
iload 1
goto 5
StackMap locals: int
StackMap stack:
4: iload 0
StackMap locals:
StackMap stack: int
5: istore 6
start local 6 6: iload 5
iload 6
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
dload 3
dcmpl
iflt 8
7: iload 0
ireturn
8: StackMap locals: int
StackMap stack:
iconst_3
newarray 7
astore 7
start local 7 9: iload 2
ifeq 10
iload 5
goto 11
StackMap locals: double[]
StackMap stack:
10: iload 6
StackMap locals:
StackMap stack: int
11: aload 7
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.colorToLAB:(I[D)V
12: dconst_0
dstore 8
start local 8 13: aload 7
iconst_0
daload
dstore 10
start local 10 14: aload 7
iconst_1
daload
dstore 12
start local 12 15: aload 7
iconst_2
daload
dstore 14
start local 14 16: iconst_0
istore 16
start local 16 17: goto 28
18: StackMap locals: int int int double int int double[] double double double double int
StackMap stack:
dload 8
dload 10
dadd
ldc 2.0
ddiv
dstore 17
start local 17 19: iload 2
ifeq 22
20: dload 17
dload 12
dload 14
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.LABToColor:(DDD)I
istore 5
21: goto 23
22: StackMap locals: double
StackMap stack:
dload 17
dload 12
dload 14
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.LABToColor:(DDD)I
istore 6
23: StackMap locals:
StackMap stack:
iload 5
iload 6
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
dload 3
dcmpl
ifle 26
24: dload 17
dstore 8
25: goto 27
26: StackMap locals:
StackMap stack:
dload 17
dstore 10
end local 17 27: StackMap locals:
StackMap stack:
iinc 16 1
StackMap locals:
StackMap stack:
28: iload 16
bipush 15
if_icmpge 29
dload 10
dload 8
dsub
ldc 1.0E-5
dcmpl
ifgt 18
end local 16 29: StackMap locals:
StackMap stack:
dload 8
dload 12
dload 14
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.LABToColor:(DDD)I
ireturn
end local 14 end local 12 end local 10 end local 8 end local 7 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 color I
0 30 1 other I
0 30 2 findFg Z
0 30 3 minRatio D
3 30 5 fg I
6 30 6 bg I
9 30 7 lab [D
13 30 8 low D
14 30 10 high D
15 30 12 a D
16 30 14 b D
17 29 16 i I
19 27 17 l D
MethodParameters:
Name Flags
color
other
findFg
minRatio
public static int findAlphaToMeetContrast(int, int, double);
descriptor: (IID)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=14, args_size=3
start local 0 start local 1 start local 2 0: iload 0
istore 4
start local 4 1: iload 1
istore 5
start local 5 2: iload 4
iload 5
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
dload 2
dcmpl
iflt 4
3: iload 0
ireturn
4: StackMap locals: int int
StackMap stack:
iload 0
invokestatic android.graphics.Color.alpha:(I)I
istore 6
start local 6 5: iload 0
invokestatic android.graphics.Color.red:(I)I
istore 7
start local 7 6: iload 0
invokestatic android.graphics.Color.green:(I)I
istore 8
start local 8 7: iload 0
invokestatic android.graphics.Color.blue:(I)I
istore 9
start local 9 8: iload 6
istore 10
start local 10 9: sipush 255
istore 11
start local 11 10: iconst_0
istore 12
start local 12 11: goto 19
12: StackMap locals: int int double int int int int int int int int int
StackMap stack:
iload 10
iload 11
iadd
iconst_2
idiv
istore 13
start local 13 13: iload 13
iload 7
iload 8
iload 9
invokestatic android.graphics.Color.argb:(IIII)I
istore 4
14: iload 4
iload 5
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
dload 2
dcmpl
ifle 17
15: iload 13
istore 11
16: goto 18
17: StackMap locals: int
StackMap stack:
iload 13
istore 10
end local 13 18: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
19: iload 12
bipush 15
if_icmpge 20
iload 11
iload 10
isub
ifgt 12
end local 12 20: StackMap locals:
StackMap stack:
iload 11
iload 7
iload 8
iload 9
invokestatic android.graphics.Color.argb:(IIII)I
ireturn
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 color I
0 21 1 backgroundColor I
0 21 2 minRatio D
1 21 4 fg I
2 21 5 bg I
5 21 6 startAlpha I
6 21 7 r I
7 21 8 g I
8 21 9 b I
9 21 10 low I
10 21 11 high I
11 20 12 i I
13 18 13 alpha I
MethodParameters:
Name Flags
color
backgroundColor
minRatio
public static int findContrastColorAgainstDark(int, int, boolean, double);
descriptor: (IIZD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
ifeq 1
iload 0
goto 2
StackMap locals:
StackMap stack:
1: iload 1
StackMap locals:
StackMap stack: int
2: istore 5
start local 5 3: iload 2
ifeq 4
iload 1
goto 5
StackMap locals: int
StackMap stack:
4: iload 0
StackMap locals:
StackMap stack: int
5: istore 6
start local 6 6: iload 5
iload 6
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
dload 3
dcmpl
iflt 8
7: iload 0
ireturn
8: StackMap locals: int
StackMap stack:
iconst_3
newarray 6
astore 7
start local 7 9: iload 2
ifeq 10
iload 5
goto 11
StackMap locals: float[]
StackMap stack:
10: iload 6
StackMap locals:
StackMap stack: int
11: aload 7
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.colorToHSL:(I[F)V
12: aload 7
iconst_2
faload
fstore 8
start local 8 13: fconst_1
fstore 9
start local 9 14: iconst_0
istore 10
start local 10 15: goto 27
16: StackMap locals: float float int
StackMap stack:
fload 8
fload 9
fadd
fconst_2
fdiv
fstore 11
start local 11 17: aload 7
iconst_2
fload 11
fastore
18: iload 2
ifeq 21
19: aload 7
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.HSLToColor:([F)I
istore 5
20: goto 22
21: StackMap locals: float
StackMap stack:
aload 7
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.HSLToColor:([F)I
istore 6
22: StackMap locals:
StackMap stack:
iload 5
iload 6
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
dload 3
dcmpl
ifle 25
23: fload 11
fstore 9
24: goto 26
25: StackMap locals:
StackMap stack:
fload 11
fstore 8
end local 11 26: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
27: iload 10
bipush 15
if_icmpge 28
fload 9
fload 8
fsub
f2d
ldc 1.0E-5
dcmpl
ifgt 16
end local 10 28: StackMap locals:
StackMap stack:
iload 2
ifeq 29
iload 5
goto 30
StackMap locals:
StackMap stack:
29: iload 6
StackMap locals:
StackMap stack: int
30: ireturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 color I
0 31 1 other I
0 31 2 findFg Z
0 31 3 minRatio D
3 31 5 fg I
6 31 6 bg I
9 31 7 hsl [F
13 31 8 low F
14 31 9 high F
15 28 10 i I
17 26 11 l F
MethodParameters:
Name Flags
color
other
findFg
minRatio
public static int ensureTextContrastOnBlack(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: iload 0
ldc -16777216
iconst_1
ldc 12.0
invokestatic com.android.internal.util.NotificationColorUtil.findContrastColorAgainstDark:(IIZD)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 color I
MethodParameters:
Name Flags
color
public static int ensureLargeTextContrast(int, int, boolean);
descriptor: (IIZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 2
1: iload 0
iload 1
iconst_1
ldc 3.0
invokestatic com.android.internal.util.NotificationColorUtil.findContrastColorAgainstDark:(IIZD)I
goto 3
2: StackMap locals:
StackMap stack:
iload 0
iload 1
iconst_1
ldc 3.0
invokestatic com.android.internal.util.NotificationColorUtil.findContrastColor:(IIZD)I
3: StackMap locals:
StackMap stack: int
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 color I
0 4 1 bg I
0 4 2 isBgDarker Z
MethodParameters:
Name Flags
color
bg
isBgDarker
public static int ensureTextContrast(int, int, boolean);
descriptor: (IIZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
iload 1
iload 2
ldc 4.5
invokestatic com.android.internal.util.NotificationColorUtil.ensureContrast:(IIZD)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 color I
0 1 1 bg I
0 1 2 isBgDarker Z
MethodParameters:
Name Flags
color
bg
isBgDarker
public static int ensureContrast(int, int, boolean, double);
descriptor: (IIZD)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
ifeq 2
1: iload 0
iload 1
iconst_1
dload 3
invokestatic com.android.internal.util.NotificationColorUtil.findContrastColorAgainstDark:(IIZD)I
goto 3
2: StackMap locals:
StackMap stack:
iload 0
iload 1
iconst_1
dload 3
invokestatic com.android.internal.util.NotificationColorUtil.findContrastColor:(IIZD)I
3: StackMap locals:
StackMap stack: int
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 color I
0 4 1 bg I
0 4 2 isBgDarker Z
0 4 3 minRatio D
MethodParameters:
Name Flags
color
bg
isBgDarker
minRatio
public static int ensureTextBackgroundColor(int, int, int);
descriptor: (III)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
iload 2
iconst_0
ldc 3.0
invokestatic com.android.internal.util.NotificationColorUtil.findContrastColor:(IIZD)I
istore 0
1: iload 0
iload 1
iconst_0
ldc 4.5
invokestatic com.android.internal.util.NotificationColorUtil.findContrastColor:(IIZD)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 color I
0 2 1 textColor I
0 2 2 hintColor I
MethodParameters:
Name Flags
color
textColor
hintColor
private static java.lang.String contrastChange(int, int, int);
descriptor: (III)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: ldc "from %.2f:1 to %.2f:1"
iconst_2
anewarray java.lang.Object
dup
iconst_0
1: iload 0
iload 2
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
iconst_1
2: iload 1
iload 2
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
3: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 colorOld I
0 4 1 colorNew I
0 4 2 bg I
MethodParameters:
Name Flags
colorOld
colorNew
bg
public static int resolveColor(android.content.Context, int);
descriptor: (Landroid/content/Context;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tcom.android.internal.R.color cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
context
color
public static int resolveContrastColor(android.content.Context, int, int);
descriptor: (Landroid/content/Context;II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
1: iload 2
iconst_0
2: invokestatic com.android.internal.util.NotificationColorUtil.resolveContrastColor:(Landroid/content/Context;IIZ)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Landroid/content/Context;
0 3 1 notificationColor I
0 3 2 backgroundColor I
MethodParameters:
Name Flags
context
notificationColor
backgroundColor
public static int resolveContrastColor(android.content.Context, int, int, boolean);
descriptor: (Landroid/content/Context;IIZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokestatic com.android.internal.util.NotificationColorUtil.resolveColor:(Landroid/content/Context;I)I
istore 4
start local 4 1: iload 4
istore 5
start local 5 2: iload 5
iload 2
iload 3
invokestatic com.android.internal.util.NotificationColorUtil.ensureTextContrast:(IIZ)I
istore 5
3: iload 5
iload 4
if_icmpeq 4
4: StackMap locals: int int
StackMap stack:
iload 5
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Landroid/content/Context;
0 5 1 notificationColor I
0 5 2 backgroundColor I
0 5 3 isDark Z
1 5 4 resolvedColor I
2 5 5 color I
MethodParameters:
Name Flags
context
notificationColor
backgroundColor
isDark
public static int changeColorLightness(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.getTempDouble3Array:()[D
astore 2
start local 2 1: iload 0
aload 2
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.colorToLAB:(I[D)V
2: aload 2
iconst_0
ldc 100.0
aload 2
iconst_0
daload
iload 1
i2d
dadd
invokestatic java.lang.Math.min:(DD)D
dconst_0
invokestatic java.lang.Math.max:(DD)D
dastore
3: aload 2
iconst_0
daload
aload 2
iconst_1
daload
aload 2
iconst_2
daload
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.LABToColor:(DDD)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 baseColor I
0 4 1 amount I
1 4 2 result [D
MethodParameters:
Name Flags
baseColor
amount
public static int resolveAmbientColor(android.content.Context, int);
descriptor: (Landroid/content/Context;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokestatic com.android.internal.util.NotificationColorUtil.resolveColor:(Landroid/content/Context;I)I
istore 2
start local 2 1: iload 2
istore 3
start local 3 2: iload 3
invokestatic com.android.internal.util.NotificationColorUtil.ensureTextContrastOnBlack:(I)I
istore 3
3: iload 3
iload 2
if_icmpeq 4
4: StackMap locals: int int
StackMap stack:
iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Landroid/content/Context;
0 5 1 notificationColor I
1 5 2 resolvedColor I
2 5 3 color I
MethodParameters:
Name Flags
context
notificationColor
public static int resolvePrimaryColor(android.content.Context, int);
descriptor: (Landroid/content/Context;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
context
backgroundColor
public static int resolveSecondaryColor(android.content.Context, int);
descriptor: (Landroid/content/Context;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
context
backgroundColor
public static int resolveDefaultColor(android.content.Context, int);
descriptor: (Landroid/content/Context;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tcom.android.internal.R.color cannot be resolved to a variable\n\tcom.android.internal.R.color cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
context
backgroundColor
public static int getShiftedColor(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.getTempDouble3Array:()[D
astore 2
start local 2 1: iload 0
aload 2
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.colorToLAB:(I[D)V
2: aload 2
iconst_0
daload
ldc 4.0
dcmpl
iflt 5
3: aload 2
iconst_0
dconst_0
aload 2
iconst_0
daload
iload 1
i2d
dsub
invokestatic java.lang.Math.max:(DD)D
dastore
4: goto 6
5: StackMap locals: double[]
StackMap stack:
aload 2
iconst_0
ldc 100.0
aload 2
iconst_0
daload
iload 1
i2d
dadd
invokestatic java.lang.Math.min:(DD)D
dastore
6: StackMap locals:
StackMap stack:
aload 2
iconst_0
daload
aload 2
iconst_1
daload
aload 2
iconst_2
daload
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.LABToColor:(DDD)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 color I
0 7 1 amount I
1 7 2 result [D
MethodParameters:
Name Flags
color
amount
private static boolean shouldUseDark(int);
descriptor: (I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: iload 0
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 1
start local 1 3: iload 1
ifne 7
4: iload 0
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateLuminance:(I)D
ldc 0.5
dcmpl
ifle 5
iconst_1
goto 6
StackMap locals: int
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 1
7: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 backgroundColor I
3 8 1 useDark Z
MethodParameters:
Name Flags
backgroundColor
public static double calculateLuminance(int);
descriptor: (I)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateLuminance:(I)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 backgroundColor I
MethodParameters:
Name Flags
backgroundColor
public static double calculateContrast(int, int);
descriptor: (II)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 0
iload 1
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.calculateContrast:(II)D
dreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 foregroundColor I
0 1 1 backgroundColor I
MethodParameters:
Name Flags
foregroundColor
backgroundColor
public static boolean satisfiesTextContrast(int, int);
descriptor: (II)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iload 0
invokestatic com.android.internal.util.NotificationColorUtil.calculateContrast:(II)D
ldc 4.5
dcmpl
iflt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 backgroundColor I
0 2 1 foregroundColor I
MethodParameters:
Name Flags
backgroundColor
foregroundColor
public static int compositeColors(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 0
iload 1
invokestatic com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat.compositeColors:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 foreground I
0 1 1 background I
MethodParameters:
Name Flags
foreground
background
public static boolean isColorLight(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: iload 0
invokestatic com.android.internal.util.NotificationColorUtil.calculateLuminance:(I)D
ldc 0.5
dcmpl
ifle 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 backgroundColor I
MethodParameters:
Name Flags
backgroundColor
}
SourceFile: "NotificationColorUtil.java"
NestMembers:
com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat
InnerClasses:
public NotFoundException = android.content.res.Resources$NotFoundException of android.content.res.Resources
private ColorUtilsFromCompat = com.android.internal.util.NotificationColorUtil$ColorUtilsFromCompat of com.android.internal.util.NotificationColorUtil