class android.media.Cea608CCWidget$CCLineBox extends android.widget.TextView
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: android.media.Cea608CCWidget$CCLineBox
super_class: android.widget.TextView
{
private static final float FONT_PADDING_RATIO;
descriptor: F
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.75
private static final float EDGE_OUTLINE_RATIO;
descriptor: F
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.1
private static final float EDGE_SHADOW_RATIO;
descriptor: F
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.05
private float mOutlineWidth;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float mShadowRadius;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float mShadowOffset;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private int mTextColor;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mBgColor;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mEdgeType;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mEdgeColor;
descriptor: I
flags: (0x0002) ACC_PRIVATE
void <init>(android.content.Context);
descriptor: (Landroid/content/Context;)V
flags: (0x0000)
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.dimen cannot be resolved to a variable\n\tcom.android.internal.R.dimen 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 Landroid/media/Cea608CCWidget$CCLineBox;
MethodParameters:
Name Flags
context
void setCaptionStyle(android.view.accessibility.CaptioningManager$CaptionStyle);
descriptor: (Landroid/view/accessibility/CaptioningManager$CaptionStyle;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield android.view.accessibility.CaptioningManager$CaptionStyle.foregroundColor:I
putfield android.media.Cea608CCWidget$CCLineBox.mTextColor:I
1: aload 0
aload 1
getfield android.view.accessibility.CaptioningManager$CaptionStyle.backgroundColor:I
putfield android.media.Cea608CCWidget$CCLineBox.mBgColor:I
2: aload 0
aload 1
getfield android.view.accessibility.CaptioningManager$CaptionStyle.edgeType:I
putfield android.media.Cea608CCWidget$CCLineBox.mEdgeType:I
3: aload 0
aload 1
getfield android.view.accessibility.CaptioningManager$CaptionStyle.edgeColor:I
putfield android.media.Cea608CCWidget$CCLineBox.mEdgeColor:I
4: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mTextColor:I
invokevirtual android.media.Cea608CCWidget$CCLineBox.setTextColor:(I)V
5: aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeType:I
iconst_2
if_icmpne 8
6: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mShadowRadius:F
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mShadowOffset:F
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mShadowOffset:F
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeColor:I
invokevirtual android.media.Cea608CCWidget$CCLineBox.setShadowLayer:(FFFI)V
7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
fconst_0
fconst_0
fconst_0
iconst_0
invokevirtual android.media.Cea608CCWidget$CCLineBox.setShadowLayer:(FFFI)V
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.media.Cea608CCWidget$CCLineBox.invalidate:()V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/media/Cea608CCWidget$CCLineBox;
0 11 1 captionStyle Landroid/view/accessibility/CaptioningManager$CaptionStyle;
MethodParameters:
Name Flags
captionStyle
protected void onMeasure(int, int);
descriptor: (II)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 2
invokestatic android.view.View$MeasureSpec.getSize:(I)I
i2f
ldc 0.75
fmul
fstore 3
start local 3 1: aload 0
iconst_0
fload 3
invokevirtual android.media.Cea608CCWidget$CCLineBox.setTextSize:(IF)V
2: aload 0
ldc 0.1
fload 3
fmul
fconst_1
fadd
putfield android.media.Cea608CCWidget$CCLineBox.mOutlineWidth:F
3: aload 0
ldc 0.05
fload 3
fmul
fconst_1
fadd
putfield android.media.Cea608CCWidget$CCLineBox.mShadowRadius:F
4: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mShadowRadius:F
putfield android.media.Cea608CCWidget$CCLineBox.mShadowOffset:F
5: aload 0
fconst_1
invokevirtual android.media.Cea608CCWidget$CCLineBox.setScaleX:(F)V
6: aload 0
invokevirtual android.media.Cea608CCWidget$CCLineBox.getPaint:()Landroid/text/TextPaint;
ldc "1234567890123456789012345678901234"
iconst_0
ldc "1234567890123456789012345678901234"
invokevirtual java.lang.String.length:()I
getstatic android.media.Cea608CCWidget.mTextBounds:Landroid/graphics/Rect;
invokevirtual android.text.TextPaint.getTextBounds:(Ljava/lang/String;IILandroid/graphics/Rect;)V
7: getstatic android.media.Cea608CCWidget.mTextBounds:Landroid/graphics/Rect;
invokevirtual android.graphics.Rect.width:()I
i2f
fstore 4
start local 4 8: iload 1
invokestatic android.view.View$MeasureSpec.getSize:(I)I
i2f
fstore 5
start local 5 9: aload 0
fload 5
fload 4
fdiv
invokevirtual android.media.Cea608CCWidget$CCLineBox.setScaleX:(F)V
10: aload 0
iload 1
iload 2
invokespecial android.widget.TextView.onMeasure:(II)V
11: return
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 12 0 this Landroid/media/Cea608CCWidget$CCLineBox;
0 12 1 widthMeasureSpec I
0 12 2 heightMeasureSpec I
1 12 3 fontSize F
8 12 4 actualTextWidth F
9 12 5 requiredTextWidth F
MethodParameters:
Name Flags
widthMeasureSpec
heightMeasureSpec
protected void onDraw(android.graphics.Canvas);
descriptor: (Landroid/graphics/Canvas;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeType:I
iconst_m1
if_icmpeq 3
1: aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeType:I
ifeq 3
2: aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeType:I
iconst_2
if_icmpne 5
3: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial android.widget.TextView.onDraw:(Landroid/graphics/Canvas;)V
4: return
5: StackMap locals:
StackMap stack:
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeType:I
iconst_1
if_icmpne 8
6: aload 0
aload 1
invokevirtual android.media.Cea608CCWidget$CCLineBox.drawEdgeOutline:(Landroid/graphics/Canvas;)V
7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual android.media.Cea608CCWidget$CCLineBox.drawEdgeRaisedOrDepressed:(Landroid/graphics/Canvas;)V
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/media/Cea608CCWidget$CCLineBox;
0 10 1 c Landroid/graphics/Canvas;
MethodParameters:
Name Flags
c
private void drawEdgeOutline(android.graphics.Canvas);
descriptor: (Landroid/graphics/Canvas;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.media.Cea608CCWidget$CCLineBox.getPaint:()Landroid/text/TextPaint;
astore 2
start local 2 1: aload 2
invokevirtual android.text.TextPaint.getStyle:()Landroid/graphics/Paint$Style;
astore 3
start local 3 2: aload 2
invokevirtual android.text.TextPaint.getStrokeJoin:()Landroid/graphics/Paint$Join;
astore 4
start local 4 3: aload 2
invokevirtual android.text.TextPaint.getStrokeWidth:()F
fstore 5
start local 5 4: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeColor:I
invokevirtual android.media.Cea608CCWidget$CCLineBox.setTextColor:(I)V
5: aload 2
getstatic android.graphics.Paint$Style.FILL_AND_STROKE:Landroid/graphics/Paint$Style;
invokevirtual android.text.TextPaint.setStyle:(Landroid/graphics/Paint$Style;)V
6: aload 2
getstatic android.graphics.Paint$Join.ROUND:Landroid/graphics/Paint$Join;
invokevirtual android.text.TextPaint.setStrokeJoin:(Landroid/graphics/Paint$Join;)V
7: aload 2
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mOutlineWidth:F
invokevirtual android.text.TextPaint.setStrokeWidth:(F)V
8: aload 0
aload 1
invokespecial android.widget.TextView.onDraw:(Landroid/graphics/Canvas;)V
9: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mTextColor:I
invokevirtual android.media.Cea608CCWidget$CCLineBox.setTextColor:(I)V
10: aload 2
aload 3
invokevirtual android.text.TextPaint.setStyle:(Landroid/graphics/Paint$Style;)V
11: aload 2
aload 4
invokevirtual android.text.TextPaint.setStrokeJoin:(Landroid/graphics/Paint$Join;)V
12: aload 2
fload 5
invokevirtual android.text.TextPaint.setStrokeWidth:(F)V
13: aload 0
iconst_0
invokevirtual android.media.Cea608CCWidget$CCLineBox.setBackgroundSpans:(I)V
14: aload 0
aload 1
invokespecial android.widget.TextView.onDraw:(Landroid/graphics/Canvas;)V
15: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mBgColor:I
invokevirtual android.media.Cea608CCWidget$CCLineBox.setBackgroundSpans:(I)V
16: return
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 17 0 this Landroid/media/Cea608CCWidget$CCLineBox;
0 17 1 c Landroid/graphics/Canvas;
1 17 2 textPaint Landroid/text/TextPaint;
2 17 3 previousStyle Landroid/graphics/Paint$Style;
3 17 4 previousJoin Landroid/graphics/Paint$Join;
4 17 5 previousWidth F
MethodParameters:
Name Flags
c
private void drawEdgeRaisedOrDepressed(android.graphics.Canvas);
descriptor: (Landroid/graphics/Canvas;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.media.Cea608CCWidget$CCLineBox.getPaint:()Landroid/text/TextPaint;
astore 2
start local 2 1: aload 2
invokevirtual android.text.TextPaint.getStyle:()Landroid/graphics/Paint$Style;
astore 3
start local 3 2: aload 2
getstatic android.graphics.Paint$Style.FILL:Landroid/graphics/Paint$Style;
invokevirtual android.text.TextPaint.setStyle:(Landroid/graphics/Paint$Style;)V
3: aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeType:I
iconst_3
if_icmpne 4
iconst_1
goto 5
StackMap locals: android.text.TextPaint android.graphics.Paint$Style
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 4
start local 4 6: iload 4
ifeq 7
iconst_m1
goto 8
StackMap locals: int
StackMap stack:
7: aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeColor:I
StackMap locals:
StackMap stack: int
8: istore 5
start local 5 9: iload 4
ifeq 10
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mEdgeColor:I
goto 11
StackMap locals: int
StackMap stack:
10: iconst_m1
StackMap locals:
StackMap stack: int
11: istore 6
start local 6 12: aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mShadowRadius:F
fconst_2
fdiv
fstore 7
start local 7 13: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mShadowRadius:F
fload 7
fneg
fload 7
fneg
iload 5
invokevirtual android.media.Cea608CCWidget$CCLineBox.setShadowLayer:(FFFI)V
14: aload 0
aload 1
invokespecial android.widget.TextView.onDraw:(Landroid/graphics/Canvas;)V
15: aload 0
iconst_0
invokevirtual android.media.Cea608CCWidget$CCLineBox.setBackgroundSpans:(I)V
16: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mShadowRadius:F
fload 7
fload 7
iload 6
invokevirtual android.media.Cea608CCWidget$CCLineBox.setShadowLayer:(FFFI)V
17: aload 0
aload 1
invokespecial android.widget.TextView.onDraw:(Landroid/graphics/Canvas;)V
18: aload 2
aload 3
invokevirtual android.text.TextPaint.setStyle:(Landroid/graphics/Paint$Style;)V
19: aload 0
aload 0
getfield android.media.Cea608CCWidget$CCLineBox.mBgColor:I
invokevirtual android.media.Cea608CCWidget$CCLineBox.setBackgroundSpans:(I)V
20: return
end local 7 end local 6 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 21 0 this Landroid/media/Cea608CCWidget$CCLineBox;
0 21 1 c Landroid/graphics/Canvas;
1 21 2 textPaint Landroid/text/TextPaint;
2 21 3 previousStyle Landroid/graphics/Paint$Style;
6 21 4 raised Z
9 21 5 colorUp I
12 21 6 colorDown I
13 21 7 offset F
MethodParameters:
Name Flags
c
private void setBackgroundSpans(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.media.Cea608CCWidget$CCLineBox.getText:()Ljava/lang/CharSequence;
astore 2
start local 2 1: aload 2
instanceof android.text.Spannable
ifeq 11
2: aload 2
checkcast android.text.Spannable
astore 3
start local 3 3: aload 3
4: iconst_0
aload 3
invokeinterface android.text.Spannable.length:()I
ldc Landroid/media/Cea608CCParser$MutableBackgroundColorSpan;
5: invokeinterface android.text.Spannable.getSpans:(IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.media.Cea608CCParser$MutableBackgroundColorSpan[]
astore 4
start local 4 6: iconst_0
istore 5
start local 5 7: goto 10
8: StackMap locals: android.media.Cea608CCWidget$CCLineBox int java.lang.CharSequence android.text.Spannable android.media.Cea608CCParser$MutableBackgroundColorSpan[] int
StackMap stack:
aload 4
iload 5
aaload
iload 1
invokevirtual android.media.Cea608CCParser$MutableBackgroundColorSpan.setBackgroundColor:(I)V
9: iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
aload 4
arraylength
if_icmplt 8
end local 5 end local 4 end local 3 11: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Landroid/media/Cea608CCWidget$CCLineBox;
0 12 1 color I
1 12 2 text Ljava/lang/CharSequence;
3 11 3 spannable Landroid/text/Spannable;
6 11 4 bgSpans [Landroid/media/Cea608CCParser$MutableBackgroundColorSpan;
7 11 5 i I
MethodParameters:
Name Flags
color
}
SourceFile: "ClosedCaptionRenderer.java"
NestHost: android.media.Cea608CCWidget
InnerClasses:
public final Join = android.graphics.Paint$Join of android.graphics.Paint
public final Style = android.graphics.Paint$Style of android.graphics.Paint
public MutableBackgroundColorSpan = android.media.Cea608CCParser$MutableBackgroundColorSpan of android.media.Cea608CCParser
private CCLineBox = android.media.Cea608CCWidget$CCLineBox of android.media.Cea608CCWidget
public MeasureSpec = android.view.View$MeasureSpec of android.view.View
public final CaptionStyle = android.view.accessibility.CaptioningManager$CaptionStyle of android.view.accessibility.CaptioningManager