a0.smali
.class public final Lcom/horcrux/svg/a0;
.super Lcom/horcrux/svg/n0;
.source "SourceFile"
# annotations
.annotation build Landroid/annotation/SuppressLint;
value = {
"ViewConstructor"
}
.end annotation
# instance fields
.field public n:Landroid/graphics/Path;
.field public o:Ljava/lang/String;
.field public p:Lcom/horcrux/svg/b0;
.field public final q:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
.field public final r:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroid/graphics/Matrix;",
">;"
}
.end annotation
.end field
.field public final s:Landroid/content/res/AssetManager;
# direct methods
.method public constructor <init>(Lcom/facebook/react/bridge/ReactContext;)V
.registers 2
.line 1
invoke-direct {p0, p1}, Lcom/horcrux/svg/n0;-><init>(Lcom/facebook/react/bridge/ReactContext;)V
.line 2
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;
.line 3
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;
.line 4
iget-object p1, p0, Lcom/horcrux/svg/VirtualView;->mContext:Lcom/facebook/react/bridge/ReactContext;
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p1
invoke-virtual {p1}, Landroid/content/res/Resources;->getAssets()Landroid/content/res/AssetManager;
move-result-object p1
iput-object p1, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;
return-void
.end method
# virtual methods
.method public final clearCache()V
.registers 2
const/4 v0, 0x0
.line 1
iput-object v0, p0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;
.line 2
invoke-super {p0}, Lcom/horcrux/svg/n0;->clearCache()V
return-void
.end method
.method public final draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;F)V
.registers 9
.line 1
iget-object v0, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;
if-eqz v0, :cond_63
.line 2
iget-object v0, p0, Lcom/horcrux/svg/n0;->c:Lcom/horcrux/svg/SVGLength;
if-eqz v0, :cond_2b
iget-wide v0, v0, Lcom/horcrux/svg/SVGLength;->a:D
const-wide/16 v2, 0x0
cmpl-double v4, v0, v2
if-eqz v4, :cond_2b
.line 3
iget v0, p0, Lcom/horcrux/svg/RenderableView;->fillOpacity:F
mul-float v0, v0, p3
invoke-virtual {p0, p2, v0}, Lcom/horcrux/svg/RenderableView;->setupFillPaint(Landroid/graphics/Paint;F)Z
move-result v0
if-eqz v0, :cond_1d
.line 4
invoke-virtual {p0, p1, p2}, Lcom/horcrux/svg/a0;->l(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
.line 5
:cond_1d
iget v0, p0, Lcom/horcrux/svg/RenderableView;->strokeOpacity:F
mul-float p3, p3, v0
invoke-virtual {p0, p2, p3}, Lcom/horcrux/svg/RenderableView;->setupStrokePaint(Landroid/graphics/Paint;F)Z
move-result p3
if-eqz p3, :cond_69
.line 6
invoke-virtual {p0, p1, p2}, Lcom/horcrux/svg/a0;->l(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
goto :goto_69
.line 7
:cond_2b
iget-object v0, p0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
if-lez v0, :cond_5f
.line 8
invoke-virtual {p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;
move-result-object v1
.line 9
iget-object v1, v1, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;
.line 10
invoke-virtual {p0, p2, v1}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
const/4 v1, 0x0
:goto_3d
if-ge v1, v0, :cond_5f
.line 11
iget-object v2, p0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;
invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
.line 12
iget-object v3, p0, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;
invoke-virtual {v3, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroid/graphics/Matrix;
.line 13
invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
.line 14
invoke-virtual {p1, v3}, Landroid/graphics/Canvas;->concat(Landroid/graphics/Matrix;)V
const/4 v3, 0x0
.line 15
invoke-virtual {p1, v2, v3, v3, p2}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
.line 16
invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V
add-int/lit8 v1, v1, 0x1
goto :goto_3d
.line 17
:cond_5f
invoke-virtual {p0, p1, p2, p3}, Lcom/horcrux/svg/j;->b(Landroid/graphics/Canvas;Landroid/graphics/Paint;F)V
goto :goto_69
.line 18
:cond_63
invoke-virtual {p0, p1, p2}, Lcom/horcrux/svg/VirtualView;->clip(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
.line 19
invoke-virtual {p0, p1, p2, p3}, Lcom/horcrux/svg/j;->a(Landroid/graphics/Canvas;Landroid/graphics/Paint;F)V
:cond_69
:goto_69
return-void
.end method
.method public final getPath(Landroid/graphics/Canvas;Landroid/graphics/Paint;)Landroid/graphics/Path;
.registers 79
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v9, p2
.line 1
iget-object v2, v0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;
if-eqz v2, :cond_b
return-object v2
.line 2
:cond_b
iget-object v2, v0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;
if-nez v2, :cond_16
.line 3
invoke-virtual/range {p0 .. p2}, Lcom/horcrux/svg/n0;->h(Landroid/graphics/Canvas;Landroid/graphics/Paint;)Landroid/graphics/Path;
move-result-object v1
iput-object v1, v0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;
return-object v1
.line 4
:cond_16
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object v2
:goto_1a
if-eqz v2, :cond_33
.line 5
invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
const-class v4, Lcom/horcrux/svg/b0;
if-ne v3, v4, :cond_29
.line 6
check-cast v2, Lcom/horcrux/svg/b0;
iput-object v2, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;
goto :goto_33
.line 7
:cond_29
instance-of v3, v2, Lcom/horcrux/svg/n0;
if-nez v3, :cond_2e
goto :goto_33
.line 8
:cond_2e
invoke-interface {v2}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;
move-result-object v2
goto :goto_1a
.line 9
:cond_33
:goto_33
invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/n0;->f()V
.line 10
iget-object v2, v0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;
const/4 v3, 0x0
if-eqz v2, :cond_9f
.line 11
invoke-virtual {v2}, Ljava/lang/String;->length()I
move-result v4
if-nez v4, :cond_42
goto :goto_9f
.line 12
:cond_42
new-instance v4, Ljava/text/Bidi;
const/4 v5, -0x2
invoke-direct {v4, v2, v5}, Ljava/text/Bidi;-><init>(Ljava/lang/String;I)V
.line 13
invoke-virtual {v4}, Ljava/text/Bidi;->isLeftToRight()Z
move-result v5
if-eqz v5, :cond_4f
goto :goto_9f
.line 14
:cond_4f
invoke-virtual {v4}, Ljava/text/Bidi;->getRunCount()I
move-result v5
.line 15
new-array v6, v5, [B
.line 16
new-array v7, v5, [Ljava/lang/Integer;
const/4 v8, 0x0
:goto_58
if-ge v8, v5, :cond_6a
.line 17
invoke-virtual {v4, v8}, Ljava/text/Bidi;->getRunLevel(I)I
move-result v10
int-to-byte v10, v10
aput-byte v10, v6, v8
.line 18
invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v10
aput-object v10, v7, v8
add-int/lit8 v8, v8, 0x1
goto :goto_58
.line 19
:cond_6a
invoke-static {v6, v3, v7, v3, v5}, Ljava/text/Bidi;->reorderVisually([BI[Ljava/lang/Object;II)V
.line 20
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const/4 v10, 0x0
:goto_73
if-ge v10, v5, :cond_9b
.line 21
aget-object v11, v7, v10
invoke-virtual {v11}, Ljava/lang/Integer;->intValue()I
move-result v11
.line 22
invoke-virtual {v4, v11}, Ljava/text/Bidi;->getRunStart(I)I
move-result v12
.line 23
invoke-virtual {v4, v11}, Ljava/text/Bidi;->getRunLimit(I)I
move-result v13
.line 24
aget-byte v11, v6, v11
and-int/lit8 v11, v11, 0x1
if-eqz v11, :cond_95
:goto_89
add-int/lit8 v13, v13, -0x1
if-lt v13, v12, :cond_98
.line 25
invoke-virtual {v2, v13}, Ljava/lang/String;->charAt(I)C
move-result v11
invoke-virtual {v8, v11}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_89
.line 26
:cond_95
invoke-virtual {v8, v2, v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
:cond_98
add-int/lit8 v10, v10, 0x1
goto :goto_73
.line 27
:cond_9b
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
.line 28
:cond_9f
:goto_9f
invoke-virtual {v2}, Ljava/lang/String;->length()I
move-result v10
.line 29
new-instance v11, Landroid/graphics/Path;
invoke-direct {v11}, Landroid/graphics/Path;-><init>()V
.line 30
iget-object v4, v0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;
invoke-virtual {v4}, Ljava/util/ArrayList;->clear()V
.line 31
iget-object v4, v0, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;
invoke-virtual {v4}, Ljava/util/ArrayList;->clear()V
if-nez v10, :cond_b5
goto :goto_ec
.line 32
:cond_b5
iget-object v4, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;
if-eqz v4, :cond_bc
const/4 v4, 0x1
const/4 v12, 0x1
goto :goto_be
:cond_bc
const/4 v4, 0x0
const/4 v12, 0x0
:goto_be
const/4 v4, 0x0
const-wide/16 v13, 0x0
if-eqz v12, :cond_f4
.line 33
new-instance v5, Landroid/graphics/PathMeasure;
iget-object v6, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;
.line 34
invoke-virtual {v6}, Lcom/horcrux/svg/VirtualView;->getSvgView()Lcom/horcrux/svg/SvgView;
move-result-object v7
.line 35
iget-object v6, v6, Lcom/horcrux/svg/b0;->n:Ljava/lang/String;
invoke-virtual {v7, v6}, Lcom/horcrux/svg/SvgView;->getDefinedTemplate(Ljava/lang/String;)Lcom/horcrux/svg/VirtualView;
move-result-object v6
.line 36
instance-of v7, v6, Lcom/horcrux/svg/RenderableView;
if-nez v7, :cond_d6
goto :goto_dc
.line 37
:cond_d6
check-cast v6, Lcom/horcrux/svg/RenderableView;
.line 38
invoke-virtual {v6, v1, v9}, Lcom/horcrux/svg/RenderableView;->getPath(Landroid/graphics/Canvas;Landroid/graphics/Paint;)Landroid/graphics/Path;
move-result-object v4
.line 39
:goto_dc
invoke-direct {v5, v4, v3}, Landroid/graphics/PathMeasure;-><init>(Landroid/graphics/Path;Z)V
.line 40
invoke-virtual {v5}, Landroid/graphics/PathMeasure;->getLength()F
move-result v3
float-to-double v3, v3
.line 41
invoke-virtual {v5}, Landroid/graphics/PathMeasure;->isClosed()Z
move-result v6
cmpl-double v7, v3, v13
if-nez v7, :cond_f0
:goto_ec
move-object v3, v0
move-object v5, v11
goto/16 :goto_764
:cond_f0
move-wide v7, v3
move v3, v6
move-object v6, v5
goto :goto_f8
:cond_f4
const/4 v6, 0x0
move-object v6, v4
move-wide v7, v13
const/4 v3, 0x0
.line 42
:goto_f8
invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;
move-result-object v5
.line 43
iget-object v4, v5, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;
.line 44
invoke-virtual {v0, v9, v4}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
.line 45
new-instance v15, Ljava/util/ArrayList;
invoke-direct {v15}, Ljava/util/ArrayList;-><init>()V
const/16 v13, 0x100
new-array v13, v13, [[I
.line 46
new-instance v14, Landroid/graphics/Path;
invoke-direct {v14}, Landroid/graphics/Path;-><init>()V
invoke-virtual {v15, v14}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 47
new-array v14, v10, [Z
.line 48
invoke-virtual {v2}, Ljava/lang/String;->toCharArray()[C
move-result-object v24
move-object/from16 v25, v13
move-object/from16 v26, v14
.line 49
iget-wide v13, v4, Lcom/horcrux/svg/h;->l:D
move-wide/from16 v27, v13
.line 50
iget-wide v13, v4, Lcom/horcrux/svg/h;->m:D
move-wide/from16 v29, v13
.line 51
iget-wide v13, v4, Lcom/horcrux/svg/h;->n:D
move-object/from16 v16, v15
.line 52
iget-boolean v15, v4, Lcom/horcrux/svg/h;->o:Z
xor-int/lit8 v31, v15, 0x1
const-wide/16 v17, 0x0
cmpl-double v15, v13, v17
if-nez v15, :cond_13c
.line 53
iget-object v15, v4, Lcom/horcrux/svg/h;->i:Lcom/horcrux/svg/e0;
move-object/from16 v32, v11
sget-object v11, Lcom/horcrux/svg/e0;->normal:Lcom/horcrux/svg/e0;
if-ne v15, v11, :cond_13e
const/4 v11, 0x1
goto :goto_13f
:cond_13c
move-object/from16 v32, v11
:cond_13e
const/4 v11, 0x0
.line 54
:goto_13f
sget v15, Landroid/os/Build$VERSION;->SDK_INT:I
if-eqz v11, :cond_156
const-string v11, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'hlig\', \'cala\', "
.line 55
invoke-static {v11}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v11
.line 56
iget-object v1, v4, Lcom/horcrux/svg/h;->g:Ljava/lang/String;
invoke-virtual {v11, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v9, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V
goto :goto_168
:cond_156
const-string v1, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'liga\' 0, \'clig\' 0, \'dlig\' 0, \'hlig\' 0, \'cala\' 0, "
.line 57
invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 58
iget-object v11, v4, Lcom/horcrux/svg/h;->g:Ljava/lang/String;
invoke-virtual {v1, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v9, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V
:goto_168
const/16 v1, 0x1a
if-lt v15, v1, :cond_183
const-string v1, "\'wght\' "
.line 59
invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 60
iget v11, v4, Lcom/horcrux/svg/h;->f:I
invoke-virtual {v1, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
iget-object v11, v4, Lcom/horcrux/svg/h;->h:Ljava/lang/String;
invoke-virtual {v1, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v9, v1}, Landroid/graphics/Paint;->setFontVariationSettings(Ljava/lang/String;)Z
.line 61
:cond_183
iget-object v1, v4, Lcom/horcrux/svg/h;->d:Lcom/facebook/react/bridge/ReadableMap;
.line 62
new-array v11, v10, [F
.line 63
invoke-virtual {v9, v2, v11}, Landroid/graphics/Paint;->getTextWidths(Ljava/lang/String;[F)I
.line 64
iget-object v2, v4, Lcom/horcrux/svg/h;->j:Lcom/horcrux/svg/g0;
.line 65
invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;
move-result-object v4
.line 66
iget-object v4, v4, Lcom/horcrux/svg/i;->a:Ljava/util/ArrayList;
.line 67
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object v15
.line 68
invoke-virtual {v4}, Ljava/util/ArrayList;->size()I
move-result v17
add-int/lit8 v17, v17, -0x1
move-object/from16 v33, v6
move-object/from16 v34, v11
move/from16 v6, v17
move-object v11, v0
:goto_1a3
if-ltz v6, :cond_1cc
move-object/from16 v35, v1
.line 69
instance-of v1, v15, Lcom/horcrux/svg/n0;
if-eqz v1, :cond_1ce
invoke-virtual {v4, v6}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/horcrux/svg/h;
iget-object v1, v1, Lcom/horcrux/svg/h;->j:Lcom/horcrux/svg/g0;
move-object/from16 v17, v4
sget-object v4, Lcom/horcrux/svg/g0;->start:Lcom/horcrux/svg/g0;
if-eq v1, v4, :cond_1ce
iget-object v1, v11, Lcom/horcrux/svg/n0;->h:Ljava/util/ArrayList;
if-eqz v1, :cond_1be
goto :goto_1ce
.line 70
:cond_1be
move-object v11, v15
check-cast v11, Lcom/horcrux/svg/n0;
.line 71
invoke-virtual {v11}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object v15
add-int/lit8 v6, v6, -0x1
move-object/from16 v4, v17
move-object/from16 v1, v35
goto :goto_1a3
:cond_1cc
move-object/from16 v35, v1
:cond_1ce
:goto_1ce
move-wide/from16 v36, v13
.line 72
invoke-virtual {v11, v9}, Lcom/horcrux/svg/n0;->i(Landroid/graphics/Paint;)D
move-result-wide v13
.line 73
sget-object v1, Lcom/horcrux/svg/a0$a;->a:[I
invoke-virtual {v2}, Ljava/lang/Enum;->ordinal()I
move-result v4
aget v1, v1, v4
const-wide/high16 v38, 0x4000000000000000L # 2.0
const/4 v4, 0x3
const/4 v6, 0x2
if-eq v1, v6, :cond_1ed
if-eq v1, v4, :cond_1ea
move v1, v10
move-wide/from16 v47, v13
const-wide/16 v9, 0x0
goto :goto_1f3
:cond_1ea
move v1, v10
neg-double v9, v13
goto :goto_1f1
:cond_1ed
move v1, v10
neg-double v9, v13
div-double v9, v9, v38
:goto_1f1
move-wide/from16 v47, v13
.line 74
:goto_1f3
iget-wide v13, v5, Lcom/horcrux/svg/i;->q:D
if-eqz v12, :cond_241
.line 75
iget-object v4, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;
.line 76
iget-object v6, v4, Lcom/horcrux/svg/b0;->p:Lcom/horcrux/svg/k0;
.line 77
sget-object v11, Lcom/horcrux/svg/k0;->sharp:Lcom/horcrux/svg/k0;
if-ne v6, v11, :cond_201
const/4 v6, 0x1
goto :goto_202
:cond_201
const/4 v6, 0x0
.line 78
:goto_202
iget-object v11, v4, Lcom/horcrux/svg/b0;->o:Lcom/horcrux/svg/l0;
.line 79
sget-object v15, Lcom/horcrux/svg/l0;->right:Lcom/horcrux/svg/l0;
if-ne v11, v15, :cond_20a
const/4 v11, -0x1
goto :goto_20b
:cond_20a
const/4 v11, 0x1
.line 80
:goto_20b
iget-object v15, v4, Lcom/horcrux/svg/b0;->q:Lcom/horcrux/svg/SVGLength;
.line 81
iget v4, v0, Lcom/horcrux/svg/VirtualView;->mScale:F
move/from16 v40, v11
move/from16 v49, v12
float-to-double v11, v4
move-object/from16 v4, v16
move-wide/from16 v16, v7
move-wide/from16 v18, v11
move-wide/from16 v20, v13
invoke-static/range {v15 .. v21}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D
move-result-wide v11
add-double/2addr v9, v11
if-eqz v3, :cond_233
move-object/from16 v16, v4
div-double v3, v7, v38
.line 82
sget-object v15, Lcom/horcrux/svg/g0;->middle:Lcom/horcrux/svg/g0;
if-ne v2, v15, :cond_22d
neg-double v2, v3
goto :goto_22f
:cond_22d
const-wide/16 v2, 0x0
:goto_22f
add-double/2addr v2, v11
add-double v11, v2, v7
goto :goto_238
:cond_233
move-object/from16 v16, v4
move-wide v11, v7
const-wide/16 v2, 0x0
:goto_238
move-wide/from16 v19, v2
move-wide/from16 v17, v11
move/from16 v12, v40
move-wide v10, v9
move v9, v6
goto :goto_24c
:cond_241
move/from16 v49, v12
const/4 v11, 0x1
const/4 v6, 0x0
move-wide/from16 v17, v7
move-wide v10, v9
const/4 v9, 0x0
const/4 v12, 0x1
const-wide/16 v19, 0x0
.line 83
:goto_24c
iget-object v2, v0, Lcom/horcrux/svg/n0;->d:Lcom/horcrux/svg/SVGLength;
if-eqz v2, :cond_291
.line 84
invoke-virtual/range {p1 .. p1}, Landroid/graphics/Canvas;->getWidth()I
move-result v6
int-to-double v3, v6
iget v6, v0, Lcom/horcrux/svg/VirtualView;->mScale:F
move-wide/from16 v52, v7
float-to-double v6, v6
move-object/from16 v40, v2
move-wide/from16 v41, v3
move-wide/from16 v43, v6
move-wide/from16 v45, v13
invoke-static/range {v40 .. v46}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D
move-result-wide v2
const-wide/16 v6, 0x0
cmpg-double v4, v2, v6
if-ltz v4, :cond_289
.line 85
sget-object v4, Lcom/horcrux/svg/a0$a;->b:[I
iget-object v6, v0, Lcom/horcrux/svg/n0;->f:Lcom/horcrux/svg/i0;
invoke-virtual {v6}, Ljava/lang/Enum;->ordinal()I
move-result v6
aget v4, v4, v6
const/4 v6, 0x2
if-eq v4, v6, :cond_286
sub-double v2, v2, v47
add-int/lit8 v4, v1, -0x1
int-to-double v6, v4
div-double/2addr v2, v6
add-double v2, v2, v36
move-wide/from16 v36, v2
const-wide/high16 v50, 0x3ff0000000000000L # 1.0
goto :goto_297
:cond_286
div-double v3, v2, v47
goto :goto_295
.line 86
:cond_289
new-instance v1, Ljava/lang/IllegalArgumentException;
const-string v2, "Negative textLength value"
invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v1
:cond_291
move-wide/from16 v52, v7
const-wide/high16 v3, 0x3ff0000000000000L # 1.0
:goto_295
move-wide/from16 v50, v3
:goto_297
int-to-double v7, v12
mul-double v3, v50, v7
.line 87
invoke-virtual/range {p2 .. p2}, Landroid/graphics/Paint;->getFontMetrics()Landroid/graphics/Paint$FontMetrics;
move-result-object v2
.line 88
iget v6, v2, Landroid/graphics/Paint$FontMetrics;->descent:F
move-wide/from16 v47, v3
float-to-double v3, v6
.line 89
iget v6, v2, Landroid/graphics/Paint$FontMetrics;->leading:F
move v15, v9
move-wide/from16 v54, v10
float-to-double v9, v6
add-double/2addr v9, v3
.line 90
iget v11, v2, Landroid/graphics/Paint$FontMetrics;->ascent:F
neg-float v11, v11
add-float/2addr v11, v6
move/from16 v21, v12
float-to-double v11, v11
.line 91
iget v2, v2, Landroid/graphics/Paint$FontMetrics;->top:F
neg-float v2, v2
move-wide/from16 v56, v7
float-to-double v6, v2
add-double v40, v6, v9
.line 92
iget-object v2, v0, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;
if-nez v2, :cond_2d7
.line 93
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object v2
:goto_2c1
if-eqz v2, :cond_2d7
.line 94
instance-of v8, v2, Lcom/horcrux/svg/n0;
if-eqz v8, :cond_2d2
.line 95
move-object v8, v2
check-cast v8, Lcom/horcrux/svg/n0;
.line 96
iget-object v8, v8, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;
if-eqz v8, :cond_2d2
.line 97
iput-object v8, v0, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;
move-object v2, v8
goto :goto_2d9
.line 98
:cond_2d2
invoke-interface {v2}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;
move-result-object v2
goto :goto_2c1
.line 99
:cond_2d7
iget-object v2, v0, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;
.line 100
:goto_2d9
iget-object v8, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;
if-nez v8, :cond_2fa
.line 101
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object v8
:goto_2e1
if-eqz v8, :cond_2fa
move-wide/from16 v42, v6
.line 102
instance-of v6, v8, Lcom/horcrux/svg/n0;
if-eqz v6, :cond_2f3
.line 103
move-object v6, v8
check-cast v6, Lcom/horcrux/svg/n0;
.line 104
iget-object v6, v6, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;
if-eqz v6, :cond_2f3
.line 105
iput-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;
goto :goto_306
.line 106
:cond_2f3
invoke-interface {v8}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;
move-result-object v8
move-wide/from16 v6, v42
goto :goto_2e1
:cond_2fa
move-wide/from16 v42, v6
.line 107
iget-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;
if-nez v6, :cond_304
.line 108
sget-object v6, Lcom/horcrux/svg/c0;->baseline:Lcom/horcrux/svg/c0;
iput-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;
.line 109
:cond_304
iget-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;
:goto_306
if-eqz v6, :cond_348
.line 110
sget-object v7, Lcom/horcrux/svg/a0$a;->c:[I
invoke-virtual {v6}, Ljava/lang/Enum;->ordinal()I
move-result v8
aget v7, v7, v8
packed-switch v7, :pswitch_data_76c
:pswitch_313
goto :goto_348
:pswitch_314
move-wide/from16 v9, v42
goto :goto_32a
:pswitch_317
div-double v9, v40, v38
goto :goto_32a
:pswitch_31a
move-wide v9, v11
goto :goto_32a
:pswitch_31c
const-wide v3, 0x3fe999999999999aL # 0.8
goto :goto_324
:pswitch_322
const-wide/high16 v3, 0x3fe0000000000000L # 0.5
:goto_324
mul-double v9, v3, v11
goto :goto_32a
:pswitch_327
sub-double/2addr v11, v3
div-double v9, v11, v38
:goto_32a
:pswitch_32a
move-wide v3, v9
move-object/from16 v9, p2
goto :goto_34c
.line 111
:pswitch_32e
new-instance v3, Landroid/graphics/Rect;
invoke-direct {v3}, Landroid/graphics/Rect;-><init>()V
const-string v4, "x"
const/4 v7, 0x1
const/4 v8, 0x0
move-object/from16 v9, p2
.line 112
invoke-virtual {v9, v4, v8, v7, v3}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
.line 113
invoke-virtual {v3}, Landroid/graphics/Rect;->height()I
move-result v3
int-to-double v3, v3
div-double v3, v3, v38
goto :goto_34c
:pswitch_344
move-object/from16 v9, p2
neg-double v3, v3
goto :goto_34c
:cond_348
:goto_348
move-object/from16 v9, p2
const-wide/16 v3, 0x0
:goto_34c
if-eqz v2, :cond_42a
.line 114
invoke-virtual {v2}, Ljava/lang/String;->isEmpty()Z
move-result v7
if-nez v7, :cond_42a
.line 115
sget-object v7, Lcom/horcrux/svg/a0$a;->c:[I
invoke-virtual {v6}, Ljava/lang/Enum;->ordinal()I
move-result v6
aget v6, v7, v6
const/16 v7, 0xe
if-eq v6, v7, :cond_42a
const/16 v7, 0x10
if-eq v6, v7, :cond_42a
.line 116
invoke-virtual {v2}, Ljava/lang/String;->hashCode()I
move-result v6
const v7, -0x669119bb
if-eq v6, v7, :cond_38e
const v7, 0x1be40
if-eq v6, v7, :cond_383
const v7, 0x68b6f7b
if-eq v6, v7, :cond_378
goto :goto_396
:cond_378
const-string v6, "super"
invoke-virtual {v2, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-nez v6, :cond_381
goto :goto_396
:cond_381
const/4 v6, 0x2
goto :goto_399
:cond_383
const-string v6, "sub"
invoke-virtual {v2, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-nez v6, :cond_38c
goto :goto_396
:cond_38c
const/4 v6, 0x1
goto :goto_399
:cond_38e
const-string v6, "baseline"
invoke-virtual {v2, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-nez v6, :cond_398
:goto_396
const/4 v6, -0x1
goto :goto_399
:cond_398
const/4 v6, 0x0
:goto_399
const-string v7, "os2"
const-string v8, "unitsPerEm"
const-string v10, "tables"
if-eqz v6, :cond_42a
const/4 v11, 0x1
if-eq v6, v11, :cond_3f2
const/4 v11, 0x2
if-eq v6, v11, :cond_3b9
.line 117
iget v6, v0, Lcom/horcrux/svg/VirtualView;->mScale:F
float-to-double v6, v6
mul-double v41, v6, v13
move-object/from16 v40, v2
move-wide/from16 v43, v6
move-wide/from16 v45, v13
invoke-static/range {v40 .. v46}, Lcom/horcrux/svg/u;->b(Ljava/lang/String;DDD)D
move-result-wide v6
sub-double/2addr v3, v6
goto/16 :goto_42a
:cond_3b9
if-eqz v35, :cond_42a
move-object/from16 v2, v35
.line 118
invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v6
if-eqz v6, :cond_42a
invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v6
if-eqz v6, :cond_42a
.line 119
invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->getInt(Ljava/lang/String;)I
move-result v6
.line 120
invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;
move-result-object v2
.line 121
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v8
if-eqz v8, :cond_42a
.line 122
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;
move-result-object v2
const-string v7, "ySuperscriptYOffset"
.line 123
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v8
if-eqz v8, :cond_42a
.line 124
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getDouble(Ljava/lang/String;)D
move-result-wide v7
.line 125
iget v2, v0, Lcom/horcrux/svg/VirtualView;->mScale:F
float-to-double v10, v2
mul-double v10, v10, v13
mul-double v10, v10, v7
int-to-double v6, v6
div-double/2addr v10, v6
sub-double/2addr v3, v10
goto :goto_42a
:cond_3f2
move-object/from16 v2, v35
if-eqz v2, :cond_42a
.line 126
invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v6
if-eqz v6, :cond_42a
invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v6
if-eqz v6, :cond_42a
.line 127
invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->getInt(Ljava/lang/String;)I
move-result v6
.line 128
invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;
move-result-object v2
.line 129
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v8
if-eqz v8, :cond_42a
.line 130
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;
move-result-object v2
const-string v7, "ySubscriptYOffset"
.line 131
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z
move-result v8
if-eqz v8, :cond_42a
.line 132
invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getDouble(Ljava/lang/String;)D
move-result-wide v7
.line 133
iget v2, v0, Lcom/horcrux/svg/VirtualView;->mScale:F
float-to-double v10, v2
mul-double v10, v10, v13
mul-double v10, v10, v7
int-to-double v6, v6
div-double/2addr v10, v6
add-double/2addr v3, v10
:cond_42a
:goto_42a
move-wide v10, v3
.line 134
new-instance v12, Landroid/graphics/Matrix;
invoke-direct {v12}, Landroid/graphics/Matrix;-><init>()V
.line 135
new-instance v13, Landroid/graphics/Matrix;
invoke-direct {v13}, Landroid/graphics/Matrix;-><init>()V
.line 136
new-instance v14, Landroid/graphics/Matrix;
invoke-direct {v14}, Landroid/graphics/Matrix;-><init>()V
const/16 v2, 0x9
new-array v8, v2, [F
new-array v7, v2, [F
const/4 v2, 0x0
const/4 v6, 0x0
:goto_442
if-ge v6, v1, :cond_761
.line 137
aget-char v4, v24, v6
.line 138
invoke-static {v4}, Ljava/lang/String;->valueOf(C)Ljava/lang/String;
move-result-object v2
.line 139
aget-boolean v3, v26, v6
if-eqz v3, :cond_456
const-string v2, ""
const/16 v35, 0x0
:cond_452
:goto_452
move/from16 v40, v1
move-object v0, v2
goto :goto_482
:cond_456
const/16 v35, 0x0
move/from16 v40, v6
:goto_45a
add-int/lit8 v0, v40, 0x1
if-ge v0, v1, :cond_452
.line 140
aget v40, v34, v0
const/16 v41, 0x0
cmpl-float v40, v40, v41
if-lez v40, :cond_467
goto :goto_452
.line 141
:cond_467
invoke-static {v2}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
move/from16 v40, v1
.line 142
aget-char v1, v24, v0
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
const/4 v1, 0x1
.line 143
aput-boolean v1, v26, v0
const/16 v35, 0x1
move/from16 v1, v40
move/from16 v40, v0
move-object/from16 v0, p0
goto :goto_45a
.line 144
:goto_482
invoke-virtual {v9, v0}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F
move-result v1
float-to-double v1, v1
mul-double v1, v1, v50
if-eqz v31, :cond_496
.line 145
aget v9, v34, v6
move-wide/from16 v41, v10
float-to-double v9, v9
mul-double v9, v9, v50
sub-double/2addr v9, v1
move-wide/from16 v27, v9
goto :goto_498
:cond_496
move-wide/from16 v41, v10
:goto_498
const/16 v9, 0x20
if-ne v4, v9, :cond_49e
const/4 v9, 0x1
goto :goto_49f
:cond_49e
const/4 v9, 0x0
:goto_49f
if-eqz v9, :cond_4a4
move-wide/from16 v10, v29
goto :goto_4a6
:cond_4a4
const-wide/16 v10, 0x0
:goto_4a6
add-double v10, v10, v36
add-double/2addr v10, v1
if-eqz v3, :cond_4b2
move/from16 v46, v6
move-object/from16 v45, v7
const-wide/16 v6, 0x0
goto :goto_4ba
:cond_4b2
add-double v43, v27, v10
move/from16 v46, v6
move-object/from16 v45, v7
move-wide/from16 v6, v43
.line 146
:goto_4ba
invoke-virtual {v5, v6, v7}, Lcom/horcrux/svg/i;->c(D)D
move-result-wide v6
move-object/from16 v43, v12
move-object/from16 v44, v13
.line 147
invoke-virtual {v5}, Lcom/horcrux/svg/i;->d()D
move-result-wide v12
move/from16 v58, v4
.line 148
iget-object v4, v5, Lcom/horcrux/svg/i;->i:Ljava/util/ArrayList;
move-object/from16 v59, v0
iget v0, v5, Lcom/horcrux/svg/i;->D:I
invoke-static {v4, v0}, Lcom/horcrux/svg/i;->b(Ljava/util/ArrayList;I)V
.line 149
iget v0, v5, Lcom/horcrux/svg/i;->I:I
add-int/lit8 v0, v0, 0x1
.line 150
iget-object v4, v5, Lcom/horcrux/svg/i;->y:[Lcom/horcrux/svg/SVGLength;
move-wide/from16 v60, v12
array-length v12, v4
if-ge v0, v12, :cond_4fe
.line 151
iput v0, v5, Lcom/horcrux/svg/i;->I:I
.line 152
aget-object v62, v4, v0
.line 153
iget v0, v5, Lcom/horcrux/svg/i;->N:F
float-to-double v12, v0
iget v0, v5, Lcom/horcrux/svg/i;->M:F
move-object/from16 v70, v14
move/from16 v69, v15
float-to-double v14, v0
move-wide/from16 v71, v6
iget-wide v6, v5, Lcom/horcrux/svg/i;->q:D
move-wide/from16 v63, v12
move-wide/from16 v65, v14
move-wide/from16 v67, v6
invoke-static/range {v62 .. v68}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D
move-result-wide v6
.line 154
iget-wide v12, v5, Lcom/horcrux/svg/i;->u:D
add-double/2addr v12, v6
iput-wide v12, v5, Lcom/horcrux/svg/i;->u:D
goto :goto_504
:cond_4fe
move-wide/from16 v71, v6
move-object/from16 v70, v14
move/from16 v69, v15
.line 155
:goto_504
iget-wide v6, v5, Lcom/horcrux/svg/i;->u:D
.line 156
iget-object v0, v5, Lcom/horcrux/svg/i;->j:Ljava/util/ArrayList;
iget v4, v5, Lcom/horcrux/svg/i;->E:I
invoke-static {v0, v4}, Lcom/horcrux/svg/i;->b(Ljava/util/ArrayList;I)V
.line 157
iget v0, v5, Lcom/horcrux/svg/i;->J:I
add-int/lit8 v0, v0, 0x1
.line 158
iget-object v4, v5, Lcom/horcrux/svg/i;->z:[Lcom/horcrux/svg/SVGLength;
array-length v12, v4
if-ge v0, v12, :cond_534
.line 159
iput v0, v5, Lcom/horcrux/svg/i;->J:I
.line 160
aget-object v62, v4, v0
.line 161
iget v0, v5, Lcom/horcrux/svg/i;->O:F
float-to-double v12, v0
iget v0, v5, Lcom/horcrux/svg/i;->M:F
float-to-double v14, v0
move-wide/from16 v73, v6
iget-wide v6, v5, Lcom/horcrux/svg/i;->q:D
move-wide/from16 v63, v12
move-wide/from16 v65, v14
move-wide/from16 v67, v6
invoke-static/range {v62 .. v68}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D
move-result-wide v6
.line 162
iget-wide v12, v5, Lcom/horcrux/svg/i;->v:D
add-double/2addr v12, v6
iput-wide v12, v5, Lcom/horcrux/svg/i;->v:D
goto :goto_536
:cond_534
move-wide/from16 v73, v6
.line 163
:goto_536
iget-wide v6, v5, Lcom/horcrux/svg/i;->v:D
.line 164
iget-object v0, v5, Lcom/horcrux/svg/i;->k:Ljava/util/ArrayList;
iget v4, v5, Lcom/horcrux/svg/i;->F:I
invoke-static {v0, v4}, Lcom/horcrux/svg/i;->b(Ljava/util/ArrayList;I)V
.line 165
iget v0, v5, Lcom/horcrux/svg/i;->K:I
add-int/lit8 v0, v0, 0x1
iget-object v4, v5, Lcom/horcrux/svg/i;->A:[D
array-length v4, v4
add-int/lit8 v4, v4, -0x1
invoke-static {v0, v4}, Ljava/lang/Math;->min(II)I
move-result v0
iput v0, v5, Lcom/horcrux/svg/i;->K:I
.line 166
iget-object v4, v5, Lcom/horcrux/svg/i;->A:[D
aget-wide v12, v4, v0
if-nez v3, :cond_573
if-eqz v9, :cond_557
goto :goto_573
:cond_557
mul-double v10, v10, v56
mul-double v1, v1, v56
add-double v3, v71, v73
mul-double v3, v3, v56
add-double v3, v3, v54
sub-double/2addr v3, v10
if-eqz v49, :cond_645
add-double v9, v3, v1
div-double v1, v1, v38
add-double v14, v3, v1
cmpl-double v0, v14, v17
if-lez v0, :cond_56f
goto :goto_573
:cond_56f
cmpg-double v0, v14, v19
if-gez v0, :cond_596
:cond_573
:goto_573
move-object/from16 v3, p0
move-object/from16 v2, p1
move-object/from16 v4, p2
move-object v13, v5
move-object/from16 v35, v8
move-object/from16 v12, v16
move/from16 v11, v21
move-object/from16 v5, v32
move-object/from16 v16, v33
move-object/from16 v0, v44
move-object/from16 v33, v45
move/from16 v21, v46
move-wide/from16 v9, v47
move-wide/from16 v14, v52
move-wide/from16 v46, v56
const-wide/16 v22, 0x0
move-object/from16 v45, v43
goto/16 :goto_73d
:cond_596
if-eqz v69, :cond_5b4
double-to-float v0, v14
const/4 v3, 0x3
move-object/from16 v11, v33
move-object/from16 v4, v44
.line 167
invoke-virtual {v11, v0, v4, v3}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z
move-object v0, v4
move-object/from16 v33, v5
move-object/from16 v44, v8
move-wide/from16 v62, v12
move-wide/from16 v14, v52
const-wide/16 v22, 0x0
move-object/from16 v52, v45
move-object/from16 v45, v43
move-object/from16 v43, v11
goto/16 :goto_62c
:cond_5b4
move-object/from16 v11, v33
move-object/from16 v0, v44
move-object/from16 v33, v5
const/4 v5, 0x3
const-wide/16 v22, 0x0
cmpg-double v44, v3, v22
if-gez v44, :cond_5ce
move-wide/from16 v62, v12
const/4 v12, 0x0
move-object/from16 v13, v43
.line 168
invoke-virtual {v11, v12, v13, v5}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z
double-to-float v3, v3
.line 169
invoke-virtual {v13, v3, v12}, Landroid/graphics/Matrix;->preTranslate(FF)Z
goto :goto_5d7
:cond_5ce
move-wide/from16 v62, v12
move-object/from16 v13, v43
double-to-float v3, v3
const/4 v4, 0x1
.line 170
invoke-virtual {v11, v3, v13, v4}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z
:goto_5d7
const/4 v3, 0x1
double-to-float v4, v14
.line 171
invoke-virtual {v11, v4, v0, v3}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z
cmpl-double v4, v9, v52
if-lez v4, :cond_5f0
move-wide/from16 v14, v52
double-to-float v3, v14
const/4 v4, 0x3
move-object/from16 v12, v70
.line 172
invoke-virtual {v11, v3, v12, v4}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z
sub-double/2addr v9, v14
double-to-float v3, v9
const/4 v4, 0x0
.line 173
invoke-virtual {v12, v3, v4}, Landroid/graphics/Matrix;->preTranslate(FF)Z
goto :goto_5f8
:cond_5f0
move-wide/from16 v14, v52
move-object/from16 v12, v70
double-to-float v4, v9
.line 174
invoke-virtual {v11, v4, v12, v3}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z
.line 175
:goto_5f8
invoke-virtual {v13, v8}, Landroid/graphics/Matrix;->getValues([F)V
move-object/from16 v9, v45
.line 176
invoke-virtual {v12, v9}, Landroid/graphics/Matrix;->getValues([F)V
const/4 v3, 0x2
aget v4, v8, v3
float-to-double v4, v4
const/4 v10, 0x5
move-object/from16 v43, v11
aget v11, v8, v10
float-to-double v10, v11
aget v3, v9, v3
move-object/from16 v70, v12
move-object/from16 v45, v13
float-to-double v12, v3
const/4 v3, 0x5
aget v3, v9, v3
move-object/from16 v44, v8
move-object/from16 v52, v9
float-to-double v8, v3
sub-double/2addr v12, v4
sub-double/2addr v8, v10
.line 177
invoke-static {v8, v9, v12, v13}, Ljava/lang/Math;->atan2(DD)D
move-result-wide v3
const-wide v8, 0x404ca5dc1a63c1f8L # 57.29577951308232
mul-double v3, v3, v8
mul-double v3, v3, v56
double-to-float v3, v3
.line 178
invoke-virtual {v0, v3}, Landroid/graphics/Matrix;->preRotate(F)Z
:goto_62c
neg-double v1, v1
double-to-float v1, v1
add-double v6, v6, v41
double-to-float v2, v6
.line 179
invoke-virtual {v0, v1, v2}, Landroid/graphics/Matrix;->preTranslate(FF)Z
move-wide/from16 v8, v47
double-to-float v1, v8
move/from16 v11, v21
int-to-float v2, v11
.line 180
invoke-virtual {v0, v1, v2}, Landroid/graphics/Matrix;->preScale(FF)Z
move-wide/from16 v1, v60
double-to-float v1, v1
const/4 v2, 0x0
.line 181
invoke-virtual {v0, v2, v1}, Landroid/graphics/Matrix;->postTranslate(FF)Z
goto :goto_665
:cond_645
move-wide/from16 v62, v12
move/from16 v11, v21
move-object/from16 v0, v44
move-wide/from16 v14, v52
move-wide/from16 v1, v60
const-wide/16 v22, 0x0
move-object/from16 v44, v8
move-object/from16 v52, v45
move-wide/from16 v8, v47
move-object/from16 v45, v43
move-object/from16 v43, v33
move-object/from16 v33, v5
double-to-float v3, v3
add-double/2addr v6, v1
add-double v6, v6, v41
double-to-float v1, v6
.line 182
invoke-virtual {v0, v3, v1}, Landroid/graphics/Matrix;->setTranslate(FF)V
:goto_665
move-wide/from16 v1, v62
double-to-float v1, v1
.line 183
invoke-virtual {v0, v1}, Landroid/graphics/Matrix;->preRotate(F)Z
if-eqz v35, :cond_692
.line 184
new-instance v1, Landroid/graphics/Path;
invoke-direct {v1}, Landroid/graphics/Path;-><init>()V
const/4 v4, 0x0
.line 185
invoke-virtual/range {v59 .. v59}, Ljava/lang/String;->length()I
move-result v5
const/4 v6, 0x0
const/4 v7, 0x0
move-object/from16 v2, p2
move-wide v9, v8
move-object/from16 v3, v59
move-object/from16 v12, v16
move-object/from16 v13, v33
move-object/from16 v16, v43
move/from16 v21, v46
move-object/from16 v33, v52
move-wide/from16 v46, v56
move-object/from16 v35, v44
move-object v8, v1
invoke-virtual/range {v2 .. v8}, Landroid/graphics/Paint;->getTextPath(Ljava/lang/String;IIFFLandroid/graphics/Path;)V
goto/16 :goto_6f6
:cond_692
move-wide v9, v8
move-object/from16 v12, v16
move-object/from16 v13, v33
move-object/from16 v16, v43
move-object/from16 v35, v44
move/from16 v21, v46
move-object/from16 v33, v52
move-wide/from16 v46, v56
shr-int/lit8 v1, v58, 0x8
.line 186
aget-object v2, v25, v1
if-nez v2, :cond_6ab
const/4 v2, 0x0
move/from16 v4, v58
goto :goto_6b1
:cond_6ab
move/from16 v4, v58
and-int/lit16 v3, v4, 0xff
.line 187
aget v2, v2, v3
:goto_6b1
if-eqz v2, :cond_6ba
.line 188
invoke-virtual {v12, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/graphics/Path;
goto :goto_6ed
.line 189
:cond_6ba
new-instance v8, Landroid/graphics/Path;
invoke-direct {v8}, Landroid/graphics/Path;-><init>()V
const/4 v5, 0x0
const/4 v6, 0x1
const/4 v7, 0x0
const/16 v43, 0x0
move-object/from16 v2, p2
move-object/from16 v3, v59
move/from16 v75, v4
move v4, v5
move v5, v6
move v6, v7
move/from16 v7, v43
move-object/from16 v43, v8
.line 190
invoke-virtual/range {v2 .. v8}, Landroid/graphics/Paint;->getTextPath(Ljava/lang/String;IIFFLandroid/graphics/Path;)V
.line 191
aget-object v2, v25, v1
if-nez v2, :cond_6de
const/16 v2, 0x100
new-array v2, v2, [I
.line 192
aput-object v2, v25, v1
:cond_6de
move/from16 v1, v75
and-int/lit16 v1, v1, 0xff
.line 193
invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
move-result v3
aput v3, v2, v1
move-object/from16 v1, v43
.line 194
invoke-virtual {v12, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 195
:goto_6ed
new-instance v2, Landroid/graphics/Path;
invoke-direct {v2}, Landroid/graphics/Path;-><init>()V
.line 196
invoke-virtual {v2, v1}, Landroid/graphics/Path;->addPath(Landroid/graphics/Path;)V
move-object v1, v2
.line 197
:goto_6f6
new-instance v2, Landroid/graphics/RectF;
invoke-direct {v2}, Landroid/graphics/RectF;-><init>()V
const/4 v3, 0x1
.line 198
invoke-virtual {v1, v2, v3}, Landroid/graphics/Path;->computeBounds(Landroid/graphics/RectF;Z)V
.line 199
invoke-virtual {v2}, Landroid/graphics/RectF;->width()F
move-result v2
const/4 v3, 0x0
cmpl-float v2, v2, v3
if-nez v2, :cond_72f
.line 200
invoke-virtual/range {p1 .. p1}, Landroid/graphics/Canvas;->save()I
move-object/from16 v2, p1
.line 201
invoke-virtual {v2, v0}, Landroid/graphics/Canvas;->concat(Landroid/graphics/Matrix;)V
const/4 v1, 0x0
move-object/from16 v3, p0
.line 202
iget-object v4, v3, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;
move-object/from16 v5, v59
invoke-virtual {v4, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 203
iget-object v4, v3, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;
new-instance v6, Landroid/graphics/Matrix;
invoke-direct {v6, v0}, Landroid/graphics/Matrix;-><init>(Landroid/graphics/Matrix;)V
invoke-virtual {v4, v6}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
move-object/from16 v4, p2
.line 204
invoke-virtual {v2, v5, v1, v1, v4}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
.line 205
invoke-virtual/range {p1 .. p1}, Landroid/graphics/Canvas;->restore()V
move-object/from16 v5, v32
goto :goto_73d
:cond_72f
move-object/from16 v3, p0
move-object/from16 v2, p1
move-object/from16 v4, p2
.line 206
invoke-virtual {v1, v0}, Landroid/graphics/Path;->transform(Landroid/graphics/Matrix;)V
move-object/from16 v5, v32
.line 207
invoke-virtual {v5, v1}, Landroid/graphics/Path;->addPath(Landroid/graphics/Path;)V
:goto_73d
add-int/lit8 v6, v21, 0x1
move-object/from16 v32, v5
move/from16 v21, v11
move-object v5, v13
move-wide/from16 v52, v14
move-object/from16 v7, v33
move-object/from16 v8, v35
move/from16 v1, v40
move-wide/from16 v56, v46
move/from16 v15, v69
move-object/from16 v14, v70
move-object v13, v0
move-object v0, v3
move-wide/from16 v47, v9
move-object/from16 v33, v16
move-wide/from16 v10, v41
move-object v9, v4
move-object/from16 v16, v12
move-object/from16 v12, v45
goto/16 :goto_442
:cond_761
move-object v3, v0
move-object/from16 v5, v32
.line 208
:goto_764
iput-object v5, v3, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;
.line 209
invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/j;->e()V
.line 210
iget-object v0, v3, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;
return-object v0
:pswitch_data_76c
.packed-switch 0x2
:pswitch_344
:pswitch_344
:pswitch_344
:pswitch_313
:pswitch_344
:pswitch_32e
:pswitch_327
:pswitch_322
:pswitch_31c
:pswitch_31a
:pswitch_31a
:pswitch_31a
:pswitch_32a
:pswitch_317
:pswitch_314
.end packed-switch
.end method
.method public final hitTest([F)I
.registers 5
.line 1
iget-object v0, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;
if-nez v0, :cond_9
.line 2
invoke-super {p0, p1}, Lcom/horcrux/svg/j;->hitTest([F)I
move-result p1
return p1
.line 3
:cond_9
iget-object v0, p0, Lcom/horcrux/svg/VirtualView;->mPath:Landroid/graphics/Path;
const/4 v1, -0x1
if-eqz v0, :cond_5e
iget-boolean v0, p0, Lcom/horcrux/svg/VirtualView;->mInvertible:Z
if-eqz v0, :cond_5e
iget-boolean v0, p0, Lcom/horcrux/svg/VirtualView;->mTransformInvertible:Z
if-nez v0, :cond_17
goto :goto_5e
:cond_17
const/4 v0, 0x2
new-array v0, v0, [F
.line 4
iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mInvMatrix:Landroid/graphics/Matrix;
invoke-virtual {v2, v0, p1}, Landroid/graphics/Matrix;->mapPoints([F[F)V
.line 5
iget-object p1, p0, Lcom/horcrux/svg/VirtualView;->mInvTransform:Landroid/graphics/Matrix;
invoke-virtual {p1, v0}, Landroid/graphics/Matrix;->mapPoints([F)V
const/4 p1, 0x0
aget p1, v0, p1
.line 6
invoke-static {p1}, Ljava/lang/Math;->round(F)I
move-result p1
const/4 v2, 0x1
aget v0, v0, v2
.line 7
invoke-static {v0}, Ljava/lang/Math;->round(F)I
move-result v0
.line 8
invoke-virtual {p0}, Lcom/horcrux/svg/RenderableView;->initBounds()V
.line 9
iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mRegion:Landroid/graphics/Region;
if-eqz v2, :cond_3f
.line 10
invoke-virtual {v2, p1, v0}, Landroid/graphics/Region;->contains(II)Z
move-result v2
if-nez v2, :cond_4a
:cond_3f
iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mStrokeRegion:Landroid/graphics/Region;
if-eqz v2, :cond_5e
.line 11
invoke-virtual {v2, p1, v0}, Landroid/graphics/Region;->contains(II)Z
move-result v2
if-nez v2, :cond_4a
goto :goto_5e
.line 12
:cond_4a
invoke-virtual {p0}, Lcom/horcrux/svg/VirtualView;->getClipPath()Landroid/graphics/Path;
move-result-object v2
if-eqz v2, :cond_59
.line 13
iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mClipRegion:Landroid/graphics/Region;
invoke-virtual {v2, p1, v0}, Landroid/graphics/Region;->contains(II)Z
move-result p1
if-nez p1, :cond_59
return v1
.line 14
:cond_59
invoke-virtual {p0}, Landroid/view/View;->getId()I
move-result p1
return p1
:cond_5e
:goto_5e
return v1
.end method
.method public final i(Landroid/graphics/Paint;)D
.registers 7
.line 1
iget-wide v0, p0, Lcom/horcrux/svg/n0;->m:D
invoke-static {v0, v1}, Ljava/lang/Double;->isNaN(D)Z
move-result v0
if-nez v0, :cond_b
.line 2
iget-wide v0, p0, Lcom/horcrux/svg/n0;->m:D
return-wide v0
.line 3
:cond_b
iget-object v0, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;
const-wide/16 v1, 0x0
if-nez v0, :cond_2e
const/4 v0, 0x0
.line 4
:goto_12
invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I
move-result v3
if-ge v0, v3, :cond_2b
.line 5
invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
move-result-object v3
.line 6
instance-of v4, v3, Lcom/horcrux/svg/n0;
if-eqz v4, :cond_28
.line 7
check-cast v3, Lcom/horcrux/svg/n0;
.line 8
invoke-virtual {v3, p1}, Lcom/horcrux/svg/n0;->i(Landroid/graphics/Paint;)D
move-result-wide v3
add-double/2addr v3, v1
move-wide v1, v3
:cond_28
add-int/lit8 v0, v0, 0x1
goto :goto_12
.line 9
:cond_2b
iput-wide v1, p0, Lcom/horcrux/svg/n0;->m:D
return-wide v1
.line 10
:cond_2e
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v3
if-nez v3, :cond_37
.line 11
iput-wide v1, p0, Lcom/horcrux/svg/n0;->m:D
return-wide v1
.line 12
:cond_37
invoke-virtual {p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;
move-result-object v1
.line 13
iget-object v1, v1, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;
.line 14
invoke-virtual {p0, p1, v1}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
.line 15
invoke-virtual {p0, p1, v1}, Lcom/horcrux/svg/a0;->j(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
.line 16
invoke-virtual {p1, v0}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F
move-result p1
float-to-double v0, p1
iput-wide v0, p0, Lcom/horcrux/svg/n0;->m:D
return-wide v0
.end method
.method public final invalidate()V
.registers 2
const/4 v0, 0x0
.line 1
iput-object v0, p0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;
.line 2
invoke-super {p0}, Lcom/horcrux/svg/n0;->invalidate()V
return-void
.end method
.method public final j(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
.registers 10
.line 1
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
.line 2
iget-wide v1, p2, Lcom/horcrux/svg/h;->n:D
.line 3
iget-wide v3, p2, Lcom/horcrux/svg/h;->a:D
iget v5, p0, Lcom/horcrux/svg/VirtualView;->mScale:F
float-to-double v5, v5
mul-double v3, v3, v5
div-double v3, v1, v3
double-to-float v3, v3
invoke-virtual {p1, v3}, Landroid/graphics/Paint;->setLetterSpacing(F)V
const-wide/16 v3, 0x0
cmpl-double v5, v1, v3
if-nez v5, :cond_1f
.line 4
iget-object v1, p2, Lcom/horcrux/svg/h;->i:Lcom/horcrux/svg/e0;
sget-object v2, Lcom/horcrux/svg/e0;->normal:Lcom/horcrux/svg/e0;
if-ne v1, v2, :cond_1f
const/4 v1, 0x1
goto :goto_20
:cond_1f
const/4 v1, 0x0
:goto_20
if-eqz v1, :cond_35
const-string v1, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'hlig\', \'cala\', "
.line 5
invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 6
iget-object v2, p2, Lcom/horcrux/svg/h;->g:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V
goto :goto_47
:cond_35
const-string v1, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'liga\' 0, \'clig\' 0, \'dlig\' 0, \'hlig\' 0, \'cala\' 0, "
.line 7
invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 8
iget-object v2, p2, Lcom/horcrux/svg/h;->g:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V
:goto_47
const/16 v1, 0x1a
if-lt v0, v1, :cond_62
const-string v0, "\'wght\' "
.line 9
invoke-static {v0}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
.line 10
iget v1, p2, Lcom/horcrux/svg/h;->f:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
iget-object p2, p2, Lcom/horcrux/svg/h;->h:Ljava/lang/String;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setFontVariationSettings(Ljava/lang/String;)Z
:cond_62
return-void
.end method
.method public final k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
.registers 13
.line 1
iget-object v0, p2, Lcom/horcrux/svg/h;->e:Lcom/horcrux/svg/f0;
sget-object v1, Lcom/horcrux/svg/f0;->Bold:Lcom/horcrux/svg/f0;
const/4 v2, 0x0
const/4 v3, 0x1
if-eq v0, v1, :cond_11
iget v0, p2, Lcom/horcrux/svg/h;->f:I
const/16 v1, 0x226
if-lt v0, v1, :cond_f
goto :goto_11
:cond_f
const/4 v0, 0x0
goto :goto_12
:cond_11
:goto_11
const/4 v0, 0x1
.line 2
:goto_12
iget-object v1, p2, Lcom/horcrux/svg/h;->c:Lcom/horcrux/svg/d0;
sget-object v4, Lcom/horcrux/svg/d0;->italic:Lcom/horcrux/svg/d0;
if-ne v1, v4, :cond_1a
const/4 v1, 0x1
goto :goto_1b
:cond_1a
const/4 v1, 0x0
:goto_1b
if-eqz v0, :cond_21
if-eqz v1, :cond_21
const/4 v2, 0x3
goto :goto_28
:cond_21
if-eqz v0, :cond_25
const/4 v2, 0x1
goto :goto_28
:cond_25
if-eqz v1, :cond_28
const/4 v2, 0x2
:cond_28
:goto_28
const/4 v0, 0x0
.line 3
iget v4, p2, Lcom/horcrux/svg/h;->f:I
.line 4
iget-object v5, p2, Lcom/horcrux/svg/h;->b:Ljava/lang/String;
if-eqz v5, :cond_b5
.line 5
invoke-virtual {v5}, Ljava/lang/String;->length()I
move-result v6
if-lez v6, :cond_b5
const-string v6, "fonts/"
const-string v7, ".otf"
.line 6
invoke-static {v6, v5, v7}, Landroidx/biometric/i0;->c(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v7
const-string v8, ".ttf"
.line 7
invoke-static {v6, v5, v8}, Landroidx/biometric/i0;->c(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v6
.line 8
sget v8, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v9, 0x1a
if-lt v8, v9, :cond_9e
.line 9
new-instance v0, Landroid/graphics/Typeface$Builder;
iget-object v8, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;
invoke-direct {v0, v8, v7}, Landroid/graphics/Typeface$Builder;-><init>(Landroid/content/res/AssetManager;Ljava/lang/String;)V
.line 10
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
const-string v8, "\'wght\' "
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
iget-object v9, p2, Lcom/horcrux/svg/h;->h:Ljava/lang/String;
invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-virtual {v0, v7}, Landroid/graphics/Typeface$Builder;->setFontVariationSettings(Ljava/lang/String;)Landroid/graphics/Typeface$Builder;
.line 11
invoke-virtual {v0, v4}, Landroid/graphics/Typeface$Builder;->setWeight(I)Landroid/graphics/Typeface$Builder;
.line 12
invoke-virtual {v0, v1}, Landroid/graphics/Typeface$Builder;->setItalic(Z)Landroid/graphics/Typeface$Builder;
.line 13
invoke-virtual {v0}, Landroid/graphics/Typeface$Builder;->build()Landroid/graphics/Typeface;
move-result-object v0
if-nez v0, :cond_b5
.line 14
new-instance v0, Landroid/graphics/Typeface$Builder;
iget-object v7, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;
invoke-direct {v0, v7, v6}, Landroid/graphics/Typeface$Builder;-><init>(Landroid/content/res/AssetManager;Ljava/lang/String;)V
.line 15
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
iget-object v7, p2, Lcom/horcrux/svg/h;->h:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
invoke-virtual {v0, v6}, Landroid/graphics/Typeface$Builder;->setFontVariationSettings(Ljava/lang/String;)Landroid/graphics/Typeface$Builder;
.line 16
invoke-virtual {v0, v4}, Landroid/graphics/Typeface$Builder;->setWeight(I)Landroid/graphics/Typeface$Builder;
.line 17
invoke-virtual {v0, v1}, Landroid/graphics/Typeface$Builder;->setItalic(Z)Landroid/graphics/Typeface$Builder;
.line 18
invoke-virtual {v0}, Landroid/graphics/Typeface$Builder;->build()Landroid/graphics/Typeface;
move-result-object v0
goto :goto_b5
.line 19
:cond_9e
:try_start_9e
iget-object v8, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;
invoke-static {v8, v7}, Landroid/graphics/Typeface;->createFromAsset(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface;
move-result-object v0
.line 20
invoke-static {v0, v2}, Landroid/graphics/Typeface;->create(Landroid/graphics/Typeface;I)Landroid/graphics/Typeface;
move-result-object v0
:try_end_a8
.catch Ljava/lang/Exception; {:try_start_9e .. :try_end_a8} :catch_a9
goto :goto_b5
.line 21
:catch_a9
:try_start_a9
iget-object v7, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;
invoke-static {v7, v6}, Landroid/graphics/Typeface;->createFromAsset(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface;
move-result-object v0
.line 22
invoke-static {v0, v2}, Landroid/graphics/Typeface;->create(Landroid/graphics/Typeface;I)Landroid/graphics/Typeface;
move-result-object v0
:try_end_b3
.catch Ljava/lang/Exception; {:try_start_a9 .. :try_end_b3} :catch_b4
goto :goto_b5
:catch_b4
nop
:cond_b5
:goto_b5
if-nez v0, :cond_c3
.line 23
:try_start_b7
invoke-static {}, Lcom/facebook/react/views/text/ReactFontManager;->getInstance()Lcom/facebook/react/views/text/ReactFontManager;
move-result-object v6
iget-object v7, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;
invoke-virtual {v6, v5, v2, v7}, Lcom/facebook/react/views/text/ReactFontManager;->getTypeface(Ljava/lang/String;ILandroid/content/res/AssetManager;)Landroid/graphics/Typeface;
move-result-object v0
:try_end_c1
.catch Ljava/lang/Exception; {:try_start_b7 .. :try_end_c1} :catch_c2
goto :goto_c3
:catch_c2
nop
.line 24
:cond_c3
:goto_c3
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v5, 0x1c
if-lt v2, v5, :cond_cd
.line 25
invoke-static {v0, v4, v1}, Landroid/graphics/Typeface;->create(Landroid/graphics/Typeface;IZ)Landroid/graphics/Typeface;
move-result-object v0
.line 26
:cond_cd
invoke-virtual {p1, v3}, Landroid/graphics/Paint;->setLinearText(Z)V
.line 27
invoke-virtual {p1, v3}, Landroid/graphics/Paint;->setSubpixelText(Z)V
.line 28
invoke-virtual {p1, v0}, Landroid/graphics/Paint;->setTypeface(Landroid/graphics/Typeface;)Landroid/graphics/Typeface;
.line 29
iget-wide v0, p2, Lcom/horcrux/svg/h;->a:D
iget p2, p0, Lcom/horcrux/svg/VirtualView;->mScale:F
float-to-double v2, p2
mul-double v0, v0, v2
double-to-float p2, v0
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setTextSize(F)V
const/4 p2, 0x0
.line 30
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setLetterSpacing(F)V
return-void
.end method
.method public final l(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
.registers 15
.line 1
invoke-virtual {p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;
move-result-object v0
.line 2
invoke-virtual {p0}, Lcom/horcrux/svg/n0;->f()V
.line 3
iget-object v1, v0, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;
.line 4
new-instance v4, Landroid/text/TextPaint;
invoke-direct {v4, p2}, Landroid/text/TextPaint;-><init>(Landroid/graphics/Paint;)V
.line 5
invoke-virtual {p0, v4, v1}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
.line 6
invoke-virtual {p0, v4, v1}, Lcom/horcrux/svg/a0;->j(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
.line 7
iget-wide v10, v0, Lcom/horcrux/svg/i;->q:D
.line 8
sget-object p2, Lcom/horcrux/svg/a0$a;->a:[I
iget-object v1, v1, Lcom/horcrux/svg/h;->j:Lcom/horcrux/svg/g0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aget p2, p2, v1
const/4 v1, 0x2
if-eq p2, v1, :cond_2c
const/4 v1, 0x3
if-eq p2, v1, :cond_29
.line 9
sget-object p2, Landroid/text/Layout$Alignment;->ALIGN_NORMAL:Landroid/text/Layout$Alignment;
goto :goto_2e
.line 10
:cond_29
sget-object p2, Landroid/text/Layout$Alignment;->ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
goto :goto_2e
.line 11
:cond_2c
sget-object p2, Landroid/text/Layout$Alignment;->ALIGN_CENTER:Landroid/text/Layout$Alignment;
.line 12
:goto_2e
new-instance v3, Landroid/text/SpannableString;
iget-object v1, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;
invoke-direct {v3, v1}, Landroid/text/SpannableString;-><init>(Ljava/lang/CharSequence;)V
.line 13
iget-object v5, p0, Lcom/horcrux/svg/n0;->c:Lcom/horcrux/svg/SVGLength;
invoke-virtual {p1}, Landroid/graphics/Canvas;->getWidth()I
move-result v1
int-to-double v6, v1
iget v1, p0, Lcom/horcrux/svg/VirtualView;->mScale:F
float-to-double v8, v1
invoke-static/range {v5 .. v11}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D
move-result-wide v1
double-to-int v5, v1
.line 14
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x17
const/4 v10, 0x0
if-ge v1, v2, :cond_57
.line 15
new-instance v1, Landroid/text/StaticLayout;
const/high16 v7, 0x3f800000 # 1.0f
const/4 v8, 0x0
const/4 v9, 0x1
move-object v2, v1
move-object v6, p2
invoke-direct/range {v2 .. v9}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZ)V
goto :goto_7b
.line 16
:cond_57
invoke-virtual {v3}, Landroid/text/SpannableString;->length()I
move-result v1
invoke-static {v3, v10, v1, v4, v5}, Landroid/text/StaticLayout$Builder;->obtain(Ljava/lang/CharSequence;IILandroid/text/TextPaint;I)Landroid/text/StaticLayout$Builder;
move-result-object v1
.line 17
invoke-virtual {v1, p2}, Landroid/text/StaticLayout$Builder;->setAlignment(Landroid/text/Layout$Alignment;)Landroid/text/StaticLayout$Builder;
move-result-object p2
const/4 v1, 0x0
const/high16 v2, 0x3f800000 # 1.0f
.line 18
invoke-virtual {p2, v1, v2}, Landroid/text/StaticLayout$Builder;->setLineSpacing(FF)Landroid/text/StaticLayout$Builder;
move-result-object p2
const/4 v1, 0x1
.line 19
invoke-virtual {p2, v1}, Landroid/text/StaticLayout$Builder;->setIncludePad(Z)Landroid/text/StaticLayout$Builder;
move-result-object p2
.line 20
invoke-virtual {p2, v1}, Landroid/text/StaticLayout$Builder;->setBreakStrategy(I)Landroid/text/StaticLayout$Builder;
move-result-object p2
.line 21
invoke-virtual {p2, v1}, Landroid/text/StaticLayout$Builder;->setHyphenationFrequency(I)Landroid/text/StaticLayout$Builder;
move-result-object p2
.line 22
invoke-virtual {p2}, Landroid/text/StaticLayout$Builder;->build()Landroid/text/StaticLayout;
move-result-object v1
.line 23
:goto_7b
invoke-virtual {v1, v10}, Landroid/text/Layout;->getLineAscent(I)I
move-result p2
const-wide/16 v2, 0x0
.line 24
invoke-virtual {v0, v2, v3}, Lcom/horcrux/svg/i;->c(D)D
move-result-wide v2
double-to-float v2, v2
.line 25
invoke-virtual {v0}, Lcom/horcrux/svg/i;->d()D
move-result-wide v3
int-to-double v5, p2
add-double/2addr v3, v5
double-to-float p2, v3
.line 26
invoke-virtual {p0}, Lcom/horcrux/svg/j;->e()V
.line 27
invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
.line 28
invoke-virtual {p1, v2, p2}, Landroid/graphics/Canvas;->translate(FF)V
.line 29
invoke-virtual {v1, p1}, Landroid/text/Layout;->draw(Landroid/graphics/Canvas;)V
.line 30
invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V
return-void
.end method
.method public setContent(Ljava/lang/String;)V
.registers 2
.annotation runtime Lcom/facebook/react/uimanager/annotations/ReactProp;
name = "content"
.end annotation
.line 1
iput-object p1, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;
.line 2
invoke-virtual {p0}, Lcom/horcrux/svg/a0;->invalidate()V
return-void
.end method