apkfuckery/com.discord/smali/com/discord/widgets/chat/input/MentionUtilsKt.smali

225 lines
4.1 KiB
Smali
Raw Normal View History

2020-05-17 12:40:10 +00:00
.class public final Lcom/discord/widgets/chat/input/MentionUtilsKt;
.super Ljava/lang/Object;
.source "MentionUtils.kt"
# static fields
.field public static final CHANNELS_CHAR:C = '#'
.field public static final DEFAULT_LEADING_IDENTIFIERS:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/Character;",
">;"
}
.end annotation
.end field
.field public static final EMOJIS_CHAR:C = ':'
.field public static final MENTIONS_CHAR:C = '@'
# direct methods
.method public static constructor <clinit>()V
.locals 3
const/4 v0, 0x3
new-array v0, v0, [Ljava/lang/Character;
const/16 v1, 0x40
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
move-result-object v1
const/4 v2, 0x0
aput-object v1, v0, v2
const/16 v1, 0x3a
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
move-result-object v1
const/4 v2, 0x1
aput-object v1, v0, v2
const/16 v1, 0x23
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
move-result-object v1
const/4 v2, 0x2
aput-object v1, v0, v2
2020-09-16 23:45:23 +00:00
invoke-static {v0}, Lf/h/a/f/e/n/f;->hashSetOf([Ljava/lang/Object;)Ljava/util/HashSet;
2020-05-17 12:40:10 +00:00
move-result-object v0
sput-object v0, Lcom/discord/widgets/chat/input/MentionUtilsKt;->DEFAULT_LEADING_IDENTIFIERS:Ljava/util/Set;
return-void
.end method
.method public static final getDEFAULT_LEADING_IDENTIFIERS()Ljava/util/Set;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Ljava/lang/Character;",
">;"
}
.end annotation
sget-object v0, Lcom/discord/widgets/chat/input/MentionUtilsKt;->DEFAULT_LEADING_IDENTIFIERS:Ljava/util/Set;
return-object v0
.end method
.method public static final getSelectedToken(Ljava/lang/String;I)Ljava/lang/String;
.locals 5
2020-09-16 23:45:23 +00:00
const-string v0, "content"
2020-05-17 12:40:10 +00:00
2020-09-23 03:12:49 +00:00
invoke-static {p0, v0}, Lc0/n/c/j;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
2020-05-17 12:40:10 +00:00
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
2020-09-16 23:45:23 +00:00
move-result v0
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
const/4 v1, 0x0
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
const/4 v2, 0x1
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
if-nez v0, :cond_0
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
const/4 v0, 0x1
2020-05-17 12:40:10 +00:00
goto :goto_0
:cond_0
2020-09-16 23:45:23 +00:00
const/4 v0, 0x0
2020-05-17 12:40:10 +00:00
:goto_0
2020-09-16 23:45:23 +00:00
const/4 v3, 0x0
2020-09-09 19:21:20 +00:00
2020-09-16 23:45:23 +00:00
if-eqz v0, :cond_1
return-object v3
2020-05-17 12:40:10 +00:00
:cond_1
invoke-virtual {p0}, Ljava/lang/String;->length()I
2020-09-16 23:45:23 +00:00
move-result v0
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
if-ne p1, v0, :cond_2
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
const/4 v0, 0x1
2020-05-17 12:40:10 +00:00
goto :goto_1
:cond_2
2020-09-16 23:45:23 +00:00
const/4 v0, 0x0
2020-05-17 12:40:10 +00:00
:goto_1
if-eqz p1, :cond_4
add-int/lit8 v4, p1, -0x1
invoke-virtual {p0, v4}, Ljava/lang/String;->charAt(I)C
move-result v4
2020-09-22 07:09:10 +00:00
invoke-static {v4}, Lc0/j/a;->isWhitespace(C)Z
2020-05-17 12:40:10 +00:00
move-result v4
if-eqz v4, :cond_3
goto :goto_2
:cond_3
const/4 v4, 0x0
goto :goto_3
:cond_4
:goto_2
const/4 v4, 0x1
:goto_3
2020-09-16 23:45:23 +00:00
if-eqz v0, :cond_5
2020-05-17 12:40:10 +00:00
if-eqz v4, :cond_5
2020-09-16 23:45:23 +00:00
return-object v3
2020-05-17 12:40:10 +00:00
:cond_5
2020-09-16 23:45:23 +00:00
const/16 v0, 0x20
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
invoke-static {p0, v0, p1}, Lcom/discord/widgets/chat/input/MentionUtilsKt;->reverseIndexOf(Ljava/lang/String;CI)I
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
move-result v0
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
add-int/2addr v0, v2
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
invoke-virtual {p0, v0, p1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
2020-05-17 12:40:10 +00:00
move-result-object p0
const-string p1, "(this as java.lang.Strin\u2026ing(startIndex, endIndex)"
2020-09-23 03:12:49 +00:00
invoke-static {p0, p1}, Lc0/n/c/j;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
2020-05-17 12:40:10 +00:00
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
move-result p1
if-lez p1, :cond_6
2020-09-16 23:45:23 +00:00
const/4 v1, 0x1
2020-05-17 12:40:10 +00:00
:cond_6
2020-09-16 23:45:23 +00:00
if-eqz v1, :cond_7
2020-05-17 12:40:10 +00:00
2020-09-16 23:45:23 +00:00
move-object v3, p0
2020-05-17 12:40:10 +00:00
:cond_7
2020-09-16 23:45:23 +00:00
return-object v3
2020-05-17 12:40:10 +00:00
.end method
.method public static final reverseIndexOf(Ljava/lang/String;CI)I
.locals 2
const/4 v0, -0x1
add-int/2addr p2, v0
:goto_0
if-ltz p2, :cond_1
invoke-virtual {p0, p2}, Ljava/lang/String;->charAt(I)C
move-result v1
if-ne v1, p1, :cond_0
return p2
:cond_0
add-int/lit8 p2, p2, -0x1
goto :goto_0
:cond_1
return v0
.end method