apkfuckery/com.discord/smali/com/discord/utilities/presence/PresenceUtils.smali

531 lines
12 KiB
Smali
Raw Normal View History

2019-02-04 20:08:30 +00:00
.class public final Lcom/discord/utilities/presence/PresenceUtils;
.super Ljava/lang/Object;
2019-02-04 20:29:01 +00:00
.source "PresenceUtils.kt"
2019-02-04 20:08:30 +00:00
# static fields
.field public static final INSTANCE:Lcom/discord/utilities/presence/PresenceUtils;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Lcom/discord/utilities/presence/PresenceUtils;
invoke-direct {v0}, Lcom/discord/utilities/presence/PresenceUtils;-><init>()V
sput-object v0, Lcom/discord/utilities/presence/PresenceUtils;->INSTANCE:Lcom/discord/utilities/presence/PresenceUtils;
return-void
.end method
.method private constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static final getActivityHeader(Landroid/content/Context;Lcom/discord/models/domain/ModelPresence$Activity;)Ljava/lang/CharSequence;
2019-05-03 18:53:54 +00:00
.locals 5
2019-02-04 20:08:30 +00:00
const-string v0, "context"
invoke-static {p0, v0}, Lkotlin/jvm/internal/j;->h(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "activity"
invoke-static {p1, v0}, Lkotlin/jvm/internal/j;->h(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence$Activity;->getType()I
move-result v0
2019-05-10 23:01:33 +00:00
const v1, 0x7f121095
2019-05-03 18:53:54 +00:00
if-eqz v0, :cond_3
2019-02-04 20:08:30 +00:00
const/4 v2, 0x0
const/4 v3, 0x1
2019-05-03 18:53:54 +00:00
if-eq v0, v3, :cond_2
const/4 v4, 0x2
if-eq v0, v4, :cond_1
const/4 v4, 0x3
if-eq v0, v4, :cond_0
2019-02-04 20:08:30 +00:00
invoke-virtual {p0, v1}, Landroid/content/Context;->getString(I)Ljava/lang/String;
move-result-object p0
2019-02-04 20:29:01 +00:00
goto :goto_0
2019-02-04 20:08:30 +00:00
2019-05-03 18:53:54 +00:00
:cond_0
2019-05-10 23:01:33 +00:00
const v0, 0x7f121098
2019-02-04 20:08:30 +00:00
new-array v1, v3, [Ljava/lang/Object;
invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence$Activity;->getName()Ljava/lang/String;
move-result-object p1
aput-object p1, v1, v2
2019-02-04 20:29:01 +00:00
invoke-virtual {p0, v0, v1}, Landroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
2019-02-04 20:08:30 +00:00
goto :goto_0
2019-05-03 18:53:54 +00:00
:cond_1
2019-05-10 23:01:33 +00:00
const v0, 0x7f121093
2019-02-04 20:08:30 +00:00
new-array v1, v3, [Ljava/lang/Object;
invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence$Activity;->getName()Ljava/lang/String;
move-result-object p1
aput-object p1, v1, v2
2019-02-04 20:29:01 +00:00
invoke-virtual {p0, v0, v1}, Landroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
2019-02-04 20:08:30 +00:00
goto :goto_0
2019-05-03 18:53:54 +00:00
:cond_2
2019-05-10 23:01:33 +00:00
const v0, 0x7f121094
2019-02-04 20:08:30 +00:00
new-array v1, v3, [Ljava/lang/Object;
invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence$Activity;->getName()Ljava/lang/String;
move-result-object p1
aput-object p1, v1, v2
invoke-virtual {p0, v0, v1}, Landroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
2019-02-04 20:29:01 +00:00
goto :goto_0
2019-05-03 18:53:54 +00:00
:cond_3
2019-02-04 20:29:01 +00:00
invoke-virtual {p0, v1}, Landroid/content/Context;->getString(I)Ljava/lang/String;
move-result-object p0
:goto_0
2019-02-04 20:08:30 +00:00
const-string p1, "activityHeader"
invoke-static {p0, p1}, Lkotlin/jvm/internal/j;->g(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p0, Ljava/lang/CharSequence;
invoke-static {p0}, Lcom/discord/utilities/textprocessing/Parsers;->parseBoldMarkdown(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
move-result-object p0
return-object p0
.end method
2019-05-10 00:55:14 +00:00
.method private final getStatusIcon(Lcom/discord/models/domain/ModelPresence;)I
2019-05-10 23:01:33 +00:00
.locals 2
2019-05-10 00:55:14 +00:00
.annotation build Landroidx/annotation/DrawableRes;
.end annotation
if-eqz p1, :cond_0
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence;->getPrimaryActivity()Lcom/discord/models/domain/ModelPresence$Activity;
move-result-object v0
if-eqz v0, :cond_0
invoke-virtual {v0}, Lcom/discord/models/domain/ModelPresence$Activity;->isStreaming()Z
2019-05-10 00:55:14 +00:00
move-result v0
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
const/4 v1, 0x1
if-ne v0, v1, :cond_0
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
const p1, 0x7f0802f4
2019-05-10 00:55:14 +00:00
2019-05-10 23:01:33 +00:00
return p1
2019-02-04 20:08:30 +00:00
:cond_0
2019-05-10 23:01:33 +00:00
if-eqz p1, :cond_1
invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence;->getStatus()I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
goto :goto_0
:cond_1
const/4 p1, 0x0
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
:goto_0
2019-05-10 23:01:33 +00:00
if-nez p1, :cond_2
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
goto :goto_1
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
:cond_2
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
move-result v0
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
const/4 v1, 0x4
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
if-ne v0, v1, :cond_3
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
const p1, 0x7f0802f3
2019-02-04 20:08:30 +00:00
return p1
2019-05-10 23:01:33 +00:00
:cond_3
2019-05-10 00:55:14 +00:00
:goto_1
2019-05-10 23:01:33 +00:00
if-nez p1, :cond_4
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
goto :goto_2
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
:cond_4
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
move-result v0
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
const/4 v1, 0x3
2019-02-04 20:08:30 +00:00
2019-05-10 23:01:33 +00:00
if-ne v0, v1, :cond_5
2019-05-03 18:53:54 +00:00
2019-05-10 00:55:14 +00:00
const p1, 0x7f0802f1
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
return p1
2019-05-03 18:53:54 +00:00
2019-05-10 23:01:33 +00:00
:cond_5
2019-05-10 00:55:14 +00:00
:goto_2
2019-05-10 23:01:33 +00:00
if-nez p1, :cond_6
2019-05-03 18:53:54 +00:00
2019-05-10 00:55:14 +00:00
goto :goto_3
2019-05-10 23:01:33 +00:00
:cond_6
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
2019-05-10 00:55:14 +00:00
2019-05-10 23:01:33 +00:00
move-result v0
2019-05-10 00:55:14 +00:00
2019-05-10 23:01:33 +00:00
const/4 v1, 0x2
2019-05-10 00:55:14 +00:00
2019-05-10 23:01:33 +00:00
if-ne v0, v1, :cond_7
2019-05-10 00:55:14 +00:00
const p1, 0x7f0802f0
2019-02-04 20:08:30 +00:00
return p1
2019-05-10 23:01:33 +00:00
:cond_7
2019-05-10 00:55:14 +00:00
:goto_3
2019-05-10 23:01:33 +00:00
if-nez p1, :cond_8
2019-05-10 00:55:14 +00:00
goto :goto_4
2019-05-10 23:01:33 +00:00
:cond_8
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
2019-05-10 00:55:14 +00:00
:goto_4
const p1, 0x7f0802f2
2019-02-04 20:08:30 +00:00
2019-05-03 18:53:54 +00:00
return p1
2019-02-04 20:08:30 +00:00
.end method
.method private final getStatusText(Lcom/discord/models/domain/ModelPresence;)I
.locals 2
if-eqz p1, :cond_0
invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence;->getStatus()I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
if-nez p1, :cond_1
goto :goto_1
:cond_1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result v0
const/4 v1, 0x4
if-ne v0, v1, :cond_2
2019-05-10 23:01:33 +00:00
const p1, 0x7f120f36
2019-02-04 20:08:30 +00:00
return p1
:cond_2
:goto_1
if-nez p1, :cond_3
goto :goto_2
:cond_3
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result v0
const/4 v1, 0x3
if-ne v0, v1, :cond_4
2019-05-10 23:01:33 +00:00
const p1, 0x7f120f32
2019-02-04 20:08:30 +00:00
return p1
:cond_4
:goto_2
if-nez p1, :cond_5
goto :goto_3
:cond_5
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
const/4 v0, 0x2
if-ne p1, v0, :cond_6
2019-05-10 23:01:33 +00:00
const p1, 0x7f120f30
2019-02-04 20:08:30 +00:00
return p1
:cond_6
:goto_3
2019-05-10 23:01:33 +00:00
const p1, 0x7f120f35
2019-02-04 20:08:30 +00:00
return p1
.end method
.method private final setActivity(Lcom/discord/models/domain/ModelPresence;Landroid/widget/TextView;)V
.locals 3
2019-05-03 18:53:54 +00:00
if-eqz p2, :cond_0
2019-02-04 20:08:30 +00:00
sget-object v0, Lcom/discord/utilities/presence/PresenceUtils;->INSTANCE:Lcom/discord/utilities/presence/PresenceUtils;
invoke-virtual {p2}, Landroid/widget/TextView;->getContext()Landroid/content/Context;
move-result-object v1
const-string v2, "context"
invoke-static {v1, v2}, Lkotlin/jvm/internal/j;->g(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v0, v1, p1}, Lcom/discord/utilities/presence/PresenceUtils;->getActivity(Landroid/content/Context;Lcom/discord/models/domain/ModelPresence;)Ljava/lang/CharSequence;
move-result-object p1
if-eqz p1, :cond_0
2019-03-08 06:19:26 +00:00
invoke-static {p2, p1}, Lcom/discord/utilities/view/extensions/ViewExtensions;->setTextAndVisibilityBy(Landroid/widget/TextView;Ljava/lang/CharSequence;)V
2019-02-04 20:08:30 +00:00
:cond_0
return-void
.end method
.method public static final setPresence(Lcom/discord/models/domain/ModelPresence;Landroid/widget/ImageView;)V
.locals 2
const/4 v0, 0x0
const/4 v1, 0x4
invoke-static {p0, p1, v0, v1, v0}, Lcom/discord/utilities/presence/PresenceUtils;->setPresence$default(Lcom/discord/models/domain/ModelPresence;Landroid/widget/ImageView;Landroid/widget/TextView;ILjava/lang/Object;)V
return-void
.end method
.method public static final setPresence(Lcom/discord/models/domain/ModelPresence;Landroid/widget/ImageView;Landroid/widget/TextView;)V
2019-05-10 00:55:14 +00:00
.locals 4
2019-02-04 20:08:30 +00:00
const-string v0, "statusView"
invoke-static {p1, v0}, Lkotlin/jvm/internal/j;->h(Ljava/lang/Object;Ljava/lang/String;)V
2019-05-10 00:55:14 +00:00
const/4 v0, 0x0
2019-02-04 20:08:30 +00:00
if-eqz p0, :cond_0
2019-02-04 20:29:01 +00:00
invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getActivities()Ljava/util/List;
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
move-result-object v1
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
if-eqz v1, :cond_0
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
check-cast v1, Ljava/util/Collection;
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
invoke-interface {v1}, Ljava/util/Collection;->isEmpty()Z
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
move-result v1
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
const/4 v2, 0x1
2019-02-04 20:29:01 +00:00
2019-05-10 00:55:14 +00:00
xor-int/2addr v1, v2
2019-02-04 20:29:01 +00:00
2019-05-10 00:55:14 +00:00
if-ne v1, v2, :cond_0
2019-02-04 20:29:01 +00:00
2019-05-10 00:55:14 +00:00
move-object v1, v0
2019-02-04 20:29:01 +00:00
goto :goto_0
:cond_0
2019-05-10 00:55:14 +00:00
move-object v1, p2
2019-02-04 20:08:30 +00:00
2019-02-04 20:29:01 +00:00
:goto_0
2019-05-10 00:55:14 +00:00
sget-object v2, Lcom/discord/utilities/presence/PresenceUtils;->INSTANCE:Lcom/discord/utilities/presence/PresenceUtils;
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
invoke-direct {v2, p0}, Lcom/discord/utilities/presence/PresenceUtils;->getStatusIcon(Lcom/discord/models/domain/ModelPresence;)I
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
move-result v2
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
const/4 v3, 0x4
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
invoke-static {p1, v2, v0, v3, v0}, Lcom/discord/utilities/images/MGImages;->setImage$default(Landroid/widget/ImageView;ILcom/discord/utilities/images/MGImages$ChangeDetector;ILjava/lang/Object;)V
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
if-eqz v1, :cond_1
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
sget-object p1, Lcom/discord/utilities/presence/PresenceUtils;->INSTANCE:Lcom/discord/utilities/presence/PresenceUtils;
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
invoke-direct {p1, p0}, Lcom/discord/utilities/presence/PresenceUtils;->getStatusText(Lcom/discord/models/domain/ModelPresence;)I
2019-02-04 20:08:30 +00:00
move-result p1
2019-05-10 00:55:14 +00:00
invoke-virtual {v1, p1}, Landroid/widget/TextView;->setText(I)V
2019-02-04 20:08:30 +00:00
:cond_1
2019-05-10 00:55:14 +00:00
sget-object p1, Lcom/discord/utilities/presence/PresenceUtils;->INSTANCE:Lcom/discord/utilities/presence/PresenceUtils;
invoke-direct {p1, p0, p2}, Lcom/discord/utilities/presence/PresenceUtils;->setActivity(Lcom/discord/models/domain/ModelPresence;Landroid/widget/TextView;)V
2019-02-04 20:08:30 +00:00
return-void
.end method
2019-05-10 00:55:14 +00:00
.method public static synthetic setPresence$default(Lcom/discord/models/domain/ModelPresence;Landroid/widget/ImageView;Landroid/widget/TextView;ILjava/lang/Object;)V
2019-02-04 20:08:30 +00:00
.locals 0
2019-05-10 00:55:14 +00:00
and-int/lit8 p3, p3, 0x4
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
if-eqz p3, :cond_0
2019-02-04 20:08:30 +00:00
2019-05-10 00:55:14 +00:00
const/4 p2, 0x0
2019-02-04 20:08:30 +00:00
:cond_0
2019-05-10 00:55:14 +00:00
invoke-static {p0, p1, p2}, Lcom/discord/utilities/presence/PresenceUtils;->setPresence(Lcom/discord/models/domain/ModelPresence;Landroid/widget/ImageView;Landroid/widget/TextView;)V
2019-02-04 20:08:30 +00:00
return-void
.end method
# virtual methods
.method public final getActivity(Landroid/content/Context;Lcom/discord/models/domain/ModelPresence;)Ljava/lang/CharSequence;
.locals 3
const-string v0, "context"
invoke-static {p1, v0}, Lkotlin/jvm/internal/j;->h(Ljava/lang/Object;Ljava/lang/String;)V
sget-object v0, Lcom/discord/utilities/presence/PresenceUtils$getActivity$1;->INSTANCE:Lcom/discord/utilities/presence/PresenceUtils$getActivity$1;
const/4 v1, 0x0
if-eqz p2, :cond_2
2019-02-04 20:29:01 +00:00
invoke-virtual {p2}, Lcom/discord/models/domain/ModelPresence;->getPrimaryActivity()Lcom/discord/models/domain/ModelPresence$Activity;
2019-02-04 20:08:30 +00:00
move-result-object p2
if-nez p2, :cond_0
goto :goto_0
:cond_0
2019-02-04 20:29:01 +00:00
const-string v2, "presence?.primaryActivity ?: return null"
2019-02-04 20:08:30 +00:00
invoke-static {p2, v2}, Lkotlin/jvm/internal/j;->g(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {p2}, Lcom/discord/models/domain/ModelPresence$Activity;->getType()I
move-result v2
invoke-virtual {v0, p1, v2}, Lcom/discord/utilities/presence/PresenceUtils$getActivity$1;->invoke(Landroid/content/Context;I)Ljava/lang/String;
move-result-object p1
if-nez p1, :cond_1
return-object v1
:cond_1
2019-05-08 22:54:48 +00:00
sget-object v0, Lkotlin/jvm/internal/y;->bfH:Lkotlin/jvm/internal/y;
2019-02-04 20:08:30 +00:00
const/4 v0, 0x1
new-array v1, v0, [Ljava/lang/Object;
const/4 v2, 0x0
invoke-virtual {p2}, Lcom/discord/models/domain/ModelPresence$Activity;->getName()Ljava/lang/String;
move-result-object p2
aput-object p2, v1, v2
invoke-static {v1, v0}, Ljava/util/Arrays;->copyOf([Ljava/lang/Object;I)[Ljava/lang/Object;
move-result-object p2
invoke-static {p1, p2}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
const-string p2, "java.lang.String.format(format, *args)"
invoke-static {p1, p2}, Lkotlin/jvm/internal/j;->g(Ljava/lang/Object;Ljava/lang/String;)V
check-cast p1, Ljava/lang/CharSequence;
invoke-static {p1}, Lcom/discord/utilities/textprocessing/Parsers;->parseBoldMarkdown(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
move-result-object p1
return-object p1
:cond_2
:goto_0
return-object v1
.end method