WebViewSubtitleOutput.smali
.class final Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;
.super Landroid/widget/FrameLayout;
.source "WebViewSubtitleOutput.java"
# interfaces
.implements Lcom/google/android/exoplayer2/ui/SubtitleView$a;
# instance fields
.field private final a:Lcom/google/android/exoplayer2/ui/CanvasSubtitleOutput;
.field private final b:Landroid/webkit/WebView;
.field private c:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/google/android/exoplayer2/text/d;",
">;"
}
.end annotation
.end field
.field private d:Lcom/google/android/exoplayer2/text/b;
.field private e:F
.field private f:I
.field private g:F
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
const/4 v0, 0x0
.line 1
invoke-direct {p0, p1, v0}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.registers 5
.line 2
invoke-direct {p0, p1, p2}, Landroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.line 3
invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List;
move-result-object v0
iput-object v0, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->c:Ljava/util/List;
.line 4
sget-object v0, Lcom/google/android/exoplayer2/text/b;->a:Lcom/google/android/exoplayer2/text/b;
iput-object v0, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->d:Lcom/google/android/exoplayer2/text/b;
const v0, 0x3d5a511a # 0.0533f
.line 5
iput v0, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->e:F
const/4 v0, 0x0
.line 6
iput v0, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->f:I
const v1, 0x3da3d70a # 0.08f
.line 7
iput v1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->g:F
.line 8
new-instance v1, Lcom/google/android/exoplayer2/ui/CanvasSubtitleOutput;
invoke-direct {v1, p1, p2}, Lcom/google/android/exoplayer2/ui/CanvasSubtitleOutput;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
iput-object v1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a:Lcom/google/android/exoplayer2/ui/CanvasSubtitleOutput;
.line 9
new-instance v1, Lcom/google/android/exoplayer2/ui/Y;
invoke-direct {v1, p0, p1, p2}, Lcom/google/android/exoplayer2/ui/Y;-><init>(Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;Landroid/content/Context;Landroid/util/AttributeSet;)V
iput-object v1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b:Landroid/webkit/WebView;
.line 10
iget-object p1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b:Landroid/webkit/WebView;
invoke-virtual {p1, v0}, Landroid/webkit/WebView;->setBackgroundColor(I)V
.line 11
iget-object p1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a:Lcom/google/android/exoplayer2/ui/CanvasSubtitleOutput;
invoke-virtual {p0, p1}, Landroid/widget/FrameLayout;->addView(Landroid/view/View;)V
.line 12
iget-object p1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b:Landroid/webkit/WebView;
invoke-virtual {p0, p1}, Landroid/widget/FrameLayout;->addView(Landroid/view/View;)V
return-void
.end method
.method private static a(I)I
.registers 2
const/4 v0, 0x1
if-eq p0, v0, :cond_b
const/4 v0, 0x2
if-eq p0, v0, :cond_8
const/4 p0, 0x0
return p0
:cond_8
const/16 p0, -0x64
return p0
:cond_b
const/16 p0, -0x32
return p0
.end method
.method private a(IF)Ljava/lang/String;
.registers 6
.line 18
invoke-virtual {p0}, Landroid/widget/FrameLayout;->getHeight()I
move-result v0
invoke-virtual {p0}, Landroid/widget/FrameLayout;->getHeight()I
move-result v1
invoke-virtual {p0}, Landroid/widget/FrameLayout;->getPaddingTop()I
move-result v2
sub-int/2addr v1, v2
invoke-virtual {p0}, Landroid/widget/FrameLayout;->getPaddingBottom()I
move-result v2
sub-int/2addr v1, v2
.line 19
invoke-static {p1, p2, v0, v1}, Lcom/google/android/exoplayer2/ui/U;->a(IFII)F
move-result p1
const p2, -0x800001
cmpl-float p2, p1, p2
if-nez p2, :cond_20
const-string p1, "unset"
return-object p1
.line 20
:cond_20
invoke-virtual {p0}, Landroid/widget/FrameLayout;->getContext()Landroid/content/Context;
move-result-object p2
invoke-virtual {p2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p2
invoke-virtual {p2}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object p2
iget p2, p2, Landroid/util/DisplayMetrics;->density:F
div-float/2addr p1, p2
const/4 p2, 0x1
.line 21
new-array p2, p2, [Ljava/lang/Object;
const/4 v0, 0x0
invoke-static {p1}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object p1
aput-object p1, p2, v0
const-string p1, "%.2fpx"
invoke-static {p1, p2}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method private static a(Landroid/text/Layout$Alignment;)Ljava/lang/String;
.registers 3
const-string v0, "center"
if-nez p0, :cond_5
return-object v0
.line 33
:cond_5
sget-object v1, Lcom/google/android/exoplayer2/ui/Z;->a:[I
invoke-virtual {p0}, Landroid/text/Layout$Alignment;->ordinal()I
move-result p0
aget p0, v1, p0
const/4 v1, 0x1
if-eq p0, v1, :cond_17
const/4 v1, 0x2
if-eq p0, v1, :cond_14
return-object v0
:cond_14
const-string p0, "end"
return-object p0
:cond_17
const-string p0, "start"
return-object p0
.end method
.method private static a(Lcom/google/android/exoplayer2/text/b;)Ljava/lang/String;
.registers 5
.line 22
iget v0, p0, Lcom/google/android/exoplayer2/text/b;->e:I
const/4 v1, 0x0
const/4 v2, 0x1
if-eq v0, v2, :cond_45
const/4 v3, 0x2
if-eq v0, v3, :cond_34
const/4 v3, 0x3
if-eq v0, v3, :cond_23
const/4 v3, 0x4
if-eq v0, v3, :cond_12
const-string p0, "unset"
return-object p0
.line 23
:cond_12
new-array v0, v2, [Ljava/lang/Object;
iget p0, p0, Lcom/google/android/exoplayer2/text/b;->f:I
.line 24
invoke-static {p0}, Lcom/google/android/exoplayer2/ui/D;->a(I)Ljava/lang/String;
move-result-object p0
aput-object p0, v0, v1
const-string p0, "-0.05em -0.05em 0.15em %s"
.line 25
invoke-static {p0, v0}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
return-object p0
.line 26
:cond_23
new-array v0, v2, [Ljava/lang/Object;
iget p0, p0, Lcom/google/android/exoplayer2/text/b;->f:I
.line 27
invoke-static {p0}, Lcom/google/android/exoplayer2/ui/D;->a(I)Ljava/lang/String;
move-result-object p0
aput-object p0, v0, v1
const-string p0, "0.06em 0.08em 0.15em %s"
.line 28
invoke-static {p0, v0}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
return-object p0
.line 29
:cond_34
new-array v0, v2, [Ljava/lang/Object;
iget p0, p0, Lcom/google/android/exoplayer2/text/b;->f:I
invoke-static {p0}, Lcom/google/android/exoplayer2/ui/D;->a(I)Ljava/lang/String;
move-result-object p0
aput-object p0, v0, v1
const-string p0, "0.1em 0.12em 0.15em %s"
invoke-static {p0, v0}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
return-object p0
.line 30
:cond_45
new-array v0, v2, [Ljava/lang/Object;
iget p0, p0, Lcom/google/android/exoplayer2/text/b;->f:I
.line 31
invoke-static {p0}, Lcom/google/android/exoplayer2/ui/D;->a(I)Ljava/lang/String;
move-result-object p0
aput-object p0, v0, v1
const-string p0, "1px 1px 0 %1$s, 1px -1px 0 %1$s, -1px 1px 0 %1$s, -1px -1px 0 %1$s"
.line 32
invoke-static {p0, v0}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method private static b(I)Ljava/lang/String;
.registers 2
const/4 v0, 0x1
if-eq p0, v0, :cond_c
const/4 v0, 0x2
if-eq p0, v0, :cond_9
const-string p0, "horizontal-tb"
return-object p0
:cond_9
const-string p0, "vertical-lr"
return-object p0
:cond_c
const-string p0, "vertical-rl"
return-object p0
.end method
.method private b()V
.registers 27
move-object/from16 v0, p0
.line 1
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const/4 v2, 0x4
.line 2
new-array v3, v2, [Ljava/lang/Object;
iget-object v4, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->d:Lcom/google/android/exoplayer2/text/b;
iget v4, v4, Lcom/google/android/exoplayer2/text/b;->b:I
.line 3
invoke-static {v4}, Lcom/google/android/exoplayer2/ui/D;->a(I)Ljava/lang/String;
move-result-object v4
const/4 v5, 0x0
aput-object v4, v3, v5
iget v4, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->f:I
iget v6, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->e:F
.line 4
invoke-direct {v0, v4, v6}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a(IF)Ljava/lang/String;
move-result-object v4
const/4 v6, 0x1
aput-object v4, v3, v6
const v4, 0x3f99999a # 1.2f
.line 5
invoke-static {v4}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v7
const/4 v8, 0x2
aput-object v7, v3, v8
iget-object v7, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->d:Lcom/google/android/exoplayer2/text/b;
.line 6
invoke-static {v7}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a(Lcom/google/android/exoplayer2/text/b;)Ljava/lang/String;
move-result-object v7
const/4 v9, 0x3
aput-object v7, v3, v9
const-string v7, "<body><div style=\'-webkit-user-select:none;position:fixed;top:0;bottom:0;left:0;right:0;color:%s;font-size:%s;line-height:%.2fem;text-shadow:%s;\'>"
.line 7
invoke-static {v7, v3}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v3
.line 8
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 9
new-instance v3, Ljava/util/HashMap;
invoke-direct {v3}, Ljava/util/HashMap;-><init>()V
const-string v7, "default_bg"
.line 10
invoke-static {v7}, Lcom/google/android/exoplayer2/ui/D;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v10
new-array v11, v6, [Ljava/lang/Object;
iget-object v12, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->d:Lcom/google/android/exoplayer2/text/b;
iget v12, v12, Lcom/google/android/exoplayer2/text/b;->c:I
.line 11
invoke-static {v12}, Lcom/google/android/exoplayer2/ui/D;->a(I)Ljava/lang/String;
move-result-object v12
aput-object v12, v11, v5
const-string v12, "background-color:%s;"
invoke-static {v12, v11}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v11
.line 12
invoke-interface {v3, v10, v11}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
const/4 v10, 0x0
.line 13
:goto_5d
iget-object v11, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->c:Ljava/util/List;
invoke-interface {v11}, Ljava/util/List;->size()I
move-result v11
if-ge v10, v11, :cond_224
.line 14
iget-object v11, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->c:Ljava/util/List;
invoke-interface {v11, v10}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v11
check-cast v11, Lcom/google/android/exoplayer2/text/d;
.line 15
iget v12, v11, Lcom/google/android/exoplayer2/text/d;->h:F
const v13, -0x800001
const/high16 v14, 0x42c80000 # 100.0f
cmpl-float v15, v12, v13
if-eqz v15, :cond_7b
mul-float v12, v12, v14
goto :goto_7d
:cond_7b
const/high16 v12, 0x42480000 # 50.0f
.line 16
:goto_7d
iget v15, v11, Lcom/google/android/exoplayer2/text/d;->i:I
invoke-static {v15}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a(I)I
move-result v15
.line 17
iget v2, v11, Lcom/google/android/exoplayer2/text/d;->e:F
const/high16 v16, 0x3f800000 # 1.0f
const-string v9, "%.2f%%"
cmpl-float v17, v2, v13
if-eqz v17, :cond_df
.line 18
iget v8, v11, Lcom/google/android/exoplayer2/text/d;->f:I
if-eq v8, v6, :cond_b2
.line 19
new-array v8, v6, [Ljava/lang/Object;
mul-float v2, v2, v14
invoke-static {v2}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v2
aput-object v2, v8, v5
invoke-static {v9, v8}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
.line 20
iget v8, v11, Lcom/google/android/exoplayer2/text/d;->p:I
if-ne v8, v6, :cond_ab
.line 21
iget v8, v11, Lcom/google/android/exoplayer2/text/d;->g:I
invoke-static {v8}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a(I)I
move-result v8
neg-int v8, v8
goto :goto_f3
.line 22
:cond_ab
iget v8, v11, Lcom/google/android/exoplayer2/text/d;->g:I
invoke-static {v8}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a(I)I
move-result v8
goto :goto_f3
:cond_b2
const/4 v8, 0x0
const-string v13, "%.2fem"
cmpl-float v8, v2, v8
if-ltz v8, :cond_ca
.line 23
new-array v8, v6, [Ljava/lang/Object;
mul-float v2, v2, v4
invoke-static {v2}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v2
aput-object v2, v8, v5
invoke-static {v13, v8}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
move-object v13, v2
const/4 v2, 0x0
goto :goto_dd
.line 24
:cond_ca
new-array v8, v6, [Ljava/lang/Object;
neg-float v2, v2
sub-float v2, v2, v16
mul-float v2, v2, v4
invoke-static {v2}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v2
aput-object v2, v8, v5
invoke-static {v13, v8}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
move-object v13, v2
const/4 v2, 0x1
:goto_dd
const/4 v8, 0x0
goto :goto_f5
.line 25
:cond_df
new-array v2, v6, [Ljava/lang/Object;
iget v8, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->g:F
sub-float v16, v16, v8
mul-float v16, v16, v14
invoke-static/range {v16 .. v16}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v8
aput-object v8, v2, v5
invoke-static {v9, v2}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
const/16 v8, -0x64
:goto_f3
move-object v13, v2
const/4 v2, 0x0
.line 26
:goto_f5
iget v4, v11, Lcom/google/android/exoplayer2/text/d;->j:F
const v18, -0x800001
cmpl-float v18, v4, v18
if-eqz v18, :cond_10e
.line 27
new-array v5, v6, [Ljava/lang/Object;
mul-float v4, v4, v14
invoke-static {v4}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v4
const/4 v14, 0x0
aput-object v4, v5, v14
invoke-static {v9, v5}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v4
goto :goto_110
:cond_10e
const-string v4, "fit-content"
.line 28
:goto_110
iget-object v5, v11, Lcom/google/android/exoplayer2/text/d;->c:Landroid/text/Layout$Alignment;
invoke-static {v5}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a(Landroid/text/Layout$Alignment;)Ljava/lang/String;
move-result-object v5
.line 29
iget v9, v11, Lcom/google/android/exoplayer2/text/d;->p:I
invoke-static {v9}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b(I)Ljava/lang/String;
move-result-object v9
.line 30
iget v14, v11, Lcom/google/android/exoplayer2/text/d;->n:I
iget v6, v11, Lcom/google/android/exoplayer2/text/d;->o:F
invoke-direct {v0, v14, v6}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a(IF)Ljava/lang/String;
move-result-object v6
.line 31
iget-boolean v14, v11, Lcom/google/android/exoplayer2/text/d;->l:Z
if-eqz v14, :cond_12b
iget v14, v11, Lcom/google/android/exoplayer2/text/d;->m:I
goto :goto_12f
:cond_12b
iget-object v14, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->d:Lcom/google/android/exoplayer2/text/b;
iget v14, v14, Lcom/google/android/exoplayer2/text/b;->d:I
:goto_12f
invoke-static {v14}, Lcom/google/android/exoplayer2/ui/D;->a(I)Ljava/lang/String;
move-result-object v14
move/from16 v19, v8
.line 32
iget v8, v11, Lcom/google/android/exoplayer2/text/d;->p:I
const-string v20, "right"
const-string v21, "left"
const-string v22, "top"
move/from16 v23, v15
const/4 v15, 0x1
if-eq v8, v15, :cond_154
const/4 v15, 0x2
if-eq v8, v15, :cond_14e
if-eqz v2, :cond_149
const-string v22, "bottom"
:cond_149
move-object/from16 v20, v22
move-object/from16 v22, v21
goto :goto_157
:cond_14e
if-eqz v2, :cond_151
goto :goto_157
:cond_151
:goto_151
move-object/from16 v20, v21
goto :goto_157
:cond_154
if-eqz v2, :cond_157
goto :goto_151
.line 33
:cond_157
:goto_157
iget v2, v11, Lcom/google/android/exoplayer2/text/d;->p:I
const/4 v8, 0x2
if-eq v2, v8, :cond_169
const/4 v8, 0x1
if-ne v2, v8, :cond_160
goto :goto_169
:cond_160
const-string v2, "width"
move/from16 v25, v23
move/from16 v23, v19
move/from16 v19, v25
goto :goto_16b
:cond_169
:goto_169
const-string v2, "height"
.line 34
:goto_16b
iget-object v8, v11, Lcom/google/android/exoplayer2/text/d;->b:Ljava/lang/CharSequence;
.line 35
invoke-virtual/range {p0 .. p0}, Landroid/widget/FrameLayout;->getContext()Landroid/content/Context;
move-result-object v11
invoke-virtual {v11}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v11
invoke-virtual {v11}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object v11
iget v11, v11, Landroid/util/DisplayMetrics;->density:F
.line 36
invoke-static {v8, v11}, Lcom/google/android/exoplayer2/ui/G;->a(Ljava/lang/CharSequence;F)Lcom/google/android/exoplayer2/ui/G$a;
move-result-object v8
.line 37
invoke-interface {v3}, Ljava/util/Map;->keySet()Ljava/util/Set;
move-result-object v11
invoke-interface {v11}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v11
:goto_187
invoke-interface {v11}, Ljava/util/Iterator;->hasNext()Z
move-result v15
if-eqz v15, :cond_1b9
invoke-interface {v11}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v15
check-cast v15, Ljava/lang/String;
.line 38
invoke-interface {v3, v15}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v21
move-object/from16 v24, v11
move-object/from16 v11, v21
check-cast v11, Ljava/lang/String;
invoke-interface {v3, v15, v11}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v11
check-cast v11, Ljava/lang/String;
if-eqz v11, :cond_1b2
.line 39
invoke-interface {v3, v15}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v15
invoke-virtual {v11, v15}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v11
if-eqz v11, :cond_1b0
goto :goto_1b2
:cond_1b0
const/4 v11, 0x0
goto :goto_1b3
:cond_1b2
:goto_1b2
const/4 v11, 0x1
.line 40
:goto_1b3
invoke-static {v11}, Lcom/google/android/exoplayer2/util/d;->b(Z)V
move-object/from16 v11, v24
goto :goto_187
:cond_1b9
const/16 v11, 0xc
.line 41
new-array v11, v11, [Ljava/lang/Object;
const/4 v15, 0x0
aput-object v22, v11, v15
.line 42
invoke-static {v12}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v12
const/4 v15, 0x1
aput-object v12, v11, v15
const/4 v12, 0x2
aput-object v20, v11, v12
const/4 v15, 0x3
aput-object v13, v11, v15
const/4 v13, 0x4
aput-object v2, v11, v13
const/4 v2, 0x5
aput-object v4, v11, v2
const/4 v2, 0x6
aput-object v5, v11, v2
const/4 v2, 0x7
aput-object v9, v11, v2
const/16 v2, 0x8
aput-object v6, v11, v2
const/16 v2, 0x9
aput-object v14, v11, v2
const/16 v2, 0xa
.line 43
invoke-static/range {v19 .. v19}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v11, v2
const/16 v2, 0xb
.line 44
invoke-static/range {v23 .. v23}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v11, v2
const-string v2, "<div style=\'position:absolute;%s:%.2f%%;%s:%s;%s:%s;text-align:%s;writing-mode:%s;font-size:%s;background-color:%s;transform:translate(%s%%,%s%%);\'>"
.line 45
invoke-static {v2, v11}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
.line 46
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/4 v2, 0x1
new-array v4, v2, [Ljava/lang/Object;
const/4 v2, 0x0
aput-object v7, v4, v2
const-string v2, "<span class=\'%s\'>"
.line 47
invoke-static {v2, v4}, Lcom/google/android/exoplayer2/util/L;->a(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, v8, Lcom/google/android/exoplayer2/ui/G$a;->a:Ljava/lang/String;
.line 48
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, "</span>"
.line 49
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, "</div>"
.line 50
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v10, v10, 0x1
const/4 v2, 0x4
const v4, 0x3f99999a # 1.2f
const/4 v5, 0x0
const/4 v6, 0x1
const/4 v8, 0x2
const/4 v9, 0x3
goto/16 :goto_5d
:cond_224
const-string v2, "</div></body></html>"
.line 51
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 52
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "<html><head><style>"
.line 53
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 54
invoke-interface {v3}, Ljava/util/Map;->keySet()Ljava/util/Set;
move-result-object v4
invoke-interface {v4}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v4
:goto_23b
invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z
move-result v5
if-eqz v5, :cond_25e
invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v5
check-cast v5, Ljava/lang/String;
.line 55
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v6, "{"
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-interface {v3, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Ljava/lang/String;
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v5, "}"
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_23b
:cond_25e
const-string v3, "</style></head>"
.line 56
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 57
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
const/4 v3, 0x0
invoke-virtual {v1, v3, v2}, Ljava/lang/StringBuilder;->insert(ILjava/lang/String;)Ljava/lang/StringBuilder;
.line 58
iget-object v2, v0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b:Landroid/webkit/WebView;
.line 59
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
sget-object v3, Lcom/google/common/base/d;->c:Ljava/nio/charset/Charset;
invoke-virtual {v1, v3}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B
move-result-object v1
const/4 v3, 0x1
invoke-static {v1, v3}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object v1
const-string v3, "text/html"
const-string v4, "base64"
.line 60
invoke-virtual {v2, v1, v3, v4}, Landroid/webkit/WebView;->loadData(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
# virtual methods
.method public a()V
.registers 2
.line 17
iget-object v0, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b:Landroid/webkit/WebView;
invoke-virtual {v0}, Landroid/webkit/WebView;->destroy()V
return-void
.end method
.method public a(Ljava/util/List;Lcom/google/android/exoplayer2/text/b;FIF)V
.registers 12
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Lcom/google/android/exoplayer2/text/d;",
">;",
"Lcom/google/android/exoplayer2/text/b;",
"FIF)V"
}
.end annotation
.line 1
iput-object p2, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->d:Lcom/google/android/exoplayer2/text/b;
.line 2
iput p3, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->e:F
.line 3
iput p4, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->f:I
.line 4
iput p5, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->g:F
.line 5
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 6
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
const/4 v2, 0x0
.line 7
:goto_13
invoke-interface {p1}, Ljava/util/List;->size()I
move-result v3
if-ge v2, v3, :cond_2d
.line 8
invoke-interface {p1, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/android/exoplayer2/text/d;
.line 9
iget-object v4, v3, Lcom/google/android/exoplayer2/text/d;->d:Landroid/graphics/Bitmap;
if-eqz v4, :cond_27
.line 10
invoke-interface {v1, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_2a
.line 11
:cond_27
invoke-interface {v0, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:goto_2a
add-int/lit8 v2, v2, 0x1
goto :goto_13
.line 12
:cond_2d
iget-object p1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->c:Ljava/util/List;
invoke-interface {p1}, Ljava/util/List;->isEmpty()Z
move-result p1
if-eqz p1, :cond_3b
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result p1
if-nez p1, :cond_40
.line 13
:cond_3b
iput-object v0, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->c:Ljava/util/List;
.line 14
invoke-direct {p0}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b()V
.line 15
:cond_40
iget-object v0, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->a:Lcom/google/android/exoplayer2/ui/CanvasSubtitleOutput;
move-object v2, p2
move v3, p3
move v4, p4
move v5, p5
invoke-virtual/range {v0 .. v5}, Lcom/google/android/exoplayer2/ui/CanvasSubtitleOutput;->a(Ljava/util/List;Lcom/google/android/exoplayer2/text/b;FIF)V
.line 16
invoke-virtual {p0}, Landroid/widget/FrameLayout;->invalidate()V
return-void
.end method
.method protected onLayout(ZIIII)V
.registers 6
.line 1
invoke-super/range {p0 .. p5}, Landroid/widget/FrameLayout;->onLayout(ZIIII)V
if-eqz p1, :cond_10
.line 2
iget-object p1, p0, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->c:Ljava/util/List;
invoke-interface {p1}, Ljava/util/List;->isEmpty()Z
move-result p1
if-nez p1, :cond_10
.line 3
invoke-direct {p0}, Lcom/google/android/exoplayer2/ui/WebViewSubtitleOutput;->b()V
:cond_10
return-void
.end method