diff --git a/com.discord/apktool.yml b/com.discord/apktool.yml index 66f47f8070..5ea3874035 100644 --- a/com.discord/apktool.yml +++ b/com.discord/apktool.yml @@ -1,5 +1,5 @@ !!brut.androlib.meta.MetaInfo -apkFileName: com.discord-1237.apk +apkFileName: com.discord-1238.apk compressionType: false doNotCompress: - resources.arsc @@ -3106,5 +3106,5 @@ usesFramework: tag: null version: 2.4.2-83a459-SNAPSHOT versionInfo: - versionCode: '1237' - versionName: '35.2' + versionCode: '1238' + versionName: '35.3' diff --git a/com.discord/original/AndroidManifest.xml b/com.discord/original/AndroidManifest.xml index 3708aaa6df..4d8924b1d3 100644 Binary files a/com.discord/original/AndroidManifest.xml and b/com.discord/original/AndroidManifest.xml differ diff --git a/com.discord/res/values/strings.xml b/com.discord/res/values/strings.xml index 7f5e90cba9..d4d23e55b3 100644 --- a/com.discord/res/values/strings.xml +++ b/com.discord/res/values/strings.xml @@ -1128,7 +1128,7 @@ We’re here to make a good impression." Presets Select a color Transparency - 39f971ab9df7474686eca4aea0314231 + 76197705ee174b28a141335197160bfd Coming Soon Search Animated GIFs on the Web Displays text with emphasis. diff --git a/com.discord/res/xml/file_paths.xml b/com.discord/res/xml/file_paths.xml index ac401b4570..37ecaa9462 100644 --- a/com.discord/res/xml/file_paths.xml +++ b/com.discord/res/xml/file_paths.xml @@ -2,4 +2,5 @@ + \ No newline at end of file diff --git a/com.discord/smali/com/discord/BuildConfig.smali b/com.discord/smali/com/discord/BuildConfig.smali index 369cdb750d..f10e8b633c 100644 --- a/com.discord/smali/com/discord/BuildConfig.smali +++ b/com.discord/smali/com/discord/BuildConfig.smali @@ -42,11 +42,11 @@ .field public static final SAMSUNGxDISCORD_CLIENT_ID:Ljava/lang/String; = "97t47j218f" -.field public static final USER_AGENT:Ljava/lang/String; = "Discord-Android/1237" +.field public static final USER_AGENT:Ljava/lang/String; = "Discord-Android/1238" -.field public static final VERSION_CODE:I = 0x4d5 +.field public static final VERSION_CODE:I = 0x4d6 -.field public static final VERSION_NAME:Ljava/lang/String; = "35.2" +.field public static final VERSION_NAME:Ljava/lang/String; = "35.3" # direct methods diff --git a/com.discord/smali/com/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1.smali b/com.discord/smali/com/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1.smali new file mode 100644 index 0000000000..95c4efd0a0 --- /dev/null +++ b/com.discord/smali/com/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1.smali @@ -0,0 +1,136 @@ +.class public final Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1; +.super Lj0/n/c/i; +.source "StoreAnalytics.kt" + +# interfaces +.implements Lkotlin/jvm/functions/Function0; + + +# annotations +.annotation system Ldalvik/annotation/EnclosingMethod; + value = Lcom/discord/stores/StoreAnalytics;->trackFileUploadAlertViewed(Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZ)V +.end annotation + +.annotation system Ldalvik/annotation/InnerClass; + accessFlags = 0x19 + name = null +.end annotation + +.annotation system Ldalvik/annotation/Signature; + value = { + "Lj0/n/c/i;", + "Lkotlin/jvm/functions/Function0<", + "Lkotlin/Unit;", + ">;" + } +.end annotation + + +# instance fields +.field public final synthetic $alertType:Lcom/discord/utilities/rest/FileUploadAlertType; + +.field public final synthetic $hasImage:Z + +.field public final synthetic $hasVideo:Z + +.field public final synthetic $isPremium:Z + +.field public final synthetic $maxAttachmentSize:I + +.field public final synthetic $numAttachments:I + +.field public final synthetic $totalAttachmentSize:I + +.field public final synthetic this$0:Lcom/discord/stores/StoreAnalytics; + + +# direct methods +.method public constructor (Lcom/discord/stores/StoreAnalytics;Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZ)V + .locals 0 + + iput-object p1, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->this$0:Lcom/discord/stores/StoreAnalytics; + + iput-object p2, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$alertType:Lcom/discord/utilities/rest/FileUploadAlertType; + + iput p3, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$numAttachments:I + + iput p4, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$maxAttachmentSize:I + + iput p5, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$totalAttachmentSize:I + + iput-boolean p6, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$hasImage:Z + + iput-boolean p7, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$hasVideo:Z + + iput-boolean p8, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$isPremium:Z + + const/4 p1, 0x0 + + invoke-direct {p0, p1}, Lj0/n/c/i;->(I)V + + return-void +.end method + + +# virtual methods +.method public bridge synthetic invoke()Ljava/lang/Object; + .locals 1 + + invoke-virtual {p0}, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->invoke()V + + sget-object v0, Lkotlin/Unit;->a:Lkotlin/Unit; + + return-object v0 +.end method + +.method public final invoke()V + .locals 10 + + iget-object v0, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->this$0:Lcom/discord/stores/StoreAnalytics; + + invoke-static {v0}, Lcom/discord/stores/StoreAnalytics;->access$getStores$p(Lcom/discord/stores/StoreAnalytics;)Lcom/discord/stores/StoreStream; + + move-result-object v1 + + invoke-virtual {v1}, Lcom/discord/stores/StoreStream;->getChannelsSelected$app_productionDiscordExternalRelease()Lcom/discord/stores/StoreChannelsSelected; + + move-result-object v1 + + invoke-virtual {v1}, Lcom/discord/stores/StoreChannelsSelected;->getId()J + + move-result-wide v1 + + invoke-static {v0, v1, v2}, Lcom/discord/stores/StoreAnalytics;->access$getSnapshotProperties(Lcom/discord/stores/StoreAnalytics;J)Ljava/util/Map; + + move-result-object v0 + + sget-object v1, Lcom/discord/utilities/analytics/AnalyticsTracker;->INSTANCE:Lcom/discord/utilities/analytics/AnalyticsTracker; + + iget-object v2, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$alertType:Lcom/discord/utilities/rest/FileUploadAlertType; + + iget v3, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$numAttachments:I + + iget v4, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$maxAttachmentSize:I + + iget v5, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$totalAttachmentSize:I + + iget-boolean v6, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$hasImage:Z + + iget-boolean v7, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$hasVideo:Z + + iget-boolean v8, p0, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->$isPremium:Z + + if-eqz v0, :cond_0 + + goto :goto_0 + + :cond_0 + sget-object v0, Lj0/i/o;->d:Lj0/i/o; + + :goto_0 + move-object v9, v0 + + invoke-virtual/range {v1 .. v9}, Lcom/discord/utilities/analytics/AnalyticsTracker;->fileUploadAlertViewed(Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZLjava/util/Map;)V + + return-void +.end method diff --git a/com.discord/smali/com/discord/stores/StoreAnalytics.smali b/com.discord/smali/com/discord/stores/StoreAnalytics.smali index 34c7e8762b..3c677255ad 100644 --- a/com.discord/smali/com/discord/stores/StoreAnalytics.smali +++ b/com.discord/smali/com/discord/stores/StoreAnalytics.smali @@ -1880,6 +1880,53 @@ throw p1 .end method +.method public final trackFileUploadAlertViewed(Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZ)V + .locals 12 + + if-eqz p1, :cond_0 + + move-object v9, p0 + + iget-object v10, v9, Lcom/discord/stores/StoreAnalytics;->dispatcher:Lcom/discord/stores/Dispatcher; + + new-instance v11, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1; + + move-object v0, v11 + + move-object v1, p0 + + move-object v2, p1 + + move v3, p2 + + move v4, p3 + + move/from16 v5, p4 + + move/from16 v6, p5 + + move/from16 v7, p6 + + move/from16 v8, p7 + + invoke-direct/range {v0 .. v8}, Lcom/discord/stores/StoreAnalytics$trackFileUploadAlertViewed$1;->(Lcom/discord/stores/StoreAnalytics;Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZ)V + + invoke-virtual {v10, v11}, Lcom/discord/stores/Dispatcher;->schedule(Lkotlin/jvm/functions/Function0;)V + + return-void + + :cond_0 + move-object v9, p0 + + const-string v0, "alertType" + + invoke-static {v0}, Lj0/n/c/h;->c(Ljava/lang/String;)V + + const/4 v0, 0x0 + + throw v0 +.end method + .method public final trackGuildProfileOpened(J)V .locals 1 diff --git a/com.discord/smali/com/discord/stores/StoreClientVersion.smali b/com.discord/smali/com/discord/stores/StoreClientVersion.smali index 5fb58b52c2..08ee872f47 100644 --- a/com.discord/smali/com/discord/stores/StoreClientVersion.smali +++ b/com.discord/smali/com/discord/stores/StoreClientVersion.smali @@ -28,7 +28,7 @@ invoke-direct {p0}, Lcom/discord/stores/Store;->()V - const/16 v0, 0x4d5 + const/16 v0, 0x4d6 iput v0, p0, Lcom/discord/stores/StoreClientVersion;->clientVersion:I diff --git a/com.discord/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali b/com.discord/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali index 72b2ba5d9b..3d06088288 100644 --- a/com.discord/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali +++ b/com.discord/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali @@ -177,7 +177,7 @@ const-string v3, "browser_user_agent" - const-string v4, "Discord-Android/1237" + const-string v4, "Discord-Android/1238" invoke-direct {v2, v3, v4}, Lkotlin/Pair;->(Ljava/lang/Object;Ljava/lang/Object;)V @@ -185,7 +185,7 @@ const/4 v1, 0x2 - const/16 v2, 0x4d5 + const/16 v2, 0x4d6 invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; @@ -205,7 +205,7 @@ const-string v3, "client_version" - const-string v4, "35.2" + const-string v4, "35.3" invoke-direct {v2, v3, v4}, Lkotlin/Pair;->(Ljava/lang/Object;Ljava/lang/Object;)V diff --git a/com.discord/smali/com/discord/utilities/analytics/AnalyticsTracker.smali b/com.discord/smali/com/discord/utilities/analytics/AnalyticsTracker.smali index c7bfb780f6..4de0aeb03d 100644 --- a/com.discord/smali/com/discord/utilities/analytics/AnalyticsTracker.smali +++ b/com.discord/smali/com/discord/utilities/analytics/AnalyticsTracker.smali @@ -4775,10 +4775,26 @@ throw v0 .end method -.method public final fileUploadAlertViewed(Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZ)V +.method public final fileUploadAlertViewed(Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZLjava/util/Map;)V .locals 2 + .annotation system Ldalvik/annotation/Signature; + value = { + "(", + "Lcom/discord/utilities/rest/FileUploadAlertType;", + "IIIZZZ", + "Ljava/util/Map<", + "Ljava/lang/String;", + "+", + "Ljava/lang/Object;", + ">;)V" + } + .end annotation - if-eqz p1, :cond_0 + const/4 v0, 0x0 + + if-eqz p1, :cond_1 + + if-eqz p8, :cond_0 new-instance v0, Ljava/util/LinkedHashMap; @@ -4842,20 +4858,33 @@ sget-object p1, Lcom/discord/utilities/analytics/AnalyticsTracker;->tracker:Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker; - const-string p2, "file_upload_upsell_viewed" + invoke-direct {p0, p8}, Lcom/discord/utilities/analytics/AnalyticsTracker;->filterNonNullValues(Ljava/util/Map;)Ljava/util/Map; - invoke-virtual {p1, p2, v0}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->track(Ljava/lang/String;Ljava/util/Map;)V + move-result-object p2 + + invoke-static {v0, p2}, Lf/n/a/k/a;->plus(Ljava/util/Map;Ljava/util/Map;)Ljava/util/Map; + + move-result-object p2 + + const-string p3, "file_upload_alert_viewed" + + invoke-virtual {p1, p3, p2}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->track(Ljava/lang/String;Ljava/util/Map;)V return-void :cond_0 + const-string p1, "snapshotProperties" + + invoke-static {p1}, Lj0/n/c/h;->c(Ljava/lang/String;)V + + throw v0 + + :cond_1 const-string p1, "alertType" invoke-static {p1}, Lj0/n/c/h;->c(Ljava/lang/String;)V - const/4 p1, 0x0 - - throw p1 + throw v0 .end method .method public final friendAddViewed(Ljava/lang/String;)V diff --git a/com.discord/smali/com/discord/utilities/fcm/NotificationData.smali b/com.discord/smali/com/discord/utilities/fcm/NotificationData.smali index f09c5e1b69..96ac9a7acc 100644 --- a/com.discord/smali/com/discord/utilities/fcm/NotificationData.smali +++ b/com.discord/smali/com/discord/utilities/fcm/NotificationData.smali @@ -1108,6 +1108,10 @@ if-eq v3, v0, :cond_1 + const/16 v0, 0x9 + + if-eq v3, v0, :cond_1 + iget-wide v0, p0, Lcom/discord/utilities/fcm/NotificationData;->channelId:J iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationData;->channelIcon:Ljava/lang/String; diff --git a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$4.smali b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$4.smali new file mode 100644 index 0000000000..ec8fb7082f --- /dev/null +++ b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$4.smali @@ -0,0 +1,93 @@ +.class public final synthetic Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$4; +.super Lj0/n/c/g; +.source "NotificationRenderer.kt" + +# interfaces +.implements Lkotlin/jvm/functions/Function1; + + +# annotations +.annotation system Ldalvik/annotation/EnclosingMethod; + value = Lcom/discord/utilities/fcm/NotificationRenderer;->displayAndUpdateCache(Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData;Lcom/discord/utilities/fcm/NotificationClient$SettingsV2;)V +.end annotation + +.annotation system Ldalvik/annotation/InnerClass; + accessFlags = 0x1019 + name = null +.end annotation + +.annotation system Ldalvik/annotation/Signature; + value = { + "Lj0/n/c/g;", + "Lkotlin/jvm/functions/Function1<", + "Lrx/Subscription;", + "Lkotlin/Unit;", + ">;" + } +.end annotation + + +# direct methods +.method public constructor (Lrx/subscriptions/CompositeSubscription;)V + .locals 1 + + const/4 v0, 0x1 + + invoke-direct {p0, v0, p1}, Lj0/n/c/g;->(ILjava/lang/Object;)V + + return-void +.end method + + +# virtual methods +.method public final getName()Ljava/lang/String; + .locals 1 + + const-string v0, "add" + + return-object v0 +.end method + +.method public final getOwner()Lkotlin/reflect/KDeclarationContainer; + .locals 1 + + const-class v0, Lrx/subscriptions/CompositeSubscription; + + invoke-static {v0}, Lj0/n/c/s;->getOrCreateKotlinClass(Ljava/lang/Class;)Lj0/r/b; + + move-result-object v0 + + return-object v0 +.end method + +.method public final getSignature()Ljava/lang/String; + .locals 1 + + const-string v0, "add(Lrx/Subscription;)V" + + return-object v0 +.end method + +.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object; + .locals 0 + + check-cast p1, Lrx/Subscription; + + invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$4;->invoke(Lrx/Subscription;)V + + sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit; + + return-object p1 +.end method + +.method public final invoke(Lrx/Subscription;)V + .locals 1 + + iget-object v0, p0, Lj0/n/c/b;->receiver:Ljava/lang/Object; + + check-cast v0, Lrx/subscriptions/CompositeSubscription; + + invoke-virtual {v0, p1}, Lrx/subscriptions/CompositeSubscription;->a(Lrx/Subscription;)V + + return-void +.end method diff --git a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5.smali b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5.smali index b2cb6ede21..4b46fc187c 100644 --- a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5.smali +++ b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5.smali @@ -1,5 +1,5 @@ -.class public final synthetic Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5; -.super Lj0/n/c/g; +.class public final Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5; +.super Lj0/n/c/i; .source "NotificationRenderer.kt" # interfaces @@ -12,82 +12,80 @@ .end annotation .annotation system Ldalvik/annotation/InnerClass; - accessFlags = 0x1019 + accessFlags = 0x19 name = null .end annotation .annotation system Ldalvik/annotation/Signature; value = { - "Lj0/n/c/g;", + "Lj0/n/c/i;", "Lkotlin/jvm/functions/Function1<", - "Lrx/Subscription;", + "Ljava/lang/Long;", "Lkotlin/Unit;", ">;" } .end annotation +# instance fields +.field public final synthetic $context:Landroid/content/Context; + +.field public final synthetic $displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; + +.field public final synthetic $notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + # direct methods -.method public constructor (Lrx/subscriptions/CompositeSubscription;)V - .locals 1 +.method public constructor (Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;Landroidx/core/app/NotificationCompat$Builder;)V + .locals 0 - const/4 v0, 0x1 + iput-object p1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->$context:Landroid/content/Context; - invoke-direct {p0, v0, p1}, Lj0/n/c/g;->(ILjava/lang/Object;)V + iput-object p2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; + + iput-object p3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + const/4 p1, 0x1 + + invoke-direct {p0, p1}, Lj0/n/c/i;->(I)V return-void .end method # virtual methods -.method public final getName()Ljava/lang/String; - .locals 1 - - const-string v0, "add" - - return-object v0 -.end method - -.method public final getOwner()Lkotlin/reflect/KDeclarationContainer; - .locals 1 - - const-class v0, Lrx/subscriptions/CompositeSubscription; - - invoke-static {v0}, Lj0/n/c/s;->getOrCreateKotlinClass(Ljava/lang/Class;)Lj0/r/b; - - move-result-object v0 - - return-object v0 -.end method - -.method public final getSignature()Ljava/lang/String; - .locals 1 - - const-string v0, "add(Lrx/Subscription;)V" - - return-object v0 -.end method - .method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object; .locals 0 - check-cast p1, Lrx/Subscription; + check-cast p1, Ljava/lang/Long; - invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->invoke(Lrx/Subscription;)V + invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->invoke(Ljava/lang/Long;)V sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit; return-object p1 .end method -.method public final invoke(Lrx/Subscription;)V - .locals 1 +.method public final invoke(Ljava/lang/Long;)V + .locals 4 - iget-object v0, p0, Lj0/n/c/b;->receiver:Ljava/lang/Object; + sget-object p1, Lcom/discord/utilities/fcm/NotificationRenderer;->INSTANCE:Lcom/discord/utilities/fcm/NotificationRenderer; - check-cast v0, Lrx/subscriptions/CompositeSubscription; + iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->$context:Landroid/content/Context; - invoke-virtual {v0, p1}, Lrx/subscriptions/CompositeSubscription;->a(Lrx/Subscription;)V + iget-object v1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; + + invoke-virtual {v1}, Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;->getId()I + + move-result v1 + + iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + const-string v3, "notificationBuilder" + + invoke-static {v2, v3}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-static {p1, v0, v1, v2}, Lcom/discord/utilities/fcm/NotificationRenderer;->access$displayNotification(Lcom/discord/utilities/fcm/NotificationRenderer;Landroid/content/Context;ILandroidx/core/app/NotificationCompat$Builder;)V return-void .end method diff --git a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6.smali b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6.smali index e308d6f642..fcb833f859 100644 --- a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6.smali +++ b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6.smali @@ -1,5 +1,5 @@ -.class public final Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6; -.super Lj0/n/c/i; +.class public final synthetic Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6; +.super Lj0/n/c/g; .source "NotificationRenderer.kt" # interfaces @@ -12,80 +12,82 @@ .end annotation .annotation system Ldalvik/annotation/InnerClass; - accessFlags = 0x19 + accessFlags = 0x1019 name = null .end annotation .annotation system Ldalvik/annotation/Signature; value = { - "Lj0/n/c/i;", + "Lj0/n/c/g;", "Lkotlin/jvm/functions/Function1<", - "Ljava/lang/Long;", + "Lrx/Subscription;", "Lkotlin/Unit;", ">;" } .end annotation -# instance fields -.field public final synthetic $context:Landroid/content/Context; - -.field public final synthetic $displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; - -.field public final synthetic $notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - # direct methods -.method public constructor (Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;Landroidx/core/app/NotificationCompat$Builder;)V - .locals 0 +.method public constructor (Lrx/subscriptions/CompositeSubscription;)V + .locals 1 - iput-object p1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->$context:Landroid/content/Context; + const/4 v0, 0x1 - iput-object p2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; - - iput-object p3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - const/4 p1, 0x1 - - invoke-direct {p0, p1}, Lj0/n/c/i;->(I)V + invoke-direct {p0, v0, p1}, Lj0/n/c/g;->(ILjava/lang/Object;)V return-void .end method # virtual methods +.method public final getName()Ljava/lang/String; + .locals 1 + + const-string v0, "add" + + return-object v0 +.end method + +.method public final getOwner()Lkotlin/reflect/KDeclarationContainer; + .locals 1 + + const-class v0, Lrx/subscriptions/CompositeSubscription; + + invoke-static {v0}, Lj0/n/c/s;->getOrCreateKotlinClass(Ljava/lang/Class;)Lj0/r/b; + + move-result-object v0 + + return-object v0 +.end method + +.method public final getSignature()Ljava/lang/String; + .locals 1 + + const-string v0, "add(Lrx/Subscription;)V" + + return-object v0 +.end method + .method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object; .locals 0 - check-cast p1, Ljava/lang/Long; + check-cast p1, Lrx/Subscription; - invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->invoke(Ljava/lang/Long;)V + invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->invoke(Lrx/Subscription;)V sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit; return-object p1 .end method -.method public final invoke(Ljava/lang/Long;)V - .locals 4 +.method public final invoke(Lrx/Subscription;)V + .locals 1 - sget-object p1, Lcom/discord/utilities/fcm/NotificationRenderer;->INSTANCE:Lcom/discord/utilities/fcm/NotificationRenderer; + iget-object v0, p0, Lj0/n/c/b;->receiver:Ljava/lang/Object; - iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->$context:Landroid/content/Context; + check-cast v0, Lrx/subscriptions/CompositeSubscription; - iget-object v1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; - - invoke-virtual {v1}, Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;->getId()I - - move-result v1 - - iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - const-string v3, "notificationBuilder" - - invoke-static {v2, v3}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-static {p1, v0, v1, v2}, Lcom/discord/utilities/fcm/NotificationRenderer;->access$displayNotification(Lcom/discord/utilities/fcm/NotificationRenderer;Landroid/content/Context;ILandroidx/core/app/NotificationCompat$Builder;)V + invoke-virtual {v0, p1}, Lrx/subscriptions/CompositeSubscription;->a(Lrx/Subscription;)V return-void .end method diff --git a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7.smali b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7.smali index 5072c5c06c..6236bb154b 100644 --- a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7.smali +++ b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7.smali @@ -1,5 +1,5 @@ -.class public final synthetic Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7; -.super Lj0/n/c/g; +.class public final Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7; +.super Lj0/n/c/i; .source "NotificationRenderer.kt" # interfaces @@ -12,82 +12,220 @@ .end annotation .annotation system Ldalvik/annotation/InnerClass; - accessFlags = 0x1019 + accessFlags = 0x19 name = null .end annotation .annotation system Ldalvik/annotation/Signature; value = { - "Lj0/n/c/g;", + "Lj0/n/c/i;", "Lkotlin/jvm/functions/Function1<", - "Lrx/Subscription;", + "Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;", "Lkotlin/Unit;", ">;" } .end annotation +# instance fields +.field public final synthetic $context:Landroid/content/Context; + +.field public final synthetic $displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; + +.field public final synthetic $displayPayloadExtras:Ljava/util/List; + +.field public final synthetic $notification:Lcom/discord/utilities/fcm/NotificationData; + +.field public final synthetic $notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + # direct methods -.method public constructor (Lrx/subscriptions/CompositeSubscription;)V - .locals 1 +.method public constructor (Lcom/discord/utilities/fcm/NotificationData;Landroidx/core/app/NotificationCompat$Builder;Ljava/util/List;Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;)V + .locals 0 - const/4 v0, 0x1 + iput-object p1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notification:Lcom/discord/utilities/fcm/NotificationData; - invoke-direct {p0, v0, p1}, Lj0/n/c/g;->(ILjava/lang/Object;)V + iput-object p2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + iput-object p3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$displayPayloadExtras:Ljava/util/List; + + iput-object p4, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$context:Landroid/content/Context; + + iput-object p5, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; + + const/4 p1, 0x1 + + invoke-direct {p0, p1}, Lj0/n/c/i;->(I)V return-void .end method # virtual methods -.method public final getName()Ljava/lang/String; - .locals 1 - - const-string v0, "add" - - return-object v0 -.end method - -.method public final getOwner()Lkotlin/reflect/KDeclarationContainer; - .locals 1 - - const-class v0, Lrx/subscriptions/CompositeSubscription; - - invoke-static {v0}, Lj0/n/c/s;->getOrCreateKotlinClass(Ljava/lang/Class;)Lj0/r/b; - - move-result-object v0 - - return-object v0 -.end method - -.method public final getSignature()Ljava/lang/String; - .locals 1 - - const-string v0, "add(Lrx/Subscription;)V" - - return-object v0 -.end method - .method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object; .locals 0 - check-cast p1, Lrx/Subscription; + check-cast p1, Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps; - invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->invoke(Lrx/Subscription;)V + invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->invoke(Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;)V sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit; return-object p1 .end method -.method public final invoke(Lrx/Subscription;)V - .locals 1 +.method public final invoke(Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;)V + .locals 7 - iget-object v0, p0, Lj0/n/c/b;->receiver:Ljava/lang/Object; + :try_start_0 + iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notification:Lcom/discord/utilities/fcm/NotificationData; - check-cast v0, Lrx/subscriptions/CompositeSubscription; + invoke-virtual {v0}, Lcom/discord/utilities/fcm/NotificationData;->getIconUrl()Ljava/lang/String; - invoke-virtual {v0, p1}, Lrx/subscriptions/CompositeSubscription;->a(Lrx/Subscription;)V + move-result-object v0 + + invoke-virtual {p1, v0}, Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;->get(Ljava/lang/Object;)Ljava/lang/Object; + + move-result-object v0 + + check-cast v0, Landroid/graphics/Bitmap; + + if-eqz v0, :cond_0 + + iget-object v1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + invoke-virtual {v1, v0}, Landroidx/core/app/NotificationCompat$Builder;->setLargeIcon(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$Builder; + + :cond_0 + iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notification:Lcom/discord/utilities/fcm/NotificationData; + + invoke-virtual {v0}, Lcom/discord/utilities/fcm/NotificationData;->getSticker()Lcom/discord/models/dsti/dto/ModelDsti; + + move-result-object v0 + + const/4 v1, 0x0 + + if-eqz v0, :cond_1 + + sget-object v0, Lcom/discord/utilities/dsti/DstiUtils;->INSTANCE:Lcom/discord/utilities/dsti/DstiUtils; + + iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notification:Lcom/discord/utilities/fcm/NotificationData; + + invoke-virtual {v2}, Lcom/discord/utilities/fcm/NotificationData;->getSticker()Lcom/discord/models/dsti/dto/ModelDsti; + + move-result-object v2 + + invoke-virtual {v0, v2}, Lcom/discord/utilities/dsti/DstiUtils;->getCDNPreviewAssetUrl(Lcom/discord/models/dsti/dto/ModelDsti;)Ljava/lang/String; + + move-result-object v0 + + invoke-virtual {p1, v0}, Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;->get(Ljava/lang/Object;)Ljava/lang/Object; + + move-result-object v0 + + check-cast v0, Landroid/graphics/Bitmap; + + iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + invoke-virtual {v2, v0}, Landroidx/core/app/NotificationCompat$Builder;->setLargeIcon(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$Builder; + + iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + new-instance v3, Landroidx/core/app/NotificationCompat$BigPictureStyle; + + invoke-direct {v3}, Landroidx/core/app/NotificationCompat$BigPictureStyle;->()V + + invoke-virtual {v3, v0}, Landroidx/core/app/NotificationCompat$BigPictureStyle;->bigPicture(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$BigPictureStyle; + + move-result-object v0 + + invoke-virtual {v0, v1}, Landroidx/core/app/NotificationCompat$BigPictureStyle;->bigLargeIcon(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$BigPictureStyle; + + move-result-object v0 + + invoke-virtual {v2, v0}, Landroidx/core/app/NotificationCompat$Builder;->setStyle(Landroidx/core/app/NotificationCompat$Style;)Landroidx/core/app/NotificationCompat$Builder; + + goto :goto_0 + + :cond_1 + iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$displayPayloadExtras:Ljava/util/List; + + invoke-interface {v0}, Ljava/util/Collection;->isEmpty()Z + + move-result v0 + + xor-int/lit8 v0, v0, 0x1 + + if-eqz v0, :cond_2 + + iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$displayPayloadExtras:Ljava/util/List; + + invoke-interface {v2}, Ljava/util/List;->size()I + + move-result v2 + + invoke-virtual {v0, v2}, Landroidx/core/app/NotificationCompat$Builder;->setNumber(I)Landroidx/core/app/NotificationCompat$Builder; + + iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + sget-object v2, Lcom/discord/utilities/fcm/NotificationRenderer;->INSTANCE:Lcom/discord/utilities/fcm/NotificationRenderer; + + iget-object v3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$context:Landroid/content/Context; + + iget-object v4, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notification:Lcom/discord/utilities/fcm/NotificationData; + + iget-object v5, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$displayPayloadExtras:Ljava/util/List; + + const-string v6, "bitmapsForIconUris" + + invoke-static {p1, v6}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-static {v2, v3, v4, v5, p1}, Lcom/discord/utilities/fcm/NotificationRenderer;->access$getMessageStyle(Lcom/discord/utilities/fcm/NotificationRenderer;Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData;Ljava/util/List;Ljava/util/Map;)Landroidx/core/app/NotificationCompat$MessagingStyle; + + move-result-object v2 + + invoke-virtual {v0, v2}, Landroidx/core/app/NotificationCompat$Builder;->setStyle(Landroidx/core/app/NotificationCompat$Style;)Landroidx/core/app/NotificationCompat$Builder; + + :cond_2 + :goto_0 + sget-object v0, Lcom/discord/utilities/fcm/NotificationRenderer;->INSTANCE:Lcom/discord/utilities/fcm/NotificationRenderer; + + iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$context:Landroid/content/Context; + + iget-object v3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; + + invoke-virtual {v3}, Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;->getId()I + + move-result v3 + + iget-object v4, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; + + const-string v5, "notificationBuilder" + + invoke-static {v4, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-static {v0, v2, v3, v4}, Lcom/discord/utilities/fcm/NotificationRenderer;->access$displayNotification(Lcom/discord/utilities/fcm/NotificationRenderer;Landroid/content/Context;ILandroidx/core/app/NotificationCompat$Builder;)V + :try_end_0 + .catchall {:try_start_0 .. :try_end_0} :catchall_0 + + invoke-static {p1, v1}, Lf/n/a/k/a;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V return-void + + :catchall_0 + move-exception v0 + + :try_start_1 + throw v0 + :try_end_1 + .catchall {:try_start_1 .. :try_end_1} :catchall_1 + + :catchall_1 + move-exception v1 + + invoke-static {p1, v0}, Lf/n/a/k/a;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V + + throw v1 .end method diff --git a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8.smali b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8.smali deleted file mode 100644 index 1c55ddbaff..0000000000 --- a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8.smali +++ /dev/null @@ -1,231 +0,0 @@ -.class public final Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8; -.super Lj0/n/c/i; -.source "NotificationRenderer.kt" - -# interfaces -.implements Lkotlin/jvm/functions/Function1; - - -# annotations -.annotation system Ldalvik/annotation/EnclosingMethod; - value = Lcom/discord/utilities/fcm/NotificationRenderer;->displayAndUpdateCache(Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData;Lcom/discord/utilities/fcm/NotificationClient$SettingsV2;)V -.end annotation - -.annotation system Ldalvik/annotation/InnerClass; - accessFlags = 0x19 - name = null -.end annotation - -.annotation system Ldalvik/annotation/Signature; - value = { - "Lj0/n/c/i;", - "Lkotlin/jvm/functions/Function1<", - "Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;", - "Lkotlin/Unit;", - ">;" - } -.end annotation - - -# instance fields -.field public final synthetic $context:Landroid/content/Context; - -.field public final synthetic $displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; - -.field public final synthetic $displayPayloadExtras:Ljava/util/List; - -.field public final synthetic $notification:Lcom/discord/utilities/fcm/NotificationData; - -.field public final synthetic $notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - -# direct methods -.method public constructor (Lcom/discord/utilities/fcm/NotificationData;Landroidx/core/app/NotificationCompat$Builder;Ljava/util/List;Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;)V - .locals 0 - - iput-object p1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notification:Lcom/discord/utilities/fcm/NotificationData; - - iput-object p2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - iput-object p3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$displayPayloadExtras:Ljava/util/List; - - iput-object p4, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$context:Landroid/content/Context; - - iput-object p5, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; - - const/4 p1, 0x1 - - invoke-direct {p0, p1}, Lj0/n/c/i;->(I)V - - return-void -.end method - - -# virtual methods -.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object; - .locals 0 - - check-cast p1, Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps; - - invoke-virtual {p0, p1}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->invoke(Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;)V - - sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit; - - return-object p1 -.end method - -.method public final invoke(Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;)V - .locals 7 - - :try_start_0 - iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notification:Lcom/discord/utilities/fcm/NotificationData; - - invoke-virtual {v0}, Lcom/discord/utilities/fcm/NotificationData;->getIconUrl()Ljava/lang/String; - - move-result-object v0 - - invoke-virtual {p1, v0}, Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;->get(Ljava/lang/Object;)Ljava/lang/Object; - - move-result-object v0 - - check-cast v0, Landroid/graphics/Bitmap; - - if-eqz v0, :cond_0 - - iget-object v1, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - invoke-virtual {v1, v0}, Landroidx/core/app/NotificationCompat$Builder;->setLargeIcon(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$Builder; - - :cond_0 - iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notification:Lcom/discord/utilities/fcm/NotificationData; - - invoke-virtual {v0}, Lcom/discord/utilities/fcm/NotificationData;->getSticker()Lcom/discord/models/dsti/dto/ModelDsti; - - move-result-object v0 - - const/4 v1, 0x0 - - if-eqz v0, :cond_1 - - sget-object v0, Lcom/discord/utilities/dsti/DstiUtils;->INSTANCE:Lcom/discord/utilities/dsti/DstiUtils; - - iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notification:Lcom/discord/utilities/fcm/NotificationData; - - invoke-virtual {v2}, Lcom/discord/utilities/fcm/NotificationData;->getSticker()Lcom/discord/models/dsti/dto/ModelDsti; - - move-result-object v2 - - invoke-virtual {v0, v2}, Lcom/discord/utilities/dsti/DstiUtils;->getCDNPreviewAssetUrl(Lcom/discord/models/dsti/dto/ModelDsti;)Ljava/lang/String; - - move-result-object v0 - - invoke-virtual {p1, v0}, Lcom/discord/utilities/images/MGImagesBitmap$CloseableBitmaps;->get(Ljava/lang/Object;)Ljava/lang/Object; - - move-result-object v0 - - check-cast v0, Landroid/graphics/Bitmap; - - iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - invoke-virtual {v2, v0}, Landroidx/core/app/NotificationCompat$Builder;->setLargeIcon(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$Builder; - - iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - new-instance v3, Landroidx/core/app/NotificationCompat$BigPictureStyle; - - invoke-direct {v3}, Landroidx/core/app/NotificationCompat$BigPictureStyle;->()V - - invoke-virtual {v3, v0}, Landroidx/core/app/NotificationCompat$BigPictureStyle;->bigPicture(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$BigPictureStyle; - - move-result-object v0 - - invoke-virtual {v0, v1}, Landroidx/core/app/NotificationCompat$BigPictureStyle;->bigLargeIcon(Landroid/graphics/Bitmap;)Landroidx/core/app/NotificationCompat$BigPictureStyle; - - move-result-object v0 - - invoke-virtual {v2, v0}, Landroidx/core/app/NotificationCompat$Builder;->setStyle(Landroidx/core/app/NotificationCompat$Style;)Landroidx/core/app/NotificationCompat$Builder; - - goto :goto_0 - - :cond_1 - iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$displayPayloadExtras:Ljava/util/List; - - invoke-interface {v0}, Ljava/util/Collection;->isEmpty()Z - - move-result v0 - - xor-int/lit8 v0, v0, 0x1 - - if-eqz v0, :cond_2 - - iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$displayPayloadExtras:Ljava/util/List; - - invoke-interface {v2}, Ljava/util/List;->size()I - - move-result v2 - - invoke-virtual {v0, v2}, Landroidx/core/app/NotificationCompat$Builder;->setNumber(I)Landroidx/core/app/NotificationCompat$Builder; - - iget-object v0, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - sget-object v2, Lcom/discord/utilities/fcm/NotificationRenderer;->INSTANCE:Lcom/discord/utilities/fcm/NotificationRenderer; - - iget-object v3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$context:Landroid/content/Context; - - iget-object v4, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notification:Lcom/discord/utilities/fcm/NotificationData; - - iget-object v5, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$displayPayloadExtras:Ljava/util/List; - - const-string v6, "bitmapsForIconUris" - - invoke-static {p1, v6}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-static {v2, v3, v4, v5, p1}, Lcom/discord/utilities/fcm/NotificationRenderer;->access$getMessageStyle(Lcom/discord/utilities/fcm/NotificationRenderer;Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData;Ljava/util/List;Ljava/util/Map;)Landroidx/core/app/NotificationCompat$MessagingStyle; - - move-result-object v2 - - invoke-virtual {v0, v2}, Landroidx/core/app/NotificationCompat$Builder;->setStyle(Landroidx/core/app/NotificationCompat$Style;)Landroidx/core/app/NotificationCompat$Builder; - - :cond_2 - :goto_0 - sget-object v0, Lcom/discord/utilities/fcm/NotificationRenderer;->INSTANCE:Lcom/discord/utilities/fcm/NotificationRenderer; - - iget-object v2, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$context:Landroid/content/Context; - - iget-object v3, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$displayPayload:Lcom/discord/utilities/fcm/NotificationData$DisplayPayload; - - invoke-virtual {v3}, Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;->getId()I - - move-result v3 - - iget-object v4, p0, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->$notificationBuilder:Landroidx/core/app/NotificationCompat$Builder; - - const-string v5, "notificationBuilder" - - invoke-static {v4, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-static {v0, v2, v3, v4}, Lcom/discord/utilities/fcm/NotificationRenderer;->access$displayNotification(Lcom/discord/utilities/fcm/NotificationRenderer;Landroid/content/Context;ILandroidx/core/app/NotificationCompat$Builder;)V - :try_end_0 - .catchall {:try_start_0 .. :try_end_0} :catchall_0 - - invoke-static {p1, v1}, Lf/n/a/k/a;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V - - return-void - - :catchall_0 - move-exception v0 - - :try_start_1 - throw v0 - :try_end_1 - .catchall {:try_start_1 .. :try_end_1} :catchall_1 - - :catchall_1 - move-exception v1 - - invoke-static {p1, v0}, Lf/n/a/k/a;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V - - throw v1 -.end method diff --git a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer.smali b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer.smali index 0abccfd79c..5727bbc9a3 100644 --- a/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer.smali +++ b/com.discord/smali/com/discord/utilities/fcm/NotificationRenderer.smali @@ -511,59 +511,96 @@ invoke-virtual {v1, v9}, Lcom/discord/utilities/fcm/NotificationRenderer$NotificationDisplaySubscriptionManager;->cancel(I)V - new-instance v1, Ljava/util/LinkedHashSet; - - invoke-direct {v1}, Ljava/util/LinkedHashSet;->()V - invoke-virtual {v7}, Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;->getExtras()Ljava/util/List; - move-result-object v9 + move-result-object v1 - invoke-interface {v9}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; + new-instance v9, Ljava/util/ArrayList; - move-result-object v9 + invoke-direct {v9}, Ljava/util/ArrayList;->()V + invoke-interface {v1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; + + move-result-object v1 + + :cond_a :goto_3 - invoke-interface {v9}, Ljava/util/Iterator;->hasNext()Z + invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z move-result v10 - if-eqz v10, :cond_a + if-eqz v10, :cond_b - invoke-interface {v9}, Ljava/util/Iterator;->next()Ljava/lang/Object; + invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v10 check-cast v10, Lcom/discord/utilities/fcm/NotificationData; - new-instance v11, Lcom/discord/utilities/images/MGImagesBitmap$ImageRequest; - - invoke-virtual {v10}, Lcom/discord/utilities/fcm/NotificationData;->getIconUrl()Ljava/lang/String; + invoke-virtual {v10}, Lcom/discord/utilities/fcm/NotificationData;->getIconUrlForUser()Ljava/lang/String; move-result-object v10 - invoke-direct {v11, v10, v3}, Lcom/discord/utilities/images/MGImagesBitmap$ImageRequest;->(Ljava/lang/String;Z)V + if-eqz v10, :cond_a - invoke-interface {v1, v11}, Ljava/util/Set;->add(Ljava/lang/Object;)Z + invoke-interface {v9, v10}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z goto :goto_3 - :cond_a - new-instance v9, Lcom/discord/utilities/images/MGImagesBitmap$ImageRequest; - + :cond_b invoke-virtual/range {p2 .. p2}, Lcom/discord/utilities/fcm/NotificationData;->getIconUrl()Ljava/lang/String; + move-result-object v1 + + invoke-static {v9, v1}, Lj0/i/l;->plus(Ljava/util/Collection;Ljava/lang/Object;)Ljava/util/List; + + move-result-object v1 + + new-instance v9, Ljava/util/ArrayList; + + const/16 v10, 0xa + + invoke-static {v1, v10}, Lf/n/a/k/a;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I + + move-result v10 + + invoke-direct {v9, v10}, Ljava/util/ArrayList;->(I)V + + invoke-interface {v1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; + + move-result-object v1 + + :goto_4 + invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z + + move-result v10 + + if-eqz v10, :cond_c + + invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; + move-result-object v10 - invoke-direct {v9, v10, v3}, Lcom/discord/utilities/images/MGImagesBitmap$ImageRequest;->(Ljava/lang/String;Z)V + check-cast v10, Ljava/lang/String; - invoke-interface {v1, v9}, Ljava/util/Set;->add(Ljava/lang/Object;)Z + new-instance v11, Lcom/discord/utilities/images/MGImagesBitmap$ImageRequest; + + invoke-direct {v11, v10, v3}, Lcom/discord/utilities/images/MGImagesBitmap$ImageRequest;->(Ljava/lang/String;Z)V + + invoke-interface {v9, v11}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z + + goto :goto_4 + + :cond_c + invoke-static {v9}, Lj0/i/l;->toMutableSet(Ljava/lang/Iterable;)Ljava/util/Set; + + move-result-object v1 invoke-virtual/range {p2 .. p2}, Lcom/discord/utilities/fcm/NotificationData;->getSticker()Lcom/discord/models/dsti/dto/ModelDsti; move-result-object v3 - if-eqz v3, :cond_b + if-eqz v3, :cond_d new-instance v3, Lcom/discord/utilities/images/MGImagesBitmap$ImageRequest; @@ -581,7 +618,7 @@ invoke-interface {v1, v3}, Ljava/util/Set;->add(Ljava/lang/Object;)Z - :cond_b + :cond_d sget-object v3, Lcom/discord/utilities/images/MGImagesBitmap;->INSTANCE:Lcom/discord/utilities/images/MGImagesBitmap; invoke-virtual {v3, v1}, Lcom/discord/utilities/images/MGImagesBitmap;->getBitmaps(Ljava/util/Set;)Lrx/Observable; @@ -642,13 +679,13 @@ const/4 v12, 0x0 - new-instance v14, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5; + new-instance v14, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$4; - invoke-direct {v14, v8}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->(Lrx/subscriptions/CompositeSubscription;)V + invoke-direct {v14, v8}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$4;->(Lrx/subscriptions/CompositeSubscription;)V - new-instance v15, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6; + new-instance v15, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5; - invoke-direct {v15, v5, v7, v4}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->(Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;Landroidx/core/app/NotificationCompat$Builder;)V + invoke-direct {v15, v5, v7, v4}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$5;->(Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;Landroidx/core/app/NotificationCompat$Builder;)V const/16 v16, 0x0 @@ -698,11 +735,11 @@ move-result-object v12 - new-instance v13, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7; + new-instance v13, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6; - invoke-direct {v13, v8}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->(Lrx/subscriptions/CompositeSubscription;)V + invoke-direct {v13, v8}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$6;->(Lrx/subscriptions/CompositeSubscription;)V - new-instance v14, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8; + new-instance v14, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7; move-object v1, v14 @@ -716,7 +753,7 @@ move-object v6, v7 - invoke-direct/range {v1 .. v6}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$8;->(Lcom/discord/utilities/fcm/NotificationData;Landroidx/core/app/NotificationCompat$Builder;Ljava/util/List;Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;)V + invoke-direct/range {v1 .. v6}, Lcom/discord/utilities/fcm/NotificationRenderer$displayAndUpdateCache$7;->(Lcom/discord/utilities/fcm/NotificationData;Landroidx/core/app/NotificationCompat$Builder;Ljava/util/List;Landroid/content/Context;Lcom/discord/utilities/fcm/NotificationData$DisplayPayload;)V const/4 v15, 0x0 diff --git a/com.discord/smali/com/discord/utilities/permissions/VideoPermissionsManager.smali b/com.discord/smali/com/discord/utilities/permissions/VideoPermissionsManager.smali index b38eaa6459..49260cb05e 100644 --- a/com.discord/smali/com/discord/utilities/permissions/VideoPermissionsManager.smali +++ b/com.discord/smali/com/discord/utilities/permissions/VideoPermissionsManager.smali @@ -60,7 +60,7 @@ # virtual methods -.method public final hasVideoPermission(Lcom/discord/models/domain/ModelChannel;J)Z +.method public final hasVideoPermission(Lcom/discord/models/domain/ModelChannel;Ljava/lang/Long;)Z .locals 2 if-eqz p1, :cond_2 @@ -75,10 +75,6 @@ const-wide/16 v0, 0x200 - invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; - - move-result-object p2 - invoke-virtual {p1, v0, v1, p2}, Lcom/discord/utilities/permissions/PermissionsManager;->can(JLjava/lang/Long;)Z move-result p1 diff --git a/com.discord/smali/com/discord/utilities/rest/RestAPI$AppHeadersProvider.smali b/com.discord/smali/com/discord/utilities/rest/RestAPI$AppHeadersProvider.smali index e521f5dde2..d896405326 100644 --- a/com.discord/smali/com/discord/utilities/rest/RestAPI$AppHeadersProvider.smali +++ b/com.discord/smali/com/discord/utilities/rest/RestAPI$AppHeadersProvider.smali @@ -159,7 +159,7 @@ .method public getUserAgent()Ljava/lang/String; .locals 1 - const-string v0, "Discord-Android/1237" + const-string v0, "Discord-Android/1238" return-object v0 .end method diff --git a/com.discord/smali/com/discord/utilities/rest/SendUtils.smali b/com.discord/smali/com/discord/utilities/rest/SendUtils.smali index ca99cbb7bb..0d5ed4cda2 100644 --- a/com.discord/smali/com/discord/utilities/rest/SendUtils.smali +++ b/com.discord/smali/com/discord/utilities/rest/SendUtils.smali @@ -581,14 +581,12 @@ throw v0 .end method -.method public final tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIZIZZ)Z +.method public final tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIFZIZZ)Z .locals 13 move-object v0, p1 - move/from16 v1, p3 - - move/from16 v9, p4 + move/from16 v1, p4 const/4 v2, 0x0 @@ -596,9 +594,9 @@ if-eqz p2, :cond_3 - int-to-float v2, v9 + int-to-float v2, v1 - cmpg-float v2, v1, v2 + cmpg-float v2, p3, v2 if-gtz v2, :cond_0 @@ -607,9 +605,13 @@ return v0 :cond_0 - sget-object v2, Lcom/discord/utilities/analytics/AnalyticsTracker;->INSTANCE:Lcom/discord/utilities/analytics/AnalyticsTracker; + sget-object v2, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; - if-eqz p5, :cond_1 + invoke-virtual {v2}, Lcom/discord/stores/StoreStream$Companion;->getAnalytics()Lcom/discord/stores/StoreAnalytics; + + move-result-object v2 + + if-eqz p6, :cond_1 sget-object v3, Lcom/discord/utilities/rest/FileUploadAlertType;->OVER_MAX_SIZE:Lcom/discord/utilities/rest/FileUploadAlertType; @@ -619,25 +621,29 @@ sget-object v3, Lcom/discord/utilities/rest/FileUploadAlertType;->NITRO_UPSELL:Lcom/discord/utilities/rest/FileUploadAlertType; :goto_0 - float-to-int v5, v1 + const/high16 v4, 0x100000 - move-object v1, v2 + int-to-float v4, v4 - move-object v2, v3 + mul-float v5, p5, v4 - move/from16 v3, p6 + float-to-int v5, v5 - move/from16 v4, p4 + mul-float v4, v4, p3 - move/from16 v6, p7 + float-to-int v6, v4 + + move/from16 v4, p7 move/from16 v7, p8 - move/from16 v8, p5 + move/from16 v8, p9 - invoke-virtual/range {v1 .. v8}, Lcom/discord/utilities/analytics/AnalyticsTracker;->fileUploadAlertViewed(Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZ)V + move/from16 v9, p6 - if-nez p5, :cond_2 + invoke-virtual/range {v2 .. v9}, Lcom/discord/stores/StoreAnalytics;->trackFileUploadAlertViewed(Lcom/discord/utilities/rest/FileUploadAlertType;IIIZZZ)V + + if-nez p6, :cond_2 sget-object v3, Lf/a/a/a/a;->j:Lf/a/a/a/a$b; @@ -665,14 +671,14 @@ invoke-static/range {v3 .. v12}, Lf/a/a/a/a$b;->b(Lf/a/a/a/a$b;Landroidx/fragment/app/FragmentManager;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V - move-object v1, p0 + move-object v3, p0 goto :goto_1 :cond_2 - move-object v1, p0 + move-object v3, p0 - invoke-direct {p0, p1, v9}, Lcom/discord/utilities/rest/SendUtils;->showFilesTooLargeDialog(Landroid/content/Context;I)V + invoke-direct {p0, p1, v1}, Lcom/discord/utilities/rest/SendUtils;->showFilesTooLargeDialog(Landroid/content/Context;I)V :goto_1 const/4 v0, 0x1 @@ -680,7 +686,7 @@ return v0 :cond_3 - move-object v1, p0 + move-object v3, p0 const-string v0, "fragmentManager" @@ -689,7 +695,7 @@ throw v2 :cond_4 - move-object v1, p0 + move-object v3, p0 const-string v0, "context" diff --git a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInput.smali b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInput.smali index b525c4e216..52a63dbd63 100644 --- a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInput.smali +++ b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInput.smali @@ -1555,8 +1555,8 @@ return-void .end method -.method public onFilesTooLarge(IFZIZZ)V - .locals 9 +.method public onFilesTooLarge(IFFZIZZ)V + .locals 10 invoke-virtual {p0}, Landroidx/fragment/app/Fragment;->getContext()Landroid/content/Context; @@ -1588,9 +1588,11 @@ move v7, p5 - move v8, p6 + move/from16 v8, p6 - invoke-virtual/range {v0 .. v8}, Lcom/discord/utilities/rest/SendUtils;->tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIZIZZ)Z + move/from16 v9, p7 + + invoke-virtual/range {v0 .. v9}, Lcom/discord/utilities/rest/SendUtils;->tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIFZIZZ)Z :cond_0 return-void diff --git a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$Listener.smali b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$Listener.smali index 983d416850..30078b7952 100644 --- a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$Listener.smali +++ b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$Listener.smali @@ -15,7 +15,7 @@ # virtual methods -.method public abstract onFilesTooLarge(IFZIZZ)V +.method public abstract onFilesTooLarge(IFFZIZZ)V .end method .method public abstract onMessageTooLong(II)V diff --git a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1.smali b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1.smali index 803d2ac7af..5ccbd34c5f 100644 --- a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1.smali +++ b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1.smali @@ -60,7 +60,7 @@ .end method .method public final invoke()V - .locals 10 + .locals 11 iget-object v0, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1;->$guild:Lcom/discord/models/domain/ModelGuild; @@ -114,6 +114,8 @@ const v5, 0x7f7fffff # Float.MAX_VALUE + const v6, 0x7f7fffff # Float.MAX_VALUE + iget-object v0, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1;->this$0:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1; iget-object v0, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1;->this$0:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1; @@ -126,7 +128,7 @@ invoke-virtual {v0}, Lcom/discord/models/domain/ModelUser;->isPremium()Z - move-result v6 + move-result v7 iget-object v0, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1;->this$0:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1; @@ -134,15 +136,15 @@ invoke-interface {v0}, Ljava/util/List;->size()I - move-result v7 + move-result v8 iget-object v0, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1$1;->this$0:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1; - iget-boolean v8, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1;->$hasImage:Z + iget-boolean v9, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1;->$hasImage:Z - iget-boolean v9, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1;->$hasVideo:Z + iget-boolean v10, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1;->$hasVideo:Z - invoke-interface/range {v3 .. v9}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onFilesTooLarge(IFZIZZ)V + invoke-interface/range {v3 .. v10}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onFilesTooLarge(IFFZIZZ)V :cond_1 return-void diff --git a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2.smali b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2.smali index d2d2f7b17c..b6857f28a6 100644 --- a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2.smali +++ b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2.smali @@ -36,20 +36,24 @@ .field public final synthetic $hasVideo:Z +.field public final synthetic $maxAttachmentSizeMB:F + .field public final synthetic this$0:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1; # direct methods -.method public constructor (Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;Ljava/util/List;ZZ)V +.method public constructor (Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;FLjava/util/List;ZZ)V .locals 0 iput-object p1, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->this$0:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1; - iput-object p2, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$attachments:Ljava/util/List; + iput p2, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$maxAttachmentSizeMB:F - iput-boolean p3, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasImage:Z + iput-object p3, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$attachments:Ljava/util/List; - iput-boolean p4, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasVideo:Z + iput-boolean p4, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasImage:Z + + iput-boolean p5, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasVideo:Z const/4 p1, 0x3 @@ -89,7 +93,7 @@ .end method .method public final invoke(IFZ)V - .locals 8 + .locals 9 iget-object v0, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->this$0:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1; @@ -105,23 +109,25 @@ if-eqz v1, :cond_0 + iget v4, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$maxAttachmentSizeMB:F + iget-object v0, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$attachments:Ljava/util/List; invoke-interface {v0}, Ljava/util/List;->size()I - move-result v5 + move-result v6 - iget-boolean v6, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasImage:Z + iget-boolean v7, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasImage:Z - iget-boolean v7, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasVideo:Z + iget-boolean v8, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->$hasVideo:Z move v2, p1 move v3, p2 - move v4, p3 + move v5, p3 - invoke-interface/range {v1 .. v7}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onFilesTooLarge(IFZIZZ)V + invoke-interface/range {v1 .. v8}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onFilesTooLarge(IFFZIZZ)V :cond_0 return-void diff --git a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali index 98b5daaf4a..55bd41498b 100644 --- a/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali +++ b/com.discord/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali @@ -82,7 +82,7 @@ .end method .method public final invoke(Ljava/util/List;)Z - .locals 24 + .locals 26 .annotation system Ldalvik/annotation/Signature; value = { "(", @@ -93,380 +93,148 @@ } .end annotation - move-object/from16 v0, p0 + move-object/from16 v6, p0 - move-object/from16 v1, p1 + move-object/from16 v3, p1 - if-eqz v1, :cond_12 + if-eqz v3, :cond_13 - iget-object v2, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; + iget-object v0, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; - invoke-virtual {v2}, Lcom/discord/widgets/chat/input/WidgetChatInputEditText;->getMatchedContentWithMetaData()Lcom/discord/models/domain/ModelMessage$Content; + invoke-virtual {v0}, Lcom/discord/widgets/chat/input/WidgetChatInputEditText;->getMatchedContentWithMetaData()Lcom/discord/models/domain/ModelMessage$Content; - move-result-object v2 + move-result-object v0 invoke-interface/range {p1 .. p1}, Ljava/util/Collection;->isEmpty()Z - move-result v3 + move-result v1 - const/4 v4, 0x1 + const/4 v2, 0x1 - const-string v5, "chatInput.context" + const-string v4, "chatInput.context" - const/4 v6, 0x0 + const/4 v7, 0x0 - if-eqz v3, :cond_1 + if-eqz v1, :cond_1 :cond_0 - const/4 v13, 0x0 + const/4 v14, 0x0 goto :goto_0 :cond_1 invoke-interface/range {p1 .. p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; - move-result-object v3 + move-result-object v1 :cond_2 - invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z + invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z - move-result v7 + move-result v5 - if-eqz v7, :cond_0 + if-eqz v5, :cond_0 - invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; + invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; - move-result-object v7 + move-result-object v5 - check-cast v7, Lcom/lytefast/flexinput/model/Attachment; + check-cast v5, Lcom/lytefast/flexinput/model/Attachment; - iget-object v8, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; + iget-object v8, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; invoke-virtual {v8}, Landroid/widget/EditText;->getContext()Landroid/content/Context; move-result-object v8 - invoke-static {v8, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + invoke-static {v8, v4}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V invoke-virtual {v8}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver; move-result-object v8 - invoke-static {v7, v8}, Lcom/discord/utilities/attachments/AttachmentUtilsKt;->isImage(Lcom/lytefast/flexinput/model/Attachment;Landroid/content/ContentResolver;)Z + invoke-static {v5, v8}, Lcom/discord/utilities/attachments/AttachmentUtilsKt;->isImage(Lcom/lytefast/flexinput/model/Attachment;Landroid/content/ContentResolver;)Z - move-result v7 + move-result v5 - if-eqz v7, :cond_2 + if-eqz v5, :cond_2 - const/4 v13, 0x1 + const/4 v14, 0x1 :goto_0 invoke-interface/range {p1 .. p1}, Ljava/util/Collection;->isEmpty()Z - move-result v3 + move-result v1 - if-eqz v3, :cond_4 + if-eqz v1, :cond_4 :cond_3 - const/4 v14, 0x0 + const/4 v15, 0x0 goto :goto_1 :cond_4 invoke-interface/range {p1 .. p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; - move-result-object v3 + move-result-object v1 :cond_5 - invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z + invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z - move-result v7 + move-result v5 - if-eqz v7, :cond_3 + if-eqz v5, :cond_3 - invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; + invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; - move-result-object v7 + move-result-object v5 - check-cast v7, Lcom/lytefast/flexinput/model/Attachment; + check-cast v5, Lcom/lytefast/flexinput/model/Attachment; - iget-object v8, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; + iget-object v8, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; invoke-virtual {v8}, Landroid/widget/EditText;->getContext()Landroid/content/Context; move-result-object v8 - invoke-static {v8, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + invoke-static {v8, v4}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V invoke-virtual {v8}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver; move-result-object v8 - invoke-static {v7, v8}, Lcom/discord/utilities/attachments/AttachmentUtilsKt;->isVideo(Lcom/lytefast/flexinput/model/Attachment;Landroid/content/ContentResolver;)Z - - move-result v7 - - if-eqz v7, :cond_5 - - const/4 v14, 0x1 - - :goto_1 - new-instance v3, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1; - - invoke-direct {v3, v0, v1, v13, v14}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1;->(Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;Ljava/util/List;ZZ)V - - sget-object v7, Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag;->Companion:Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag$Companion; - - invoke-virtual {v7}, Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag$Companion;->getINSTANCE()Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag; - - move-result-object v7 - - invoke-virtual {v7}, Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag;->isEnabled()Z - - move-result v7 - - const-string v8, "chatInput.context.contentResolver" - - const/16 v9, 0xa - - const-string v10, "messageData" - - const-string v11, "messageData.content" - - if-eqz v7, :cond_8 - - new-instance v4, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$onMessageTooLong$1; - - invoke-direct {v4, v0}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$onMessageTooLong$1;->(Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;)V - - iget-object v7, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - invoke-virtual {v7}, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->isEditing()Z - - move-result v7 - - if-eqz v7, :cond_6 - - iget-object v7, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - iget-object v7, v7, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; - - if-eqz v7, :cond_6 - - iget-object v15, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$messageManager:Lcom/discord/widgets/chat/MessageManager; - - invoke-virtual {v7}, Lcom/discord/stores/StoreChat$EditingMessage;->getMessage()Lcom/discord/models/domain/ModelMessage; - - move-result-object v1 - - invoke-virtual {v1}, Lcom/discord/models/domain/ModelMessage;->getId()J - - move-result-wide v16 - - iget-object v1, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - iget-object v1, v1, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; - - invoke-virtual {v1}, Lcom/discord/stores/StoreChat$EditingMessage;->getMessage()Lcom/discord/models/domain/ModelMessage; - - move-result-object v1 - - invoke-virtual {v1}, Lcom/discord/models/domain/ModelMessage;->getChannelId()J - - move-result-wide v18 - - invoke-static {v2, v10}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; - - move-result-object v1 - - invoke-static {v1, v11}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - move-object/from16 v20, v1 - - move-object/from16 v21, v4 - - invoke-virtual/range {v15 .. v21}, Lcom/discord/widgets/chat/MessageManager;->editMessage(JJLjava/lang/String;Lkotlin/jvm/functions/Function2;)Z - - move-result v1 - - goto/16 :goto_3 - - :cond_6 - new-instance v7, Ljava/util/ArrayList; - - invoke-static {v1, v9}, Lf/n/a/k/a;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I - - move-result v9 - - invoke-direct {v7, v9}, Ljava/util/ArrayList;->(I)V - - invoke-interface/range {p1 .. p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; - - move-result-object v9 - - :goto_2 - invoke-interface {v9}, Ljava/util/Iterator;->hasNext()Z - - move-result v12 - - if-eqz v12, :cond_7 - - invoke-interface {v9}, Ljava/util/Iterator;->next()Ljava/lang/Object; - - move-result-object v12 - - check-cast v12, Lcom/lytefast/flexinput/model/Attachment; - - invoke-virtual {v12}, Lcom/lytefast/flexinput/model/Attachment;->getUri()Landroid/net/Uri; - - move-result-object v12 - - iget-object v15, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; - - invoke-virtual {v15}, Landroid/widget/EditText;->getContext()Landroid/content/Context; - - move-result-object v15 - - invoke-static {v15, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-virtual {v15}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver; - - move-result-object v15 - - invoke-static {v15, v8}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-static {v12, v15}, Lcom/discord/utilities/rest/SendUtilsKt;->computeFileSizeMegabytes(Landroid/net/Uri;Landroid/content/ContentResolver;)F - - move-result v12 - - invoke-static {v12}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float; - - move-result-object v12 - - invoke-interface {v7, v12}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z - - goto :goto_2 - - :cond_7 - invoke-static {v7}, Lj0/i/l;->sumOfFloat(Ljava/lang/Iterable;)F + invoke-static {v5, v8}, Lcom/discord/utilities/attachments/AttachmentUtilsKt;->isVideo(Lcom/lytefast/flexinput/model/Attachment;Landroid/content/ContentResolver;)Z move-result v5 - iget-object v15, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$messageManager:Lcom/discord/widgets/chat/MessageManager; + if-eqz v5, :cond_5 - invoke-static {v2, v10}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + const/4 v15, 0x1 - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; + :goto_1 + new-instance v1, Ljava/util/ArrayList; - move-result-object v7 + const/16 v5, 0xa - invoke-static {v7, v11}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + invoke-static {v3, v5}, Lf/n/a/k/a;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getMentions()Ljava/util/List; + move-result v8 - move-result-object v17 - - new-instance v2, Lcom/discord/widgets/chat/MessageManager$AttachmentsRequest; - - iget-object v8, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - iget v8, v8, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->maxFileSizeMB:I - - new-instance v9, Ljava/util/ArrayList; - - invoke-direct {v9, v1}, Ljava/util/ArrayList;->(Ljava/util/Collection;)V - - invoke-direct {v2, v5, v8, v9}, Lcom/discord/widgets/chat/MessageManager$AttachmentsRequest;->(FILjava/util/List;)V - - iget-object v5, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - iget-wide v8, v5, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->channelId:J - - invoke-static {v8, v9}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; - - move-result-object v19 - - new-instance v5, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$1; - - invoke-direct {v5, v3}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$1;->(Lkotlin/jvm/functions/Function2;)V - - new-instance v3, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2; - - invoke-direct {v3, v0, v1, v13, v14}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->(Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;Ljava/util/List;ZZ)V - - move-object/from16 v16, v7 - - move-object/from16 v18, v2 - - move-object/from16 v20, v4 - - move-object/from16 v21, v3 - - move-object/from16 v22, v5 - - invoke-virtual/range {v15 .. v22}, Lcom/discord/widgets/chat/MessageManager;->sendMessage(Ljava/lang/String;Ljava/util/List;Lcom/discord/widgets/chat/MessageManager$AttachmentsRequest;Ljava/lang/Long;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function3;Lkotlin/jvm/functions/Function1;)Z - - move-result v1 - - :goto_3 - if-nez v1, :cond_11 - - return v6 - - :cond_8 - invoke-static {v2, v10}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; - - move-result-object v7 - - invoke-static {v7, v11}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-interface {v7}, Ljava/lang/CharSequence;->length()I - - move-result v7 - - if-nez v7, :cond_9 - - goto :goto_4 - - :cond_9 - const/4 v4, 0x0 - - :goto_4 - if-eqz v4, :cond_a - - invoke-interface/range {p1 .. p1}, Ljava/util/List;->isEmpty()Z - - move-result v4 - - if-eqz v4, :cond_a - - return v6 - - :cond_a - new-instance v4, Ljava/util/ArrayList; - - invoke-static {v1, v9}, Lf/n/a/k/a;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I - - move-result v7 - - invoke-direct {v4, v7}, Ljava/util/ArrayList;->(I)V + invoke-direct {v1, v8}, Ljava/util/ArrayList;->(I)V invoke-interface/range {p1 .. p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; - move-result-object v7 + move-result-object v8 - :goto_5 - invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z + :goto_2 + invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z move-result v9 - if-eqz v9, :cond_b + const-string v10, "chatInput.context.contentResolver" - invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object; + if-eqz v9, :cond_6 + + invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v9 @@ -476,21 +244,21 @@ move-result-object v9 - iget-object v10, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; + iget-object v11, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; - invoke-virtual {v10}, Landroid/widget/EditText;->getContext()Landroid/content/Context; + invoke-virtual {v11}, Landroid/widget/EditText;->getContext()Landroid/content/Context; - move-result-object v10 + move-result-object v11 - invoke-static {v10, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + invoke-static {v11, v4}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - invoke-virtual {v10}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver; + invoke-virtual {v11}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver; - move-result-object v10 + move-result-object v11 - invoke-static {v10, v8}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + invoke-static {v11, v10}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - invoke-static {v9, v10}, Lcom/discord/utilities/rest/SendUtilsKt;->computeFileSizeMegabytes(Landroid/net/Uri;Landroid/content/ContentResolver;)F + invoke-static {v9, v11}, Lcom/discord/utilities/rest/SendUtilsKt;->computeFileSizeMegabytes(Landroid/net/Uri;Landroid/content/ContentResolver;)F move-result v9 @@ -498,84 +266,328 @@ move-result-object v9 - invoke-interface {v4, v9}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z + invoke-interface {v1, v9}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z - goto :goto_5 + goto :goto_2 - :cond_b - invoke-static {v4}, Lj0/i/l;->sumOfFloat(Ljava/lang/Iterable;)F + :cond_6 + invoke-static {v1}, Lj0/i/l;->sumOfFloat(Ljava/lang/Iterable;)F - move-result v10 + move-result v8 - iget-object v4, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - iget v4, v4, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->maxFileSizeMB:I - - int-to-float v4, v4 - - const-string v5, "model.me" - - cmpl-float v4, v10, v4 - - if-ltz v4, :cond_d - - iget-object v2, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$weakListener:Ljava/lang/ref/WeakReference; - - invoke-virtual {v2}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object; - - move-result-object v2 - - move-object v8, v2 - - check-cast v8, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener; - - if-eqz v8, :cond_c - - iget-object v2, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - iget v9, v2, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->maxFileSizeMB:I - - iget-object v2, v2, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->me:Lcom/discord/models/domain/ModelUser; - - invoke-static {v2, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-virtual {v2}, Lcom/discord/models/domain/ModelUser;->isPremium()Z - - move-result v11 - - invoke-interface/range {p1 .. p1}, Ljava/util/List;->size()I - - move-result v12 - - invoke-interface/range {v8 .. v14}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onFilesTooLarge(IFZIZZ)V - - :cond_c - return v6 - - :cond_d - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; - - move-result-object v4 - - invoke-virtual {v4}, Ljava/lang/String;->length()I - - move-result v4 - - const/16 v7, 0x7d0 - - if-le v4, v7, :cond_f - - iget-object v1, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$weakListener:Ljava/lang/ref/WeakReference; - - invoke-virtual {v1}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object; + invoke-static {v1}, Lj0/i/l;->max(Ljava/lang/Iterable;)Ljava/lang/Float; move-result-object v1 - check-cast v1, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener; + if-eqz v1, :cond_7 - if-eqz v1, :cond_e + invoke-virtual {v1}, Ljava/lang/Float;->floatValue()F - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; + move-result v1 + + move v11, v1 + + goto :goto_3 + + :cond_7 + const/4 v1, 0x0 + + const/4 v11, 0x0 + + :goto_3 + new-instance v1, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1; + + invoke-direct {v1, v6, v3, v14, v15}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$messageSendResultHandler$1;->(Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;Ljava/util/List;ZZ)V + + sget-object v9, Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag;->Companion:Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag$Companion; + + invoke-virtual {v9}, Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag$Companion;->getINSTANCE()Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag; + + move-result-object v9 + + invoke-virtual {v9}, Lcom/discord/widgets/chat/input/gifpicker/GifPickerFeatureFlag;->isEnabled()Z + + move-result v9 + + const-string v12, "messageData" + + const-string v13, "messageData.content" + + if-eqz v9, :cond_9 + + new-instance v9, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$onMessageTooLong$1; + + invoke-direct {v9, v6}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$onMessageTooLong$1;->(Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;)V + + iget-object v2, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + + invoke-virtual {v2}, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->isEditing()Z + + move-result v2 + + if-eqz v2, :cond_8 + + iget-object v2, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + + iget-object v2, v2, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; + + if-eqz v2, :cond_8 + + iget-object v1, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$messageManager:Lcom/discord/widgets/chat/MessageManager; + + invoke-virtual {v2}, Lcom/discord/stores/StoreChat$EditingMessage;->getMessage()Lcom/discord/models/domain/ModelMessage; + + move-result-object v2 + + invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage;->getId()J + + move-result-wide v17 + + iget-object v2, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + + iget-object v2, v2, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; + + invoke-virtual {v2}, Lcom/discord/stores/StoreChat$EditingMessage;->getMessage()Lcom/discord/models/domain/ModelMessage; + + move-result-object v2 + + invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage;->getChannelId()J + + move-result-wide v19 + + invoke-static {v0, v12}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; + + move-result-object v0 + + invoke-static {v0, v13}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + move-object/from16 v16, v1 + + move-object/from16 v21, v0 + + move-object/from16 v22, v9 + + invoke-virtual/range {v16 .. v22}, Lcom/discord/widgets/chat/MessageManager;->editMessage(JJLjava/lang/String;Lkotlin/jvm/functions/Function2;)Z + + move-result v0 + + goto :goto_4 + + :cond_8 + iget-object v10, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$messageManager:Lcom/discord/widgets/chat/MessageManager; + + invoke-static {v0, v12}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; + + move-result-object v12 + + invoke-static {v12, v13}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getMentions()Ljava/util/List; + + move-result-object v18 + + new-instance v13, Lcom/discord/widgets/chat/MessageManager$AttachmentsRequest; + + iget-object v0, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + + iget v0, v0, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->maxFileSizeMB:I + + new-instance v2, Ljava/util/ArrayList; + + invoke-direct {v2, v3}, Ljava/util/ArrayList;->(Ljava/util/Collection;)V + + invoke-direct {v13, v8, v0, v2}, Lcom/discord/widgets/chat/MessageManager$AttachmentsRequest;->(FILjava/util/List;)V + + iget-object v0, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + + iget-wide v4, v0, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->channelId:J + + invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; + + move-result-object v20 + + new-instance v8, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$1; + + invoke-direct {v8, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$1;->(Lkotlin/jvm/functions/Function2;)V + + new-instance v22, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2; + + move-object/from16 v0, v22 + + move-object/from16 v1, p0 + + move v2, v11 + + move-object/from16 v3, p1 + + move v4, v14 + + move v5, v15 + + invoke-direct/range {v0 .. v5}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$synchronousValidationSucceeded$2;->(Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;FLjava/util/List;ZZ)V + + move-object/from16 v16, v10 + + move-object/from16 v17, v12 + + move-object/from16 v19, v13 + + move-object/from16 v21, v9 + + move-object/from16 v23, v8 + + invoke-virtual/range {v16 .. v23}, Lcom/discord/widgets/chat/MessageManager;->sendMessage(Ljava/lang/String;Ljava/util/List;Lcom/discord/widgets/chat/MessageManager$AttachmentsRequest;Ljava/lang/Long;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function3;Lkotlin/jvm/functions/Function1;)Z + + move-result v0 + + :goto_4 + if-nez v0, :cond_12 + + return v7 + + :cond_9 + invoke-static {v0, v12}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; + + move-result-object v8 + + invoke-static {v8, v13}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-interface {v8}, Ljava/lang/CharSequence;->length()I + + move-result v8 + + if-nez v8, :cond_a + + goto :goto_5 + + :cond_a + const/4 v2, 0x0 + + :goto_5 + if-eqz v2, :cond_b + + invoke-interface/range {p1 .. p1}, Ljava/util/List;->isEmpty()Z + + move-result v2 + + if-eqz v2, :cond_b + + return v7 + + :cond_b + new-instance v2, Ljava/util/ArrayList; + + invoke-static {v3, v5}, Lf/n/a/k/a;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I + + move-result v5 + + invoke-direct {v2, v5}, Ljava/util/ArrayList;->(I)V + + invoke-interface/range {p1 .. p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; + + move-result-object v5 + + :goto_6 + invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z + + move-result v8 + + if-eqz v8, :cond_c + + invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object; + + move-result-object v8 + + check-cast v8, Lcom/lytefast/flexinput/model/Attachment; + + invoke-virtual {v8}, Lcom/lytefast/flexinput/model/Attachment;->getUri()Landroid/net/Uri; + + move-result-object v8 + + iget-object v9, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; + + invoke-virtual {v9}, Landroid/widget/EditText;->getContext()Landroid/content/Context; + + move-result-object v9 + + invoke-static {v9, v4}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-virtual {v9}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver; + + move-result-object v9 + + invoke-static {v9, v10}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-static {v8, v9}, Lcom/discord/utilities/rest/SendUtilsKt;->computeFileSizeMegabytes(Landroid/net/Uri;Landroid/content/ContentResolver;)F + + move-result v8 + + invoke-static {v8}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float; + + move-result-object v8 + + invoke-interface {v2, v8}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z + + goto :goto_6 + + :cond_c + invoke-static {v2}, Lj0/i/l;->sumOfFloat(Ljava/lang/Iterable;)F + + move-result v10 + + iget-object v2, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + + iget v2, v2, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->maxFileSizeMB:I + + int-to-float v2, v2 + + const-string v4, "model.me" + + cmpl-float v2, v10, v2 + + if-ltz v2, :cond_e + + iget-object v0, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$weakListener:Ljava/lang/ref/WeakReference; + + invoke-virtual {v0}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object; + + move-result-object v0 + + move-object v8, v0 + + check-cast v8, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener; + + if-eqz v8, :cond_d + + iget-object v0, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + + iget v9, v0, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->maxFileSizeMB:I + + iget-object v0, v0, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->me:Lcom/discord/models/domain/ModelUser; + + invoke-static {v0, v4}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-virtual {v0}, Lcom/discord/models/domain/ModelUser;->isPremium()Z + + move-result v12 + + invoke-interface/range {p1 .. p1}, Ljava/util/List;->size()I + + move-result v13 + + invoke-interface/range {v8 .. v15}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onFilesTooLarge(IFFZIZZ)V + + :cond_d + return v7 + + :cond_e + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; move-result-object v2 @@ -583,33 +595,55 @@ move-result v2 - invoke-interface {v1, v2, v7}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onMessageTooLong(II)V + const/16 v5, 0x7d0 - :cond_e - return v6 + if-le v2, v5, :cond_10 + + iget-object v1, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$weakListener:Ljava/lang/ref/WeakReference; + + invoke-virtual {v1}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object; + + move-result-object v1 + + check-cast v1, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener; + + if-eqz v1, :cond_f + + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; + + move-result-object v0 + + invoke-virtual {v0}, Ljava/lang/String;->length()I + + move-result v0 + + invoke-interface {v1, v0, v5}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$Listener;->onMessageTooLong(II)V :cond_f - iget-object v4, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + return v7 - invoke-virtual {v4}, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->isEditing()Z + :cond_10 + iget-object v2, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - move-result v4 + invoke-virtual {v2}, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->isEditing()Z - if-eqz v4, :cond_10 + move-result v2 - iget-object v4, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + if-eqz v2, :cond_11 - iget-object v4, v4, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; + iget-object v2, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - if-eqz v4, :cond_10 + iget-object v2, v2, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; + + if-eqz v2, :cond_11 sget-object v1, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; invoke-virtual {v1}, Lcom/discord/stores/StoreStream$Companion;->getMessages()Lcom/discord/stores/StoreMessages; - move-result-object v3 + move-result-object v7 - iget-object v1, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + iget-object v1, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; iget-object v1, v1, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; @@ -619,9 +653,9 @@ invoke-virtual {v1}, Lcom/discord/models/domain/ModelMessage;->getId()J - move-result-wide v4 + move-result-wide v8 - iget-object v1, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + iget-object v1, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; iget-object v1, v1, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->editingMessage:Lcom/discord/stores/StoreChat$EditingMessage; @@ -631,143 +665,147 @@ invoke-virtual {v1}, Lcom/discord/models/domain/ModelMessage;->getChannelId()J - move-result-wide v6 + move-result-wide v10 - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; - - move-result-object v8 - - invoke-static {v8, v11}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-virtual/range {v3 .. v8}, Lcom/discord/stores/StoreMessages;->editMessage(JJLjava/lang/String;)V - - goto :goto_6 - - :cond_10 - sget-object v4, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; - - invoke-virtual {v4}, Lcom/discord/stores/StoreStream$Companion;->getGuilds()Lcom/discord/stores/StoreGuilds; - - move-result-object v4 - - iget-object v6, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - - iget-wide v6, v6, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->channelId:J - - invoke-virtual {v4, v6, v7}, Lcom/discord/stores/StoreGuilds;->observeFromChannelId(J)Lrx/Observable; - - move-result-object v4 - - sget-object v6, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; - - invoke-virtual {v6}, Lcom/discord/stores/StoreStream$Companion;->getMessages()Lcom/discord/stores/StoreMessages; + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; move-result-object v12 - iget-object v6, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; + invoke-static {v12, v13}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - iget-wide v13, v6, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->channelId:J + invoke-virtual/range {v7 .. v12}, Lcom/discord/stores/StoreMessages;->editMessage(JJLjava/lang/String;)V - iget-object v15, v6, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->me:Lcom/discord/models/domain/ModelUser; + goto :goto_7 - invoke-static {v15, v5}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + :cond_11 + sget-object v2, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; + invoke-virtual {v2}, Lcom/discord/stores/StoreStream$Companion;->getGuilds()Lcom/discord/stores/StoreGuilds; - move-result-object v5 + move-result-object v2 - invoke-static {v5, v11}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + iget-object v5, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - invoke-virtual {v2}, Lcom/discord/models/domain/ModelMessage$Content;->getMentions()Ljava/util/List; + iget-wide v7, v5, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->channelId:J - move-result-object v17 + invoke-virtual {v2, v7, v8}, Lcom/discord/stores/StoreGuilds;->observeFromChannelId(J)Lrx/Observable; - new-instance v2, Ljava/util/ArrayList; + move-result-object v2 - invoke-direct {v2, v1}, Ljava/util/ArrayList;->(Ljava/util/Collection;)V + sget-object v5, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; - const/16 v19, 0x0 + invoke-virtual {v5}, Lcom/discord/stores/StoreStream$Companion;->getMessages()Lcom/discord/stores/StoreMessages; - const/16 v20, 0x0 + move-result-object v14 - const/16 v21, 0x0 + iget-object v5, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$model:Lcom/discord/widgets/chat/input/WidgetChatInputModel; - const/16 v22, 0xe0 + iget-wide v7, v5, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->channelId:J - const/16 v23, 0x0 + iget-object v5, v5, Lcom/discord/widgets/chat/input/WidgetChatInputModel;->me:Lcom/discord/models/domain/ModelUser; - move-object/from16 v16, v5 + invoke-static {v5, v4}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - move-object/from16 v18, v2 - - invoke-static/range {v12 .. v23}, Lcom/discord/stores/StoreMessages;->sendMessage$default(Lcom/discord/stores/StoreMessages;JLcom/discord/models/domain/ModelUser;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Lcom/discord/models/domain/ModelApplication;Lcom/discord/models/domain/activity/ModelActivity;Lcom/discord/models/domain/ModelMessage$Activity;ILjava/lang/Object;)Lrx/Observable; - - move-result-object v1 - - sget-object v2, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$1;->INSTANCE:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$1; - - invoke-static {v4, v1, v2}, Lrx/Observable;->j(Lrx/Observable;Lrx/Observable;Lrx/functions/Func2;)Lrx/Observable; - - move-result-object v1 - - const-string v2, "Observable\n \u2026 guild to messageResult }" - - invoke-static {v1, v2}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - - invoke-static {v1}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui(Lrx/Observable;)Lrx/Observable; + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getContent()Ljava/lang/String; move-result-object v4 - sget-object v1, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->INSTANCE:Lcom/discord/widgets/chat/input/WidgetChatInputSend; + invoke-static {v4, v13}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class; + invoke-virtual {v0}, Lcom/discord/models/domain/ModelMessage$Content;->getMentions()Ljava/util/List; - move-result-object v5 + move-result-object v19 - const/4 v6, 0x0 + new-instance v0, Ljava/util/ArrayList; - const/4 v7, 0x0 + invoke-direct {v0, v3}, Ljava/util/ArrayList;->(Ljava/util/Collection;)V - const/4 v8, 0x0 + const/16 v21, 0x0 + + const/16 v22, 0x0 + + const/16 v23, 0x0 + + const/16 v24, 0xe0 + + const/16 v25, 0x0 + + move-wide v15, v7 + + move-object/from16 v17, v5 + + move-object/from16 v18, v4 + + move-object/from16 v20, v0 + + invoke-static/range {v14 .. v25}, Lcom/discord/stores/StoreMessages;->sendMessage$default(Lcom/discord/stores/StoreMessages;JLcom/discord/models/domain/ModelUser;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Lcom/discord/models/domain/ModelApplication;Lcom/discord/models/domain/activity/ModelActivity;Lcom/discord/models/domain/ModelMessage$Activity;ILjava/lang/Object;)Lrx/Observable; + + move-result-object v0 + + sget-object v3, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$1;->INSTANCE:Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$1; + + invoke-static {v2, v0, v3}, Lrx/Observable;->j(Lrx/Observable;Lrx/Observable;Lrx/functions/Func2;)Lrx/Observable; + + move-result-object v0 + + const-string v2, "Observable\n \u2026 guild to messageResult }" + + invoke-static {v0, v2}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + + invoke-static {v0}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui(Lrx/Observable;)Lrx/Observable; + + move-result-object v7 + + sget-object v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->INSTANCE:Lcom/discord/widgets/chat/input/WidgetChatInputSend; + + invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; + + move-result-object v8 const/4 v9, 0x0 - new-instance v10, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$2; + const/4 v10, 0x0 - invoke-direct {v10, v3}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$2;->(Lkotlin/jvm/functions/Function2;)V - - const/16 v11, 0x1e + const/4 v11, 0x0 const/4 v12, 0x0 - invoke-static/range {v4 .. v12}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->appSubscribe$default(Lrx/Observable;Ljava/lang/Class;Landroid/content/Context;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V + new-instance v13, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$2; - :cond_11 - :goto_6 - sget-object v13, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->INSTANCE:Lcom/discord/widgets/chat/input/WidgetChatInputSend; + invoke-direct {v13, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1$2;->(Lkotlin/jvm/functions/Function2;)V - iget-object v14, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; + const/16 v14, 0x1e - iget-object v15, v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$flexInputViewModel:Lcom/lytefast/flexinput/viewmodel/FlexInputViewModel; + const/4 v15, 0x0 - const/16 v16, 0x0 - - const/16 v17, 0x4 - - const/16 v18, 0x0 - - invoke-static/range {v13 .. v18}, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->clearInput$default(Lcom/discord/widgets/chat/input/WidgetChatInputSend;Lcom/discord/widgets/chat/input/WidgetChatInputEditText;Lcom/lytefast/flexinput/viewmodel/FlexInputViewModel;Ljava/lang/Boolean;ILjava/lang/Object;)Z - - move-result v1 - - return v1 + invoke-static/range {v7 .. v15}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->appSubscribe$default(Lrx/Observable;Ljava/lang/Class;Landroid/content/Context;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V :cond_12 - const-string v1, "attachments" + :goto_7 + sget-object v0, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->INSTANCE:Lcom/discord/widgets/chat/input/WidgetChatInputSend; - invoke-static {v1}, Lj0/n/c/h;->c(Ljava/lang/String;)V + iget-object v1, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText; - const/4 v1, 0x0 + iget-object v2, v6, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$flexInputViewModel:Lcom/lytefast/flexinput/viewmodel/FlexInputViewModel; - throw v1 + const/4 v3, 0x0 + + const/4 v4, 0x4 + + const/4 v5, 0x0 + + invoke-static/range {v0 .. v5}, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->clearInput$default(Lcom/discord/widgets/chat/input/WidgetChatInputSend;Lcom/discord/widgets/chat/input/WidgetChatInputEditText;Lcom/lytefast/flexinput/viewmodel/FlexInputViewModel;Ljava/lang/Boolean;ILjava/lang/Object;)Z + + move-result v0 + + return v0 + + :cond_13 + const-string v0, "attachments" + + invoke-static {v0}, Lj0/n/c/h;->c(Ljava/lang/String;)V + + const/4 v0, 0x0 + + throw v0 .end method diff --git a/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali b/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali index bf51414889..f564ec4a9c 100644 --- a/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali +++ b/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali @@ -480,7 +480,7 @@ new-array v1, v2, [Ljava/lang/Object; - const-string v3, "35.2" + const-string v3, "35.3" aput-object v3, v1, v5 diff --git a/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali b/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali index 68d0d2cb4f..fb6e25f696 100644 --- a/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali +++ b/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali @@ -1831,7 +1831,7 @@ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; - const-string v0, " - 35.2 (1237)" + const-string v0, " - 35.3 (1238)" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; diff --git a/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare$onSendClicked$3$2.smali b/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare$onSendClicked$3$2.smali index 35d2f8dc71..131ca786ec 100644 --- a/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare$onSendClicked$3$2.smali +++ b/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare$onSendClicked$3$2.smali @@ -60,7 +60,7 @@ .end method .method public final invoke()V - .locals 13 + .locals 14 iget-object v0, p0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3$2;->this$0:Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3; @@ -143,10 +143,12 @@ invoke-virtual {v0}, Lcom/discord/models/domain/ModelUser;->isPremium()Z - move-result v9 + move-result v10 const v7, 0x7f7fffff # Float.MAX_VALUE + const v9, 0x7f7fffff # Float.MAX_VALUE + iget-object v0, p0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3$2;->this$0:Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3; iget-object v0, v0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3;->$data:Ljava/util/List; @@ -157,21 +159,21 @@ move-result v2 - move v10, v2 + move v11, v2 goto :goto_1 :cond_2 - const/4 v10, 0x0 + const/4 v11, 0x0 :goto_1 iget-object v0, p0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3$2;->this$0:Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3; - iget-boolean v11, v0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3;->$hasImage:Z + iget-boolean v12, v0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3;->$hasImage:Z - iget-boolean v12, v0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3;->$hasVideo:Z + iget-boolean v13, v0, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3;->$hasVideo:Z - invoke-virtual/range {v4 .. v12}, Lcom/discord/utilities/rest/SendUtils;->tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIZIZZ)Z + invoke-virtual/range {v4 .. v13}, Lcom/discord/utilities/rest/SendUtils;->tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIFZIZZ)Z return-void .end method diff --git a/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare.smali b/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare.smali index 22ccf1293f..5875deb010 100644 --- a/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare.smali +++ b/com.discord/smali_classes2/com/discord/widgets/share/WidgetIncomingShare.smali @@ -1550,7 +1550,7 @@ .end method .method private final onSendClicked(Landroid/content/Context;Lcom/discord/widgets/user/search/WidgetGlobalSearchModel$ItemDataPayload;Lcom/discord/widgets/chat/list/ViewEmbedGameInvite$Model;Lcom/discord/widgets/share/WidgetIncomingShare$ContentModel;ZIZ)V - .locals 27 + .locals 28 move-object/from16 v7, p0 @@ -1661,7 +1661,7 @@ :cond_2 instance-of v2, v4, Lcom/discord/widgets/user/search/WidgetGlobalSearchModel$ItemGuild; - if-eqz v2, :cond_10 + if-eqz v2, :cond_12 sget-object v2, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; @@ -1712,7 +1712,7 @@ move-result-object v5 - if-eqz v5, :cond_4 + if-eqz v5, :cond_3 new-instance v6, Ljava/util/ArrayList; @@ -1733,7 +1733,7 @@ move-result v9 - if-eqz v9, :cond_3 + if-eqz v9, :cond_4 invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; @@ -1762,48 +1762,73 @@ goto :goto_1 :cond_3 + move-object v6, v0 + + :cond_4 + const/4 v8, 0x0 + + if-eqz v6, :cond_5 + + invoke-static {v6}, Lj0/i/l;->max(Ljava/lang/Iterable;)Ljava/lang/Float; + + move-result-object v9 + + if-eqz v9, :cond_5 + + invoke-virtual {v9}, Ljava/lang/Float;->floatValue()F + + move-result v9 + + move v13, v9 + + goto :goto_2 + + :cond_5 + const/4 v13, 0x0 + + :goto_2 + if-eqz v6, :cond_6 + invoke-static {v6}, Lj0/i/l;->sumOfFloat(Ljava/lang/Iterable;)F move-result v6 move v11, v6 - goto :goto_2 - - :cond_4 - const/4 v6, 0x0 + goto :goto_3 + :cond_6 const/4 v11, 0x0 - :goto_2 + :goto_3 const/4 v6, 0x4 const/4 v15, 0x1 - if-eqz v5, :cond_8 + if-eqz v5, :cond_a invoke-interface {v5}, Ljava/util/Collection;->isEmpty()Z move-result v8 - if-eqz v8, :cond_6 + if-eqz v8, :cond_8 - :cond_5 + :cond_7 const/4 v8, 0x0 - goto :goto_3 + goto :goto_4 - :cond_6 + :cond_8 invoke-interface {v5}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object v8 - :cond_7 + :cond_9 invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z move-result v9 - if-eqz v9, :cond_5 + if-eqz v9, :cond_7 invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; @@ -1819,45 +1844,45 @@ move-result v9 - if-eqz v9, :cond_7 + if-eqz v9, :cond_9 const/4 v8, 0x1 - :goto_3 - if-ne v8, v15, :cond_8 - - const/16 v17, 0x1 - - goto :goto_4 - - :cond_8 - const/16 v17, 0x0 - :goto_4 - if-eqz v5, :cond_c + if-ne v8, v15, :cond_a + + const/16 v18, 0x1 + + goto :goto_5 + + :cond_a + const/16 v18, 0x0 + + :goto_5 + if-eqz v5, :cond_e invoke-interface {v5}, Ljava/util/Collection;->isEmpty()Z move-result v8 - if-eqz v8, :cond_a + if-eqz v8, :cond_c - :cond_9 + :cond_b const/4 v6, 0x0 - goto :goto_5 + goto :goto_6 - :cond_a + :cond_c invoke-interface {v5}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object v8 - :cond_b + :cond_d invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z move-result v9 - if-eqz v9, :cond_9 + if-eqz v9, :cond_b invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; @@ -1873,21 +1898,21 @@ move-result v9 - if-eqz v9, :cond_b + if-eqz v9, :cond_d const/4 v6, 0x1 - :goto_5 - if-ne v6, v15, :cond_c - - const/4 v6, 0x1 - - goto :goto_6 - - :cond_c - const/4 v6, 0x0 - :goto_6 + if-ne v6, v15, :cond_e + + const/4 v6, 0x1 + + goto :goto_7 + + :cond_e + const/4 v6, 0x0 + + :goto_7 sget-object v8, Lcom/discord/utilities/rest/SendUtils;->INSTANCE:Lcom/discord/utilities/rest/SendUtils; invoke-virtual/range {p0 .. p0}, Landroidx/fragment/app/Fragment;->getParentFragmentManager()Landroidx/fragment/app/FragmentManager; @@ -1898,110 +1923,105 @@ invoke-static {v10, v9}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - if-eqz v5, :cond_d + if-eqz v5, :cond_f invoke-interface {v5}, Ljava/util/List;->size()I move-result v1 - move v14, v1 - - goto :goto_7 - - :cond_d - const/4 v14, 0x0 - - :goto_7 + :cond_f move-object/from16 v9, p1 move/from16 v12, p6 - move/from16 v13, p7 + move/from16 v14, p7 - const/4 v1, 0x1 + const/4 v0, 0x1 - move/from16 v15, v17 + move v15, v1 - move/from16 v16, v6 + move/from16 v16, v18 - invoke-virtual/range {v8 .. v16}, Lcom/discord/utilities/rest/SendUtils;->tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIZIZZ)Z + move/from16 v17, v6 - move-result v8 + invoke-virtual/range {v8 .. v17}, Lcom/discord/utilities/rest/SendUtils;->tryShowFilesTooLargeDialog(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;FIFZIZZ)Z - if-eqz v8, :cond_e + move-result v1 + + if-eqz v1, :cond_10 return-void - :cond_e + :cond_10 + sget-object v1, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; + + invoke-virtual {v1}, Lcom/discord/stores/StoreStream$Companion;->getUsers()Lcom/discord/stores/StoreUser; + + move-result-object v1 + + invoke-virtual {v1}, Lcom/discord/stores/StoreUser;->observeMe()Lrx/Observable; + + move-result-object v1 + sget-object v8, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; - invoke-virtual {v8}, Lcom/discord/stores/StoreStream$Companion;->getUsers()Lcom/discord/stores/StoreUser; + invoke-virtual {v8}, Lcom/discord/stores/StoreStream$Companion;->getChannelsSelected()Lcom/discord/stores/StoreChannelsSelected; move-result-object v8 - invoke-virtual {v8}, Lcom/discord/stores/StoreUser;->observeMe()Lrx/Observable; + invoke-virtual {v8}, Lcom/discord/stores/StoreChannelsSelected;->get()Lrx/Observable; move-result-object v8 - sget-object v9, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion; - - invoke-virtual {v9}, Lcom/discord/stores/StoreStream$Companion;->getChannelsSelected()Lcom/discord/stores/StoreChannelsSelected; + invoke-virtual {v8, v2}, Lrx/Observable;->k(Lrx/Observable$c;)Lrx/Observable; move-result-object v9 - invoke-virtual {v9}, Lcom/discord/stores/StoreChannelsSelected;->get()Lrx/Observable; - - move-result-object v9 - - invoke-virtual {v9, v2}, Lrx/Observable;->k(Lrx/Observable$c;)Lrx/Observable; - - move-result-object v10 - const-string v2, "StoreStream\n \u2026 .compose(filter)" - invoke-static {v10, v2}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + invoke-static {v9, v2}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - const-wide/16 v11, 0x3e8 + const-wide/16 v10, 0x3e8 - const/4 v13, 0x0 + const/4 v12, 0x0 - const/4 v14, 0x2 + const/4 v13, 0x2 - const/4 v15, 0x0 + const/4 v14, 0x0 - invoke-static/range {v10 .. v15}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->takeSingleUntilTimeout$default(Lrx/Observable;JZILjava/lang/Object;)Lrx/Observable; + invoke-static/range {v9 .. v14}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->takeSingleUntilTimeout$default(Lrx/Observable;JZILjava/lang/Object;)Lrx/Observable; move-result-object v2 - sget-object v9, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$1;->INSTANCE:Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$1; + sget-object v8, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$1;->INSTANCE:Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$1; - invoke-static {v8, v2, v9}, Lrx/Observable;->j(Lrx/Observable;Lrx/Observable;Lrx/functions/Func2;)Lrx/Observable; - - move-result-object v2 - - invoke-virtual {v2, v1}, Lrx/Observable;->V(I)Lrx/Observable; + invoke-static {v1, v2, v8}, Lrx/Observable;->j(Lrx/Observable;Lrx/Observable;Lrx/functions/Func2;)Lrx/Observable; move-result-object v1 - new-instance v2, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$2; + invoke-virtual {v1, v0}, Lrx/Observable;->V(I)Lrx/Observable; - move-object/from16 v8, p3 + move-result-object v0 - invoke-direct {v2, v7, v5, v3, v8}, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$2;->(Lcom/discord/widgets/share/WidgetIncomingShare;Ljava/util/List;Landroid/content/Context;Lcom/discord/widgets/chat/list/ViewEmbedGameInvite$Model;)V + new-instance v1, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$2; - invoke-virtual {v1, v2}, Lrx/Observable;->x(Lr0/k/b;)Lrx/Observable; + move-object/from16 v2, p3 - move-result-object v1 + invoke-direct {v1, v7, v5, v3, v2}, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$2;->(Lcom/discord/widgets/share/WidgetIncomingShare;Ljava/util/List;Landroid/content/Context;Lcom/discord/widgets/chat/list/ViewEmbedGameInvite$Model;)V - const-string v2, "Observable\n .comb\u2026ervable.empty()\n }" + invoke-virtual {v0, v1}, Lrx/Observable;->x(Lr0/k/b;)Lrx/Observable; - invoke-static {v1, v2}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V + move-result-object v0 - iget-object v2, v7, Lcom/discord/widgets/share/WidgetIncomingShare;->resultsAdapter:Lcom/discord/widgets/user/search/WidgetGlobalSearchAdapter; + const-string v1, "Observable\n .comb\u2026ervable.empty()\n }" - if-eqz v2, :cond_f + invoke-static {v0, v1}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - invoke-static {v1, v7, v2}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui(Lrx/Observable;Lcom/discord/app/AppComponent;Lcom/discord/utilities/mg_recycler/MGRecyclerAdapterSimple;)Lrx/Observable; + iget-object v1, v7, Lcom/discord/widgets/share/WidgetIncomingShare;->resultsAdapter:Lcom/discord/widgets/user/search/WidgetGlobalSearchAdapter; + + if-eqz v1, :cond_11 + + invoke-static {v0, v7, v1}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui(Lrx/Observable;Lcom/discord/app/AppComponent;Lcom/discord/utilities/mg_recycler/MGRecyclerAdapterSimple;)Lrx/Observable; move-result-object v0 @@ -2023,9 +2043,7 @@ invoke-static {v8, v0}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - const-class v19, Lcom/discord/widgets/share/WidgetIncomingShare; - - const/16 v20, 0x0 + const-class v20, Lcom/discord/widgets/share/WidgetIncomingShare; const/16 v21, 0x0 @@ -2033,9 +2051,11 @@ const/16 v23, 0x0 - new-instance v24, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3; + const/16 v24, 0x0 - move-object/from16 v0, v24 + new-instance v25, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3; + + move-object/from16 v0, v25 move-object/from16 v1, p0 @@ -2045,28 +2065,30 @@ move-object/from16 v4, p2 - move/from16 v5, v17 + move/from16 v5, v18 invoke-direct/range {v0 .. v6}, Lcom/discord/widgets/share/WidgetIncomingShare$onSendClicked$3;->(Lcom/discord/widgets/share/WidgetIncomingShare;Ljava/util/List;Landroid/content/Context;Lcom/discord/widgets/user/search/WidgetGlobalSearchModel$ItemDataPayload;ZZ)V - const/16 v25, 0x1e + const/16 v26, 0x1e - const/16 v26, 0x0 + const/16 v27, 0x0 - move-object/from16 v18, v8 + move-object/from16 v19, v8 - invoke-static/range {v18 .. v26}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->appSubscribe$default(Lrx/Observable;Ljava/lang/Class;Landroid/content/Context;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V + invoke-static/range {v19 .. v27}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->appSubscribe$default(Lrx/Observable;Ljava/lang/Class;Landroid/content/Context;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V return-void - :cond_f - const-string v1, "resultsAdapter" + :cond_11 + const-string v0, "resultsAdapter" - invoke-static {v1}, Lj0/n/c/h;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V + invoke-static {v0}, Lj0/n/c/h;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V + + const/4 v0, 0x0 throw v0 - :cond_10 + :cond_12 return-void .end method diff --git a/com.discord/smali_classes2/com/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel.smali b/com.discord/smali_classes2/com/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel.smali index 073d71e181..eab0b4f9dc 100644 --- a/com.discord/smali_classes2/com/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel.smali +++ b/com.discord/smali_classes2/com/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel.smali @@ -1320,7 +1320,7 @@ .end method .method private final hasVideoPermission()Z - .locals 6 + .locals 3 iget-object v0, p0, Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel;->mostRecentStoreState:Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel$StoreState; @@ -1333,44 +1333,32 @@ :cond_0 check-cast v0, Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel$StoreState$Valid; - const/4 v1, 0x0 - if-eqz v0, :cond_1 - invoke-virtual {v0}, Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel$StoreState$Valid;->getMyPermissions()Ljava/lang/Long; - - move-result-object v2 - - if-eqz v2, :cond_1 - - iget-object v2, p0, Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel;->videoPermissionsManager:Lcom/discord/utilities/permissions/VideoPermissionsManager; + iget-object v1, p0, Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel;->videoPermissionsManager:Lcom/discord/utilities/permissions/VideoPermissionsManager; invoke-virtual {v0}, Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel$StoreState$Valid;->getCallModel()Lcom/discord/widgets/voice/model/CallModel; - move-result-object v3 + move-result-object v2 - invoke-virtual {v3}, Lcom/discord/widgets/voice/model/CallModel;->getChannel()Lcom/discord/models/domain/ModelChannel; + invoke-virtual {v2}, Lcom/discord/widgets/voice/model/CallModel;->getChannel()Lcom/discord/models/domain/ModelChannel; - move-result-object v3 + move-result-object v2 invoke-virtual {v0}, Lcom/discord/widgets/voice/fullscreen/WidgetCallFullscreenViewModel$StoreState$Valid;->getMyPermissions()Ljava/lang/Long; move-result-object v0 - invoke-virtual {v0}, Ljava/lang/Long;->longValue()J - - move-result-wide v4 - - invoke-virtual {v2, v3, v4, v5}, Lcom/discord/utilities/permissions/VideoPermissionsManager;->hasVideoPermission(Lcom/discord/models/domain/ModelChannel;J)Z + invoke-virtual {v1, v2, v0}, Lcom/discord/utilities/permissions/VideoPermissionsManager;->hasVideoPermission(Lcom/discord/models/domain/ModelChannel;Ljava/lang/Long;)Z move-result v0 - if-eqz v0, :cond_1 - - const/4 v1, 0x1 + return v0 :cond_1 - return v1 + const/4 v0, 0x0 + + return v0 .end method .method private final observeStoreState()Lrx/Observable; diff --git a/com.discord/smali_classes2/com/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel.smali b/com.discord/smali_classes2/com/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel.smali index 2798130ae8..28f2472eb1 100644 --- a/com.discord/smali_classes2/com/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel.smali +++ b/com.discord/smali_classes2/com/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel.smali @@ -1042,7 +1042,7 @@ .end method .method private final hasVideoPermission()Z - .locals 6 + .locals 3 iget-object v0, p0, Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel;->mostRecentStoreState:Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel$StoreState; @@ -1055,44 +1055,32 @@ :cond_0 check-cast v0, Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel$StoreState$Valid; - const/4 v1, 0x0 - if-eqz v0, :cond_1 - invoke-virtual {v0}, Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel$StoreState$Valid;->getMyPermissions()Ljava/lang/Long; - - move-result-object v2 - - if-eqz v2, :cond_1 - - iget-object v2, p0, Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel;->videoPermissionsManager:Lcom/discord/utilities/permissions/VideoPermissionsManager; + iget-object v1, p0, Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel;->videoPermissionsManager:Lcom/discord/utilities/permissions/VideoPermissionsManager; invoke-virtual {v0}, Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel$StoreState$Valid;->getCallModel()Lcom/discord/widgets/voice/model/CallModel; - move-result-object v3 + move-result-object v2 - invoke-virtual {v3}, Lcom/discord/widgets/voice/model/CallModel;->getChannel()Lcom/discord/models/domain/ModelChannel; + invoke-virtual {v2}, Lcom/discord/widgets/voice/model/CallModel;->getChannel()Lcom/discord/models/domain/ModelChannel; - move-result-object v3 + move-result-object v2 invoke-virtual {v0}, Lcom/discord/widgets/voice/sheet/WidgetVoiceBottomSheetViewModel$StoreState$Valid;->getMyPermissions()Ljava/lang/Long; move-result-object v0 - invoke-virtual {v0}, Ljava/lang/Long;->longValue()J - - move-result-wide v4 - - invoke-virtual {v2, v3, v4, v5}, Lcom/discord/utilities/permissions/VideoPermissionsManager;->hasVideoPermission(Lcom/discord/models/domain/ModelChannel;J)Z + invoke-virtual {v1, v2, v0}, Lcom/discord/utilities/permissions/VideoPermissionsManager;->hasVideoPermission(Lcom/discord/models/domain/ModelChannel;Ljava/lang/Long;)Z move-result v0 - if-eqz v0, :cond_1 - - const/4 v1, 0x1 + return v0 :cond_1 - return v1 + const/4 v0, 0x0 + + return v0 .end method diff --git a/com.discord/smali_classes2/f/b/a/d/b.smali b/com.discord/smali_classes2/f/b/a/d/b.smali index 3b804ade7b..c96dc1f1df 100644 --- a/com.discord/smali_classes2/f/b/a/d/b.smali +++ b/com.discord/smali_classes2/f/b/a/d/b.smali @@ -183,19 +183,11 @@ goto :goto_0 :cond_0 - invoke-virtual {v2}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; - - move-result-object v2 - - const-string v3, "context.applicationContext" - - invoke-static {v2, v3}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V - invoke-virtual {v2}, Landroid/content/Context;->getFilesDir()Ljava/io/File; move-result-object v3 - const-string v2, "context.applicationContext.filesDir" + const-string v2, "context.filesDir" invoke-static {v3, v2}, Lj0/n/c/h;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V diff --git a/com.discord/smali_classes2/j0/i/l.smali b/com.discord/smali_classes2/j0/i/l.smali index 85c4db7f68..ac333b26b7 100644 --- a/com.discord/smali_classes2/j0/i/l.smali +++ b/com.discord/smali_classes2/j0/i/l.smali @@ -1340,6 +1340,111 @@ throw v0 .end method +.method public static final max(Ljava/lang/Iterable;)Ljava/lang/Float; + .locals 3 + .annotation system Ldalvik/annotation/Signature; + value = { + "(", + "Ljava/lang/Iterable<", + "Ljava/lang/Float;", + ">;)", + "Ljava/lang/Float;" + } + .end annotation + + const/4 v0, 0x0 + + if-eqz p0, :cond_4 + + invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; + + move-result-object p0 + + invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z + + move-result v1 + + if-nez v1, :cond_0 + + return-object v0 + + :cond_0 + invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; + + move-result-object v0 + + check-cast v0, Ljava/lang/Number; + + invoke-virtual {v0}, Ljava/lang/Number;->floatValue()F + + move-result v0 + + invoke-static {v0}, Ljava/lang/Float;->isNaN(F)Z + + move-result v1 + + if-eqz v1, :cond_1 + + invoke-static {v0}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float; + + move-result-object p0 + + return-object p0 + + :cond_1 + :goto_0 + invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z + + move-result v1 + + if-eqz v1, :cond_3 + + invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; + + move-result-object v1 + + check-cast v1, Ljava/lang/Number; + + invoke-virtual {v1}, Ljava/lang/Number;->floatValue()F + + move-result v1 + + invoke-static {v1}, Ljava/lang/Float;->isNaN(F)Z + + move-result v2 + + if-eqz v2, :cond_2 + + invoke-static {v1}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float; + + move-result-object p0 + + return-object p0 + + :cond_2 + cmpg-float v2, v0, v1 + + if-gez v2, :cond_1 + + move v0, v1 + + goto :goto_0 + + :cond_3 + invoke-static {v0}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float; + + move-result-object p0 + + return-object p0 + + :cond_4 + const-string p0, "$this$max" + + invoke-static {p0}, Lj0/n/c/h;->c(Ljava/lang/String;)V + + throw v0 +.end method + .method public static final minus(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/util/List; .locals 3 .annotation system Ldalvik/annotation/Signature; @@ -1933,6 +2038,8 @@ } .end annotation + if-eqz p0, :cond_1 + const/4 v0, 0x0 invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; @@ -1962,6 +2069,15 @@ :cond_0 return v0 + + :cond_1 + const-string p0, "$this$sum" + + invoke-static {p0}, Lj0/n/c/h;->c(Ljava/lang/String;)V + + const/4 p0, 0x0 + + throw p0 .end method .method public static final sumOfInt(Ljava/lang/Iterable;)I