DirtySpanWatcher.smali

.class public final Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/DirtySpanWatcher;
.super Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/SpanWatcherAdapter;
.source "DirtySpanWatcher.kt"


# annotations
.annotation system Ldalvik/annotation/SourceDebugExtension;
    value = "SMAP\nDirtySpanWatcher.kt\nKotlin\n*S Kotlin\n*F\n+ 1 DirtySpanWatcher.kt\nim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/DirtySpanWatcher\n+ 2 _Arrays.kt\nkotlin/collections/ArraysKt___ArraysKt\n+ 3 _Collections.kt\nkotlin/collections/CollectionsKt___CollectionsKt\n*L\n1#1,20:1\n3271#2:21\n3688#2,2:22\n1591#3,2:24\n*E\n*S KotlinDebug\n*F\n+ 1 DirtySpanWatcher.kt\nim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/DirtySpanWatcher\n*L\n13#1:21\n13#1,2:22\n15#1,2:24\n*E\n"
.end annotation

.annotation runtime Lkotlin/Metadata;
    bv = {
        0x1,
        0x0,
        0x3
    }
    d1 = {
        "\u00000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\u0010\u000b\n\u0002\u0008\u0002\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0010\u0008\n\u0002\u0008\u0004\u0018\u00002\u00020\u0001B\u0019\u0012\u0012\u0010\u0002\u001a\u000e\u0012\u0004\u0012\u00020\u0004\u0012\u0004\u0012\u00020\u00050\u0003\u00a2\u0006\u0002\u0010\u0006J8\u0010\u0007\u001a\u00020\u00082\u0006\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u00042\u0006\u0010\u000c\u001a\u00020\r2\u0006\u0010\u000e\u001a\u00020\r2\u0006\u0010\u000f\u001a\u00020\r2\u0006\u0010\u0010\u001a\u00020\rH\u0016R\u001a\u0010\u0002\u001a\u000e\u0012\u0004\u0012\u00020\u0004\u0012\u0004\u0012\u00020\u00050\u0003X\u0082\u0004\u00a2\u0006\u0002\n\u0000\u00a8\u0006\u0011"
    }
    d2 = {
        "Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/DirtySpanWatcher;",
        "Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/SpanWatcherAdapter;",
        "removePredicate",
        "Lkotlin/Function1;",
        "",
        "",
        "(Lkotlin/jvm/functions/Function1;)V",
        "onSpanChanged",
        "",
        "text",
        "Landroid/text/Spannable;",
        "what",
        "ostart",
        "",
        "oend",
        "nstart",
        "nend",
        "HMessagesPrj_prodRelease"
    }
    k = 0x1
    mv = {
        0x1,
        0x1,
        0x10
    }
.end annotation


# instance fields
.field private final removePredicate:Lkotlin/jvm/functions/Function1;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Lkotlin/jvm/functions/Function1<",
            "Ljava/lang/Object;",
            "Ljava/lang/Boolean;",
            ">;"
        }
    .end annotation
.end field


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

    return-void
.end method

.method public constructor <init>(Lkotlin/jvm/functions/Function1;)V
    .registers 3
    .param p1, "removePredicate"    # Lkotlin/jvm/functions/Function1;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lkotlin/jvm/functions/Function1<",
            "Ljava/lang/Object;",
            "Ljava/lang/Boolean;",
            ">;)V"
        }
    .end annotation

    const-string v0, "removePredicate"

    invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V

    .line 6
    invoke-direct {p0}, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/SpanWatcherAdapter;-><init>()V

    iput-object p1, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/DirtySpanWatcher;->removePredicate:Lkotlin/jvm/functions/Function1;

    return-void
.end method


