WebvttCssStyle.smali
.class final Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.super Ljava/lang/Object;
.source "WebvttCssStyle.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle$FontSizeUnit;,
Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle$StyleFlags;
}
.end annotation
# static fields
.field public static final FONT_SIZE_UNIT_EM:I = 0x2
.field public static final FONT_SIZE_UNIT_PERCENT:I = 0x3
.field public static final FONT_SIZE_UNIT_PIXEL:I = 0x1
.field private static final OFF:I = 0x0
.field private static final ON:I = 0x1
.field public static final STYLE_BOLD:I = 0x1
.field public static final STYLE_BOLD_ITALIC:I = 0x3
.field public static final STYLE_ITALIC:I = 0x2
.field public static final STYLE_NORMAL:I = 0x0
.field public static final UNSPECIFIED:I = -0x1
# instance fields
.field private backgroundColor:I
.field private bold:I
.field private fontColor:I
.field private fontFamily:Ljava/lang/String;
.field private fontSize:F
.field private fontSizeUnit:I
.field private hasBackgroundColor:Z
.field private hasFontColor:Z
.field private italic:I
.field private linethrough:I
.field private targetClasses:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
.field private targetId:Ljava/lang/String;
.field private targetTag:Ljava/lang/String;
.field private targetVoice:Ljava/lang/String;
.field private textAlign:Landroid/text/Layout$Alignment;
.field private underline:I
# direct methods
.method public constructor <init>()V
.registers 1
.line 85
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 86
invoke-virtual {p0}, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->reset()V
return-void
.end method
.method private static updateScoreForMatch(ILjava/lang/String;Ljava/lang/String;I)I
.registers 5
.line 305
invoke-virtual {p1}, Ljava/lang/String;->isEmpty()Z
move-result v0
if-nez v0, :cond_13
const/4 v0, -0x1
if-ne p0, v0, :cond_a
goto :goto_13
.line 308
:cond_a
invoke-virtual {p1, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_12
add-int v0, p0, p3
:cond_12
return v0
:cond_13
:goto_13
return p0
.end method
# virtual methods
.method public cascadeFrom(Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;)V
.registers 4
.line 273
iget-boolean v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasFontColor:Z
if-eqz v0, :cond_9
.line 274
iget v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontColor:I
invoke-virtual {p0, v0}, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->setFontColor(I)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.line 276
:cond_9
iget v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->bold:I
const/4 v1, -0x1
if-eq v0, v1, :cond_10
.line 277
iput v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->bold:I
.line 279
:cond_10
iget v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->italic:I
if-eq v0, v1, :cond_16
.line 280
iput v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->italic:I
.line 282
:cond_16
iget-object v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontFamily:Ljava/lang/String;
if-eqz v0, :cond_1c
.line 283
iput-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontFamily:Ljava/lang/String;
.line 285
:cond_1c
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->linethrough:I
if-ne v0, v1, :cond_24
.line 286
iget v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->linethrough:I
iput v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->linethrough:I
.line 288
:cond_24
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->underline:I
if-ne v0, v1, :cond_2c
.line 289
iget v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->underline:I
iput v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->underline:I
.line 291
:cond_2c
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->textAlign:Landroid/text/Layout$Alignment;
if-nez v0, :cond_34
.line 292
iget-object v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->textAlign:Landroid/text/Layout$Alignment;
iput-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->textAlign:Landroid/text/Layout$Alignment;
.line 294
:cond_34
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSizeUnit:I
if-ne v0, v1, :cond_40
.line 295
iget v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSizeUnit:I
iput v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSizeUnit:I
.line 296
iget v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSize:F
iput v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSize:F
.line 298
:cond_40
iget-boolean v0, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasBackgroundColor:Z
if-eqz v0, :cond_49
.line 299
iget p1, p1, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->backgroundColor:I
invoke-virtual {p0, p1}, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->setBackgroundColor(I)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
:cond_49
return-void
.end method
.method public getBackgroundColor()I
.registers 3
.line 228
iget-boolean v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasBackgroundColor:Z
if-eqz v0, :cond_7
.line 231
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->backgroundColor:I
return v0
.line 229
:cond_7
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Background color not defined."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public getFontColor()I
.registers 3
.line 211
iget-boolean v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasFontColor:Z
if-eqz v0, :cond_7
.line 214
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontColor:I
return v0
.line 212
:cond_7
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Font color not defined"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public getFontFamily()Ljava/lang/String;
.registers 2
.line 202
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontFamily:Ljava/lang/String;
return-object v0
.end method
.method public getFontSize()F
.registers 2
.line 269
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSize:F
return v0
.end method
.method public getFontSizeUnit()I
.registers 2
.line 265
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSizeUnit:I
return v0
.end method
.method public getSpecificityScore(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)I
.registers 8
.line 141
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetId:Ljava/lang/String;
invoke-virtual {v0}, Ljava/lang/String;->isEmpty()Z
move-result v0
if-eqz v0, :cond_25
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetTag:Ljava/lang/String;
invoke-virtual {v0}, Ljava/lang/String;->isEmpty()Z
move-result v0
if-eqz v0, :cond_25
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetClasses:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v0
if-eqz v0, :cond_25
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetVoice:Ljava/lang/String;
.line 142
invoke-virtual {v0}, Ljava/lang/String;->isEmpty()Z
move-result v0
if-eqz v0, :cond_25
.line 145
invoke-virtual {p2}, Ljava/lang/String;->isEmpty()Z
move-result p1
return p1
.line 148
:cond_25
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetId:Ljava/lang/String;
const/high16 v1, 0x40000000 # 2.0f
const/4 v2, 0x0
invoke-static {v2, v0, p1, v1}, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->updateScoreForMatch(ILjava/lang/String;Ljava/lang/String;I)I
move-result p1
.line 149
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetTag:Ljava/lang/String;
const/4 v1, 0x2
invoke-static {p1, v0, p2, v1}, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->updateScoreForMatch(ILjava/lang/String;Ljava/lang/String;I)I
move-result p1
.line 150
iget-object p2, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetVoice:Ljava/lang/String;
const/4 v0, 0x4
invoke-static {p1, p2, p4, v0}, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->updateScoreForMatch(ILjava/lang/String;Ljava/lang/String;I)I
move-result p1
const/4 p2, -0x1
if-eq p1, p2, :cond_56
.line 151
invoke-static {p3}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p2
iget-object p3, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetClasses:Ljava/util/List;
invoke-interface {p2, p3}, Ljava/util/List;->containsAll(Ljava/util/Collection;)Z
move-result p2
if-nez p2, :cond_4c
goto :goto_56
.line 154
:cond_4c
iget-object p2, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetClasses:Ljava/util/List;
invoke-interface {p2}, Ljava/util/List;->size()I
move-result p2
mul-int/lit8 p2, p2, 0x4
add-int/2addr p1, p2
return p1
:cond_56
:goto_56
return v2
.end method
.method public getStyle()I
.registers 5
.line 167
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->bold:I
const/4 v1, -0x1
if-ne v0, v1, :cond_a
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->italic:I
if-ne v0, v1, :cond_a
return v1
.line 170
:cond_a
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->bold:I
const/4 v1, 0x0
const/4 v2, 0x1
if-ne v0, v2, :cond_12
const/4 v0, 0x1
goto :goto_13
:cond_12
const/4 v0, 0x0
:goto_13
iget v3, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->italic:I
if-ne v3, v2, :cond_18
const/4 v1, 0x2
:cond_18
or-int/2addr v0, v1
return v0
.end method
.method public getTextAlign()Landroid/text/Layout$Alignment;
.registers 2
.line 245
iget-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->textAlign:Landroid/text/Layout$Alignment;
return-object v0
.end method
.method public hasBackgroundColor()Z
.registers 2
.line 241
iget-boolean v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasBackgroundColor:Z
return v0
.end method
.method public hasFontColor()Z
.registers 2
.line 224
iget-boolean v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasFontColor:Z
return v0
.end method
.method public isLinethrough()Z
.registers 3
.line 175
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->linethrough:I
const/4 v1, 0x1
if-ne v0, v1, :cond_6
goto :goto_7
:cond_6
const/4 v1, 0x0
:goto_7
return v1
.end method
.method public isUnderline()Z
.registers 3
.line 184
iget v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->underline:I
const/4 v1, 0x1
if-ne v0, v1, :cond_6
goto :goto_7
:cond_6
const/4 v1, 0x0
:goto_7
return v1
.end method
.method public reset()V
.registers 3
const-string v0, ""
.line 90
iput-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetId:Ljava/lang/String;
.line 91
iput-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetTag:Ljava/lang/String;
.line 92
invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List;
move-result-object v1
iput-object v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetClasses:Ljava/util/List;
.line 93
iput-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetVoice:Ljava/lang/String;
const/4 v0, 0x0
.line 94
iput-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontFamily:Ljava/lang/String;
const/4 v1, 0x0
.line 95
iput-boolean v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasFontColor:Z
.line 96
iput-boolean v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasBackgroundColor:Z
const/4 v1, -0x1
.line 97
iput v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->linethrough:I
.line 98
iput v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->underline:I
.line 99
iput v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->bold:I
.line 100
iput v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->italic:I
.line 101
iput v1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSizeUnit:I
.line 102
iput-object v0, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->textAlign:Landroid/text/Layout$Alignment;
return-void
.end method
.method public setBackgroundColor(I)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 235
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->backgroundColor:I
const/4 p1, 0x1
.line 236
iput-boolean p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasBackgroundColor:Z
return-object p0
.end method
.method public setBold(Z)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 192
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->bold:I
return-object p0
.end method
.method public setFontColor(I)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 218
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontColor:I
const/4 p1, 0x1
.line 219
iput-boolean p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->hasFontColor:Z
return-object p0
.end method
.method public setFontFamily(Ljava/lang/String;)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 206
invoke-static {p1}, Lcom/google/android/exoplayer2/util/Util;->toLowerInvariant(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontFamily:Ljava/lang/String;
return-object p0
.end method
.method public setFontSize(F)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 254
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSize:F
return-object p0
.end method
.method public setFontSizeUnit(S)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 259
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->fontSizeUnit:I
return-object p0
.end method
.method public setItalic(Z)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 197
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->italic:I
return-object p0
.end method
.method public setLinethrough(Z)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 179
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->linethrough:I
return-object p0
.end method
.method public setTargetClasses([Ljava/lang/String;)V
.registers 2
.line 114
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetClasses:Ljava/util/List;
return-void
.end method
.method public setTargetId(Ljava/lang/String;)V
.registers 2
.line 106
iput-object p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetId:Ljava/lang/String;
return-void
.end method
.method public setTargetTagName(Ljava/lang/String;)V
.registers 2
.line 110
iput-object p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetTag:Ljava/lang/String;
return-void
.end method
.method public setTargetVoice(Ljava/lang/String;)V
.registers 2
.line 118
iput-object p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->targetVoice:Ljava/lang/String;
return-void
.end method
.method public setTextAlign(Landroid/text/Layout$Alignment;)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 249
iput-object p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->textAlign:Landroid/text/Layout$Alignment;
return-object p0
.end method
.method public setUnderline(Z)Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;
.registers 2
.line 188
iput p1, p0, Lcom/google/android/exoplayer2/text/webvtt/WebvttCssStyle;->underline:I
return-object p0
.end method