l.smali

.class public Lsg/bigo/live/support64/component/chat/l;
.super Landroid/text/method/LinkMovementMethod;
.source "SourceFile"


# static fields
.field private static final a:Ljava/lang/String;

.field private static c:Landroid/text/method/LinkMovementMethod;


# instance fields
.field private b:Lsg/bigo/live/support64/component/chat/holder/a/b;


# direct methods
.method static constructor <clinit>()V
    .registers 1

    .line 22
    const-class v0, Lsg/bigo/live/support64/component/chat/l;

    invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;

    move-result-object v0

    sput-object v0, Lsg/bigo/live/support64/component/chat/l;->a:Ljava/lang/String;

    return-void
.end method

.method public constructor <init>()V
    .registers 1

    .line 20
    invoke-direct {p0}, Landroid/text/method/LinkMovementMethod;-><init>()V

    return-void
.end method

.method public static a()Landroid/text/method/MovementMethod;
    .registers 1

    .line 86
    sget-object v0, Lsg/bigo/live/support64/component/chat/l;->c:Landroid/text/method/LinkMovementMethod;

    if-nez v0, :cond_b

    .line 87
    new-instance v0, Lsg/bigo/live/support64/component/chat/l;

    invoke-direct {v0}, Lsg/bigo/live/support64/component/chat/l;-><init>()V

    sput-object v0, Lsg/bigo/live/support64/component/chat/l;->c:Landroid/text/method/LinkMovementMethod;

    .line 90
    :cond_b
    sget-object v0, Lsg/bigo/live/support64/component/chat/l;->c:Landroid/text/method/LinkMovementMethod;

    return-object v0
.end method

.method private static a(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/MotionEvent;)Lsg/bigo/live/support64/component/chat/holder/a/b;
    .registers 5

    .line 57
    invoke-virtual {p2}, Landroid/view/MotionEvent;->getX()F

    move-result v0

    float-to-int v0, v0

    .line 58
    invoke-virtual {p2}, Landroid/view/MotionEvent;->getY()F

    move-result p2

    float-to-int p2, p2

    .line 60
    invoke-virtual {p0}, Landroid/widget/TextView;->getTotalPaddingLeft()I

    move-result v1

    sub-int/2addr v0, v1

    .line 61
    invoke-virtual {p0}, Landroid/widget/TextView;->getTotalPaddingTop()I

    move-result v1

    sub-int/2addr p2, v1

    .line 63
    invoke-virtual {p0}, Landroid/widget/TextView;->getScrollX()I

    move-result v1

    add-int/2addr v0, v1

    .line 64
    invoke-virtual {p0}, Landroid/widget/TextView;->getScrollY()I

    move-result v1

    add-int/2addr p2, v1

    .line 66
    invoke-virtual {p0}, Landroid/widget/TextView;->getLayout()Landroid/text/Layout;

    move-result-object p0

    .line 67
    invoke-virtual {p0, p2}, Landroid/text/Layout;->getLineForVertical(I)I

    move-result p2

    int-to-float v0, v0

    .line 71
    :try_start_27
    invoke-virtual {p0, p2, v0}, Landroid/text/Layout;->getOffsetForHorizontal(IF)I

    move-result p0
    :try_end_2b
    .catch Ljava/lang/Exception; {:try_start_27 .. :try_end_2b} :catch_2c

    goto :goto_2f

    .line 73
    :catch_2c
    sget-boolean p0, Lsg/bigo/live/support64/s;->b:Z

    const/4 p0, -0x1

    .line 77
    :goto_2f
    const-class p2, Lsg/bigo/live/support64/component/chat/holder/a/b;

    invoke-interface {p1, p0, p0, p2}, Landroid/text/Spannable;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object;

    move-result-object p0

    check-cast p0, [Lsg/bigo/live/support64/component/chat/holder/a/b;

    const/4 p1, 0x0

    .line 79
    array-length p2, p0

    if-lez p2, :cond_3e

    const/4 p1, 0x0

    .line 80
    aget-object p1, p0, p1

    :cond_3e
    return-object p1
.end method


# virtual methods
.method public onTouchEvent(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/MotionEvent;)Z
    .registers 9

    .line 29
    invoke-static {p1, p2, p3}, Lsg/bigo/live/support64/component/chat/l;->a(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/MotionEvent;)Lsg/bigo/live/support64/component/chat/holder/a/b;

    move-result-object v0

    iput-object v0, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    .line 31
    invoke-virtual {p3}, Landroid/view/MotionEvent;->getAction()I

    move-result v0

    const/4 v1, 0x1

    if-nez v0, :cond_23

    .line 32
    iget-object p1, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    if-eqz p1, :cond_4c

    .line 1031
    iput-boolean v1, p1, Lsg/bigo/live/support64/component/chat/holder/a/b;->d:Z

    .line 34
    iget-object p1, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    invoke-interface {p2, p1}, Landroid/text/Spannable;->getSpanStart(Ljava/lang/Object;)I

    move-result p1

    iget-object p3, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    .line 35
    invoke-interface {p2, p3}, Landroid/text/Spannable;->getSpanEnd(Ljava/lang/Object;)I

    move-result p3

    .line 34
    invoke-static {p2, p1, p3}, Landroid/text/Selection;->setSelection(Landroid/text/Spannable;II)V

    goto :goto_4c

    .line 37
    :cond_23
    invoke-virtual {p3}, Landroid/view/MotionEvent;->getAction()I

    move-result v0

    const/4 v2, 0x2

    const/4 v3, 0x0

    const/4 v4, 0x0

    if-ne v0, v2, :cond_3e

    .line 38
    invoke-static {p1, p2, p3}, Lsg/bigo/live/support64/component/chat/l;->a(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/MotionEvent;)Lsg/bigo/live/support64/component/chat/holder/a/b;

    move-result-object p1

    .line 39
    iget-object p3, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    if-eqz p3, :cond_4c

    if-eq p1, p3, :cond_4c

    .line 2031
    iput-boolean v3, p3, Lsg/bigo/live/support64/component/chat/holder/a/b;->d:Z

    .line 41
    iput-object v4, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    .line 42
    invoke-static {p2}, Landroid/text/Selection;->removeSelection(Landroid/text/Spannable;)V

    goto :goto_4c

    .line 45
    :cond_3e
    iget-object v0, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    if-eqz v0, :cond_47

    .line 3031
    iput-boolean v3, v0, Lsg/bigo/live/support64/component/chat/holder/a/b;->d:Z

    .line 47
    invoke-super {p0, p1, p2, p3}, Landroid/text/method/LinkMovementMethod;->onTouchEvent(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/MotionEvent;)Z

    .line 49
    :cond_47
    iput-object v4, p0, Lsg/bigo/live/support64/component/chat/l;->b:Lsg/bigo/live/support64/component/chat/holder/a/b;

    .line 50
    invoke-static {p2}, Landroid/text/Selection;->removeSelection(Landroid/text/Spannable;)V

    :cond_4c
    :goto_4c
    return v1
.end method