a.smali
.class public final Lsg/bigo/live/support64/component/chat/a;
.super Landroid/text/style/ImageSpan;
.source "SourceFile"
# instance fields
.field private a:Ljava/lang/ref/WeakReference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ref/WeakReference<",
"Landroid/graphics/drawable/Drawable;",
">;"
}
.end annotation
.end field
.field private b:I
.field private c:Landroid/graphics/Paint;
# direct methods
.method public constructor <init>(Landroid/graphics/drawable/Drawable;I)V
.registers 4
const/4 v0, 0x0
.line 26
invoke-direct {p0, p1, v0}, Landroid/text/style/ImageSpan;-><init>(Landroid/graphics/drawable/Drawable;I)V
.line 27
iput p2, p0, Lsg/bigo/live/support64/component/chat/a;->b:I
.line 28
new-instance p1, Landroid/graphics/Paint;
invoke-direct {p1}, Landroid/graphics/Paint;-><init>()V
iput-object p1, p0, Lsg/bigo/live/support64/component/chat/a;->c:Landroid/graphics/Paint;
const/4 p2, 0x1
.line 29
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setFlags(I)V
.line 30
iget-object p1, p0, Lsg/bigo/live/support64/component/chat/a;->c:Landroid/graphics/Paint;
const/4 p2, 0x7
invoke-static {p2}, Lsg/bigo/live/support64/utils/w;->a(I)I
move-result p2
int-to-float p2, p2
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setTextSize(F)V
.line 31
iget-object p1, p0, Lsg/bigo/live/support64/component/chat/a;->c:Landroid/graphics/Paint;
sget-object p2, Landroid/graphics/Paint$Align;->CENTER:Landroid/graphics/Paint$Align;
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setTextAlign(Landroid/graphics/Paint$Align;)V
.line 32
iget-object p1, p0, Lsg/bigo/live/support64/component/chat/a;->c:Landroid/graphics/Paint;
const/4 p2, -0x1
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setColor(I)V
return-void
.end method
.method private a()Landroid/graphics/drawable/Drawable;
.registers 3
.line 78
iget-object v0, p0, Lsg/bigo/live/support64/component/chat/a;->a:Ljava/lang/ref/WeakReference;
if-eqz v0, :cond_b
.line 82
invoke-virtual {v0}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/graphics/drawable/Drawable;
goto :goto_c
:cond_b
const/4 v0, 0x0
:goto_c
if-nez v0, :cond_19
.line 85
invoke-virtual {p0}, Lsg/bigo/live/support64/component/chat/a;->getDrawable()Landroid/graphics/drawable/Drawable;
move-result-object v0
.line 86
new-instance v1, Ljava/lang/ref/WeakReference;
invoke-direct {v1, v0}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
iput-object v1, p0, Lsg/bigo/live/support64/component/chat/a;->a:Ljava/lang/ref/WeakReference;
:cond_19
return-object v0
.end method
# virtual methods
.method public final draw(Landroid/graphics/Canvas;Ljava/lang/CharSequence;IIFIIILandroid/graphics/Paint;)V
.registers 10
.line 60
invoke-direct {p0}, Lsg/bigo/live/support64/component/chat/a;->a()Landroid/graphics/drawable/Drawable;
move-result-object p2
.line 61
invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
sub-int/2addr p8, p6
.line 62
invoke-virtual {p2}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p3
iget p3, p3, Landroid/graphics/Rect;->bottom:I
sub-int/2addr p8, p3
div-int/lit8 p8, p8, 0x2
add-int/2addr p6, p8
int-to-float p3, p6
.line 63
invoke-virtual {p1, p5, p3}, Landroid/graphics/Canvas;->translate(FF)V
.line 64
invoke-virtual {p2, p1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V
.line 66
iget p3, p0, Lsg/bigo/live/support64/component/chat/a;->b:I
invoke-static {p3}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object p3
.line 68
iget-object p4, p0, Lsg/bigo/live/support64/component/chat/a;->c:Landroid/graphics/Paint;
invoke-virtual {p4}, Landroid/graphics/Paint;->getFontMetricsInt()Landroid/graphics/Paint$FontMetricsInt;
move-result-object p4
.line 69
invoke-virtual {p2}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p5
iget p5, p5, Landroid/graphics/Rect;->bottom:I
invoke-virtual {p2}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p6
iget p6, p6, Landroid/graphics/Rect;->top:I
add-int/2addr p5, p6
iget p6, p4, Landroid/graphics/Paint$FontMetricsInt;->bottom:I
sub-int/2addr p5, p6
iget p4, p4, Landroid/graphics/Paint$FontMetricsInt;->top:I
sub-int/2addr p5, p4
div-int/lit8 p5, p5, 0x2
add-int/lit8 p5, p5, -0x6
.line 70
new-instance p4, Landroid/graphics/Rect;
invoke-direct {p4}, Landroid/graphics/Rect;-><init>()V
.line 71
iget-object p6, p0, Lsg/bigo/live/support64/component/chat/a;->c:Landroid/graphics/Paint;
invoke-virtual {p3}, Ljava/lang/String;->length()I
move-result p7
const/4 p8, 0x0
invoke-virtual {p6, p3, p8, p7, p4}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
.line 72
invoke-virtual {p2}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p2
invoke-virtual {p2}, Landroid/graphics/Rect;->centerX()I
move-result p2
int-to-float p2, p2
int-to-float p4, p5
iget-object p5, p0, Lsg/bigo/live/support64/component/chat/a;->c:Landroid/graphics/Paint;
invoke-virtual {p1, p3, p2, p4, p5}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
.line 74
invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V
return-void
.end method
.method public final getSize(Landroid/graphics/Paint;Ljava/lang/CharSequence;IILandroid/graphics/Paint$FontMetricsInt;)I
.registers 6
.line 40
invoke-direct {p0}, Lsg/bigo/live/support64/component/chat/a;->a()Landroid/graphics/drawable/Drawable;
move-result-object p2
.line 41
invoke-virtual {p2}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p2
if-eqz p5, :cond_1e
.line 44
invoke-virtual {p1}, Landroid/graphics/Paint;->getFontMetricsInt()Landroid/graphics/Paint$FontMetricsInt;
move-result-object p1
.line 46
iget p3, p1, Landroid/graphics/Paint$FontMetricsInt;->ascent:I
iput p3, p5, Landroid/graphics/Paint$FontMetricsInt;->ascent:I
.line 47
iget p3, p1, Landroid/graphics/Paint$FontMetricsInt;->descent:I
iput p3, p5, Landroid/graphics/Paint$FontMetricsInt;->descent:I
.line 48
iget p3, p1, Landroid/graphics/Paint$FontMetricsInt;->top:I
iput p3, p5, Landroid/graphics/Paint$FontMetricsInt;->top:I
.line 49
iget p1, p1, Landroid/graphics/Paint$FontMetricsInt;->bottom:I
iput p1, p5, Landroid/graphics/Paint$FontMetricsInt;->bottom:I
.line 52
:cond_1e
iget p1, p2, Landroid/graphics/Rect;->right:I
return p1
.end method