# virtual methods
.method public onSpanChanged(Landroid/text/Spannable;Ljava/lang/Object;IIII)V
    .registers 23
    .param p1, "text"    # Landroid/text/Spannable;
    .param p2, "what"    # Ljava/lang/Object;
    .param p3, "ostart"    # I
    .param p4, "oend"    # I
    .param p5, "nstart"    # I
    .param p6, "nend"    # I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    const-string v2, "text"

    invoke-static {v0, v2}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V

    const-string v2, "what"

    invoke-static {v1, v2}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V

    .line 10
    instance-of v2, v1, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/span/DirtySpan;

    if-eqz v2, :cond_7d

    move-object v2, v1

    check-cast v2, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/span/DirtySpan;

    invoke-interface {v2, v0}, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/span/DirtySpan;->isDirty(Landroid/text/Spannable;)Z

    move-result v2

    if-eqz v2, :cond_7d

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

    move-result v2

    .line 12
    .local v2, "spanStart":I
    invoke-interface/range {p1 .. p2}, Landroid/text/Spannable;->getSpanEnd(Ljava/lang/Object;)I

    move-result v3

    .line 13
    .local v3, "spanEnd":I
    nop

    .line 15
    nop

    .line 13
    const-class v4, Ljava/lang/Object;

    invoke-interface {v0, v2, v3, v4}, Landroid/text/Spannable;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object;

    move-result-object v4

    const-string v5, "text.getSpans(spanStart, spanEnd, Any::class.java)"

    invoke-static {v4, v5}, Lkotlin/jvm/internal/Intrinsics;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V

    .local v4, "$this$filter$iv":[Ljava/lang/Object;
    const/4 v5, 0x0

    .line 21
    .local v5, "$i$f$filter":I
    new-instance v6, Ljava/util/ArrayList;

    invoke-direct {v6}, Ljava/util/ArrayList;-><init>()V

    check-cast v6, Ljava/util/Collection;

    .local v6, "destination$iv$iv":Ljava/util/Collection;
    move-object v7, v4

    .local v7, "$this$filterTo$iv$iv":[Ljava/lang/Object;
    const/4 v8, 0x0

    .line 22
    .local v8, "$i$f$filterTo":I
    array-length v9, v7

    const/4 v10, 0x0

    :goto_3c
    if-ge v10, v9, :cond_5f

    aget-object v11, v7, v10

    .local v11, "element$iv$iv":Ljava/lang/Object;
    move-object v12, v11

    .local v12, "it":Ljava/lang/Object;
    const/4 v13, 0x0

    .line 14
    .local v13, "$i$a$-filter-DirtySpanWatcher$onSpanChanged$1":I
    move-object/from16 v14, p0

    iget-object v15, v14, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/edittext/watcher/DirtySpanWatcher;->removePredicate:Lkotlin/jvm/functions/Function1;

    const-string v1, "it"

    invoke-static {v12, v1}, Lkotlin/jvm/internal/Intrinsics;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V

    invoke-interface {v15, v12}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/lang/Boolean;

    invoke-virtual {v1}, Ljava/lang/Boolean;->booleanValue()Z

    move-result v1

    .end local v12    # "it":Ljava/lang/Object;
    .end local v13    # "$i$a$-filter-DirtySpanWatcher$onSpanChanged$1":I
    if-eqz v1, :cond_5a

    invoke-interface {v6, v11}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z

    .end local v11    # "element$iv$iv":Ljava/lang/Object;
    :cond_5a
    add-int/lit8 v10, v10, 0x1

    move-object/from16 v1, p2

    goto :goto_3c

    .line 23
    :cond_5f
    move-object/from16 v14, p0

    .end local v6    # "destination$iv$iv":Ljava/util/Collection;
    .end local v7    # "$this$filterTo$iv$iv":[Ljava/lang/Object;
    .end local v8    # "$i$f$filterTo":I
    move-object v1, v6

    check-cast v1, Ljava/util/List;

    .end local v4    # "$this$filter$iv":[Ljava/lang/Object;
    .end local v5    # "$i$f$filter":I
    check-cast v1, Ljava/lang/Iterable;

    .line 15
    .local v1, "$this$forEach$iv":Ljava/lang/Iterable;
    const/4 v4, 0x0

    .line 24
    .local v4, "$i$f$forEach":I
    invoke-interface {v1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;

    move-result-object v5

    :goto_6b
    invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z

    move-result v6

    if-eqz v6, :cond_7c

    invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v6

    .local v6, "element$iv":Ljava/lang/Object;
    move-object v7, v6

    .local v7, "it":Ljava/lang/Object;
    const/4 v8, 0x0

    .line 16
    .local v8, "$i$a$-forEach-DirtySpanWatcher$onSpanChanged$2":I
    invoke-interface {v0, v7}, Landroid/text/Spannable;->removeSpan(Ljava/lang/Object;)V

    .line 17
    .end local v7    # "it":Ljava/lang/Object;
    .end local v8    # "$i$a$-forEach-DirtySpanWatcher$onSpanChanged$2":I
    nop

    .end local v6    # "element$iv":Ljava/lang/Object;
    goto :goto_6b

    .line 25
    :cond_7c
    goto :goto_7f

    .line 10
    .end local v1    # "$this$forEach$iv":Ljava/lang/Iterable;
    .end local v2    # "spanStart":I
    .end local v3    # "spanEnd":I
    .end local v4    # "$i$f$forEach":I
    :cond_7d
    move-object/from16 v14, p0

    .line 19
    :goto_7f
    return-void
.end method