c.smali
.class public Lcom/cm/reminder/asr/helper/htmltext/c;
.super Lcom/cm/reminder/asr/helper/htmltext/a;
.source "SpanTag.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/cm/reminder/asr/helper/htmltext/c$a;,
Lcom/cm/reminder/asr/helper/htmltext/c$b;
}
.end annotation
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 2
.prologue
.line 24
invoke-direct {p0, p1}, Lcom/cm/reminder/asr/helper/htmltext/a;-><init>(Landroid/content/Context;)V
.line 25
return-void
.end method
.method private static a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 8
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.prologue
const/4 v1, 0x0
.line 54
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_9
move-object v0, v1
.line 65
:goto_8
return-object v0
.line 55
:cond_9
invoke-virtual {p0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v0
const-string v2, ";"
invoke-virtual {v0, v2}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object v2
.line 56
if-nez v2, :cond_17
move-object v0, v1
goto :goto_8
.line 57
:cond_17
const/4 v0, 0x0
:goto_18
array-length v3, v2
if-ge v0, v3, :cond_42
.line 58
aget-object v3, v2, v0
const-string v4, " "
const-string v5, ""
invoke-virtual {v3, v4, v5}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v3
.line 59
invoke-virtual {v3, p1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v4
if-nez v4, :cond_3b
.line 60
const-string v4, ":"
invoke-virtual {v3, v4}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object v3
.line 61
if-eqz v3, :cond_3b
array-length v4, v3
const/4 v5, 0x2
if-eq v4, v5, :cond_3e
.line 57
:cond_3b
add-int/lit8 v0, v0, 0x1
goto :goto_18
.line 62
:cond_3e
const/4 v0, 0x1
aget-object v0, v3, v0
goto :goto_8
:cond_42
move-object v0, v1
.line 65
goto :goto_8
.end method
.method private static a(Landroid/text/Editable;Ljava/lang/Class;Ljava/lang/Object;)V
.registers 6
.prologue
.line 211
invoke-static {p0, p1}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Spanned;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v0
.line 212
if-eqz v0, :cond_f
.line 213
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v2, 0x0
aput-object p2, v1, v2
invoke-static {p0, v0, v1}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Spannable;Ljava/lang/Object;[Ljava/lang/Object;)V
.line 215
:cond_f
return-void
.end method
.method private static a(Landroid/text/Editable;Ljava/lang/Object;)V
.registers 4
.prologue
.line 205
invoke-interface {p0}, Landroid/text/Editable;->length()I
move-result v0
.line 206
const/16 v1, 0x11
invoke-interface {p0, p1, v0, v0, v1}, Landroid/text/Editable;->setSpan(Ljava/lang/Object;III)V
.line 207
return-void
.end method
.method private a(Landroid/text/Editable;Ljava/lang/String;)V
.registers 8
.prologue
const/4 v1, -0x1
.line 149
invoke-static {p2}, Lcom/cm/reminder/asr/helper/htmltext/c;->f(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 150
invoke-static {p2}, Lcom/cm/reminder/asr/helper/htmltext/c;->g(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
.line 151
invoke-static {p2}, Lcom/cm/reminder/asr/helper/htmltext/c;->h(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
.line 154
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_70
.line 155
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_70
.line 156
invoke-direct {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->c(Ljava/lang/String;)I
move-result v0
.line 160
:goto_1d
invoke-static {v3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_6e
.line 161
const-string v2, "underline"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_45
.line 162
const/4 v2, 0x1
.line 173
:goto_2c
invoke-static {v4}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v4
if-nez v4, :cond_3c
.line 174
const-string v4, "normal"
invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_63
.line 175
const/16 v1, 0x190
.line 181
:cond_3c
:goto_3c
new-instance v3, Lcom/cm/reminder/asr/helper/htmltext/c$b;
invoke-direct {v3, v0, v2, v1}, Lcom/cm/reminder/asr/helper/htmltext/c$b;-><init>(III)V
invoke-static {p1, v3}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Editable;Ljava/lang/Object;)V
.line 182
return-void
.line 163
:cond_45
const-string v2, "line-through"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_4f
.line 164
const/4 v2, 0x2
goto :goto_2c
.line 166
:cond_4f
const-string v2, "overline"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_59
.line 167
const/4 v2, 0x3
goto :goto_2c
.line 168
:cond_59
const-string v2, "none"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_6e
.line 169
const/4 v2, 0x0
goto :goto_2c
.line 176
:cond_63
const-string v4, "bold"
invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_3c
.line 177
const/16 v1, 0x2ee
goto :goto_3c
:cond_6e
move v2, v1
goto :goto_2c
:cond_70
move v0, v1
goto :goto_1d
.end method
.method private static varargs a(Landroid/text/Spannable;Ljava/lang/Object;[Ljava/lang/Object;)V
.registers 9
.prologue
.line 219
invoke-interface {p0, p1}, Landroid/text/Spannable;->getSpanStart(Ljava/lang/Object;)I
move-result v1
.line 220
invoke-interface {p0, p1}, Landroid/text/Spannable;->removeSpan(Ljava/lang/Object;)V
.line 222
invoke-interface {p0}, Landroid/text/Spannable;->length()I
move-result v2
.line 223
if-eq v1, v2, :cond_1b
.line 224
array-length v3, p2
const/4 v0, 0x0
:goto_f
if-ge v0, v3, :cond_1b
aget-object v4, p2, v0
.line 225
const/16 v5, 0x21
invoke-interface {p0, v4, v1, v2, v5}, Landroid/text/Spannable;->setSpan(Ljava/lang/Object;III)V
.line 224
add-int/lit8 v0, v0, 0x1
goto :goto_f
.line 228
:cond_1b
return-void
.end method
.method private c(Ljava/lang/String;)I
.registers 6
.prologue
const/4 v3, 0x2
const/4 v2, 0x0
.line 29
invoke-virtual {p1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v0
.line 30
const-string v1, "px"
invoke-virtual {v0, v1}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_1e
.line 31
const-string v1, "px"
invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v1
invoke-virtual {v0, v2, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
move-result-wide v0
double-to-int v0, v0
.line 39
:goto_1d
return v0
.line 32
:cond_1e
const-string v1, "sp"
invoke-virtual {v0, v1}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_47
.line 33
const-string v1, "sp"
invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v1
invoke-virtual {v0, v2, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
move-result-wide v0
double-to-float v0, v0
.line 34
invoke-virtual {p0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a()Landroid/content/Context;
move-result-object v1
invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object v1
invoke-static {v3, v0, v1}, Landroid/util/TypedValue;->applyDimension(IFLandroid/util/DisplayMetrics;)F
move-result v0
float-to-int v0, v0
goto :goto_1d
.line 35
:cond_47
invoke-static {v0}, Landroid/text/TextUtils;->isDigitsOnly(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_64
.line 36
invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
move-result-wide v0
double-to-float v0, v0
.line 37
invoke-virtual {p0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a()Landroid/content/Context;
move-result-object v1
invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object v1
invoke-static {v3, v0, v1}, Landroid/util/TypedValue;->applyDimension(IFLandroid/util/DisplayMetrics;)F
move-result v0
float-to-int v0, v0
goto :goto_1d
.line 39
:cond_64
const/4 v0, -0x1
goto :goto_1d
.end method
.method private static d(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.prologue
.line 43
const-string v0, "text-color"
.line 44
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 45
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_12
.line 46
const-string v0, "color"
.line 47
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 49
:cond_12
return-object v0
.end method
.method private static e(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.prologue
.line 69
const-string v0, "background-color"
.line 70
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 72
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_12
.line 73
const-string v0, "bakground"
.line 74
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 77
:cond_12
return-object v0
.end method
.method private static f(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.prologue
.line 81
const-string v0, "font-size"
.line 82
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 83
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_12
.line 84
const-string v0, "text-size"
.line 85
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 87
:cond_12
return-object v0
.end method
.method private static g(Ljava/lang/String;)Ljava/lang/String;
.registers 2
.prologue
.line 91
const-string v0, "text-decoration"
.line 92
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 93
return-object v0
.end method
.method private static h(Ljava/lang/String;)Ljava/lang/String;
.registers 2
.prologue
.line 96
const-string v0, "font-weight"
.line 97
invoke-static {p0, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 98
return-object v0
.end method
# virtual methods
.method public a(Landroid/text/Editable;)V
.registers 7
.prologue
.line 188
const-class v0, Lcom/cm/reminder/asr/helper/htmltext/c$a;
invoke-static {p1, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Spanned;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cm/reminder/asr/helper/htmltext/c$a;
.line 189
if-eqz v0, :cond_16
.line 190
const-class v1, Lcom/cm/reminder/asr/helper/htmltext/c$a;
new-instance v2, Landroid/text/style/BackgroundColorSpan;
iget v0, v0, Lcom/cm/reminder/asr/helper/htmltext/c$a;->a:I
invoke-direct {v2, v0}, Landroid/text/style/BackgroundColorSpan;-><init>(I)V
invoke-static {p1, v1, v2}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Editable;Ljava/lang/Class;Ljava/lang/Object;)V
.line 193
:cond_16
const-class v0, Landroid/text/style/ForegroundColorSpan;
invoke-static {p1, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Spanned;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/text/style/ForegroundColorSpan;
.line 194
if-eqz v0, :cond_2e
.line 195
const-class v1, Landroid/text/style/ForegroundColorSpan;
new-instance v2, Landroid/text/style/ForegroundColorSpan;
invoke-virtual {v0}, Landroid/text/style/ForegroundColorSpan;->getForegroundColor()I
move-result v0
invoke-direct {v2, v0}, Landroid/text/style/ForegroundColorSpan;-><init>(I)V
invoke-static {p1, v1, v2}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Editable;Ljava/lang/Class;Ljava/lang/Object;)V
.line 198
:cond_2e
const-class v0, Lcom/cm/reminder/asr/helper/htmltext/c$b;
invoke-static {p1, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Spanned;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cm/reminder/asr/helper/htmltext/c$b;
.line 199
if-eqz v0, :cond_48
.line 200
const-class v1, Lcom/cm/reminder/asr/helper/htmltext/c$b;
new-instance v2, Lcom/cm/reminder/asr/helper/htmltext/TextFontSpan;
iget v3, v0, Lcom/cm/reminder/asr/helper/htmltext/c$b;->a:I
iget v4, v0, Lcom/cm/reminder/asr/helper/htmltext/c$b;->b:I
iget v0, v0, Lcom/cm/reminder/asr/helper/htmltext/c$b;->c:I
invoke-direct {v2, v3, v4, v0}, Lcom/cm/reminder/asr/helper/htmltext/TextFontSpan;-><init>(III)V
invoke-static {p1, v1, v2}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Editable;Ljava/lang/Class;Ljava/lang/Object;)V
.line 202
:cond_48
return-void
.end method
.method public a(Landroid/text/Editable;Lorg/xml/sax/Attributes;)V
.registers 7
.prologue
const/high16 v3, -0x1000000
.line 123
const-string v0, ""
const-string v1, "style"
invoke-interface {p2, v0, v1}, Lorg/xml/sax/Attributes;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 124
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_11
.line 145
:cond_10
:goto_10
return-void
.line 127
:cond_11
invoke-static {v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->d(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 128
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_28
.line 129
invoke-static {v1}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;)I
move-result v1
.line 130
or-int/2addr v1, v3
.line 131
new-instance v2, Landroid/text/style/ForegroundColorSpan;
invoke-direct {v2, v1}, Landroid/text/style/ForegroundColorSpan;-><init>(I)V
invoke-static {p1, v2}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Editable;Ljava/lang/Object;)V
.line 135
:cond_28
invoke-direct {p0, p1, v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Editable;Ljava/lang/String;)V
.line 137
invoke-static {v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 138
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_10
.line 139
invoke-static {v0}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Ljava/lang/String;)I
move-result v0
.line 140
or-int/2addr v0, v3
.line 142
new-instance v1, Lcom/cm/reminder/asr/helper/htmltext/c$a;
invoke-direct {v1, v0}, Lcom/cm/reminder/asr/helper/htmltext/c$a;-><init>(I)V
invoke-static {p1, v1}, Lcom/cm/reminder/asr/helper/htmltext/c;->a(Landroid/text/Editable;Ljava/lang/Object;)V
goto :goto_10
.end method