diff --git a/com.discord/apktool.yml b/com.discord/apktool.yml index 40c16e483f..32a899031d 100644 --- a/com.discord/apktool.yml +++ b/com.discord/apktool.yml @@ -1,5 +1,5 @@ !!brut.androlib.meta.MetaInfo -apkFileName: com.discord-1135.apk +apkFileName: com.discord-1138.apk compressionType: false doNotCompress: - arsc @@ -190,5 +190,5 @@ usesFramework: tag: null version: 2.4.1-197d46-SNAPSHOT versionInfo: - versionCode: '1135' - versionName: '22.0' + versionCode: '1138' + versionName: '22.1' diff --git a/com.discord/assets/crashlytics-build.properties b/com.discord/assets/crashlytics-build.properties index f5589eb27a..ffa2deafda 100644 --- a/com.discord/assets/crashlytics-build.properties +++ b/com.discord/assets/crashlytics-build.properties @@ -3,9 +3,9 @@ # #Do NOT modify, delete, or commit to source control! # -#Mon May 11 19:09:10 UTC 2020 -version_name=22.0 +#Thu May 14 01:04:11 UTC 2020 +version_name=22.1 package_name=com.discord -build_id=f692b65e-9728-4f2f-94ff-9980244a5a85 -version_code=1135 +build_id=10d6473a-95c1-4688-8ad9-7358c258678d +version_code=1138 app_name=com.discord diff --git a/com.discord/original/AndroidManifest.xml b/com.discord/original/AndroidManifest.xml index 4a8a68e060..d3f93fbe3e 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 0e4f9ac76b..d9ca7e0230 100644 --- a/com.discord/res/values/strings.xml +++ b/com.discord/res/values/strings.xml @@ -1057,7 +1057,7 @@ Last month, in response to COVID-19, we upped the Go Live viewer limit from 10 t OR Collapse Collapse Category - f692b65e-9728-4f2f-94ff-9980244a5a85 + 10d6473a-95c1-4688-8ad9-7358c258678d Coming Soon Search Animated GIFs on the Web Displays text with emphasis. diff --git a/com.discord/smali/com/discord/BuildConfig.smali b/com.discord/smali/com/discord/BuildConfig.smali index 29a313f6b8..b245e4c173 100644 --- a/com.discord/smali/com/discord/BuildConfig.smali +++ b/com.discord/smali/com/discord/BuildConfig.smali @@ -40,11 +40,11 @@ .field public static final SAMSUNGxDISCORD_CLIENT_ID:Ljava/lang/String; = "97t47j218f" -.field public static final USER_AGENT:Ljava/lang/String; = "Discord-Android/1135" +.field public static final USER_AGENT:Ljava/lang/String; = "Discord-Android/1138" -.field public static final VERSION_CODE:I = 0x46f +.field public static final VERSION_CODE:I = 0x472 -.field public static final VERSION_NAME:Ljava/lang/String; = "22.0" +.field public static final VERSION_NAME:Ljava/lang/String; = "22.1" # direct methods diff --git a/com.discord/smali/com/discord/stores/StoreClientVersion.smali b/com.discord/smali/com/discord/stores/StoreClientVersion.smali index ce68fcaf7f..c2ddca4810 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, 0x46f + const/16 v0, 0x472 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 355e7d21aa..13e43d5775 100644 --- a/com.discord/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali +++ b/com.discord/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali @@ -181,7 +181,7 @@ const-string v3, "browser_user_agent" - const-string v4, "Discord-Android/1135" + const-string v4, "Discord-Android/1138" invoke-direct {v2, v3, v4}, Lkotlin/Pair;->(Ljava/lang/Object;Ljava/lang/Object;)V @@ -189,7 +189,7 @@ const/4 v1, 0x2 - const/16 v2, 0x46f + const/16 v2, 0x472 invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; @@ -205,7 +205,7 @@ const/4 v1, 0x3 - const-string v2, "22.0" + const-string v2, "22.1" const-string v3, "" 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 b9bd4e28e0..c6de7b8fbe 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/1135" + const-string v0, "Discord-Android/1138" return-object v0 .end method diff --git a/com.discord/smali/com/discord/widgets/chat/list/InlineMediaView.smali b/com.discord/smali/com/discord/widgets/chat/list/InlineMediaView.smali index 9029e4ba0d..4782d74185 100644 --- a/com.discord/smali/com/discord/widgets/chat/list/InlineMediaView.smali +++ b/com.discord/smali/com/discord/widgets/chat/list/InlineMediaView.smali @@ -575,6 +575,22 @@ return-void .end method +.method private final clearPlayerAndSubscriptions()V + .locals 2 + + invoke-direct {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->releasePlayer()V + + invoke-virtual {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->getPaused()Lrx/subjects/Subject; + + move-result-object v0 + + const/4 v1, 0x0 + + invoke-interface {v0, v1}, Lg0/g;->onNext(Ljava/lang/Object;)V + + return-void +.end method + .method private final getImagePreview()Lcom/facebook/drawee/view/SimpleDraweeView; .locals 3 @@ -1078,37 +1094,35 @@ move-result-object v4 :goto_1 - move-object v5, v4 - - iput-object v5, v0, Lcom/discord/widgets/chat/list/InlineMediaView;->appMediaPlayer:Lcom/discord/player/AppMediaPlayer; + iput-object v4, v0, Lcom/discord/widgets/chat/list/InlineMediaView;->appMediaPlayer:Lcom/discord/player/AppMediaPlayer; invoke-direct/range {p0 .. p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->getPlayerView()Lcom/google/android/exoplayer2/ui/PlayerView; - move-result-object v4 + move-result-object v5 const/4 v6, 0x0 - invoke-virtual {v4, v6}, Lcom/google/android/exoplayer2/ui/PlayerView;->setVisibility(I)V + invoke-virtual {v5, v6}, Lcom/google/android/exoplayer2/ui/PlayerView;->setVisibility(I)V - move-object/from16 v4, p4 + move-object/from16 v5, p4 - invoke-static {v1, v2, v4}, Ls/a/b/b/a;->a(Lcom/discord/models/domain/ModelMessageEmbed;Ljava/lang/String;Ljava/lang/String;)Lcom/discord/player/MediaSource; + invoke-static {v1, v2, v5}, Ls/a/b/b/a;->a(Lcom/discord/models/domain/ModelMessageEmbed;Ljava/lang/String;Ljava/lang/String;)Lcom/discord/player/MediaSource; move-result-object v2 - new-instance v4, Lrx/subscriptions/CompositeSubscription; + new-instance v5, Lrx/subscriptions/CompositeSubscription; - invoke-direct {v4}, Lrx/subscriptions/CompositeSubscription;->()V + invoke-direct {v5}, Lrx/subscriptions/CompositeSubscription;->()V - iput-object v4, v0, Lcom/discord/widgets/chat/list/InlineMediaView;->compositeSubscription:Lrx/subscriptions/CompositeSubscription; + iput-object v5, v0, Lcom/discord/widgets/chat/list/InlineMediaView;->compositeSubscription:Lrx/subscriptions/CompositeSubscription; - invoke-virtual {v5}, Lcom/discord/player/AppMediaPlayer;->c()Lrx/Observable; + invoke-virtual {v4}, Lcom/discord/player/AppMediaPlayer;->c()Lrx/Observable; - move-result-object v4 + move-result-object v5 const/4 v6, 0x2 - invoke-static {v4, v0, v3, v6, v3}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui$default(Lrx/Observable;Lcom/discord/app/AppComponent;Lcom/discord/utilities/mg_recycler/MGRecyclerAdapterSimple;ILjava/lang/Object;)Lrx/Observable; + invoke-static {v5, v0, v3, v6, v3}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui$default(Lrx/Observable;Lcom/discord/app/AppComponent;Lcom/discord/utilities/mg_recycler/MGRecyclerAdapterSimple;ILjava/lang/Object;)Lrx/Observable; move-result-object v7 @@ -1126,7 +1140,7 @@ new-instance v13, Lcom/discord/widgets/chat/list/InlineMediaView$updateUIWithValidatedEmbed$2; - invoke-direct {v13, v0, v5}, Lcom/discord/widgets/chat/list/InlineMediaView$updateUIWithValidatedEmbed$2;->(Lcom/discord/widgets/chat/list/InlineMediaView;Lcom/discord/player/AppMediaPlayer;)V + invoke-direct {v13, v0, v4}, Lcom/discord/widgets/chat/list/InlineMediaView$updateUIWithValidatedEmbed$2;->(Lcom/discord/widgets/chat/list/InlineMediaView;Lcom/discord/player/AppMediaPlayer;)V const/16 v14, 0x1a @@ -1134,11 +1148,11 @@ 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 - invoke-virtual {v5}, Lcom/discord/player/AppMediaPlayer;->b()Lrx/Observable; + invoke-virtual {v4}, Lcom/discord/player/AppMediaPlayer;->b()Lrx/Observable; - move-result-object v4 + move-result-object v5 - invoke-static {v4, v0, v3, v6, v3}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui$default(Lrx/Observable;Lcom/discord/app/AppComponent;Lcom/discord/utilities/mg_recycler/MGRecyclerAdapterSimple;ILjava/lang/Object;)Lrx/Observable; + invoke-static {v5, v0, v3, v6, v3}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->ui$default(Lrx/Observable;Lcom/discord/app/AppComponent;Lcom/discord/utilities/mg_recycler/MGRecyclerAdapterSimple;ILjava/lang/Object;)Lrx/Observable; move-result-object v7 @@ -1174,11 +1188,24 @@ const/16 v13, 0x28 + move-object v5, v4 + move-object v6, v2 invoke-static/range {v5 .. v13}, Lcom/discord/player/AppMediaPlayer;->a(Lcom/discord/player/AppMediaPlayer;Lcom/discord/player/MediaSource;ZZJLcom/google/android/exoplayer2/ui/PlayerView;Lcom/google/android/exoplayer2/ui/PlayerControlView;I)V + const/4 v1, 0x0 + + invoke-virtual {v4, v1}, Lcom/discord/player/AppMediaPlayer;->a(F)V + + goto :goto_2 + :cond_6 + const/high16 v1, 0x3f800000 # 1.0f + + invoke-virtual {v4, v1}, Lcom/discord/player/AppMediaPlayer;->a(F)V + + :goto_2 invoke-direct/range {p0 .. p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->getPlayButton()Landroid/widget/ImageView; move-result-object v1 @@ -1237,17 +1264,9 @@ .end method .method public final onPause()V - .locals 2 + .locals 0 - invoke-direct {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->releasePlayer()V - - invoke-virtual {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->getPaused()Lrx/subjects/Subject; - - move-result-object v0 - - const/4 v1, 0x0 - - invoke-interface {v0, v1}, Lg0/g;->onNext(Ljava/lang/Object;)V + invoke-direct {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->clearPlayerAndSubscriptions()V return-void .end method @@ -1280,19 +1299,11 @@ .end method .method public onViewDetachedFromWindow(Landroid/view/View;)V - .locals 1 - - const/4 v0, 0x0 + .locals 0 if-eqz p1, :cond_0 - invoke-direct {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->releasePlayer()V - - invoke-virtual {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->getPaused()Lrx/subjects/Subject; - - move-result-object p1 - - invoke-interface {p1, v0}, Lg0/g;->onNext(Ljava/lang/Object;)V + invoke-direct {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->clearPlayerAndSubscriptions()V return-void @@ -1301,7 +1312,38 @@ invoke-static {p1}, Ly/v/b/j;->a(Ljava/lang/String;)V - throw v0 + const/4 p1, 0x0 + + throw p1 +.end method + +.method public onVisibilityChanged(Landroid/view/View;I)V + .locals 0 + + if-eqz p1, :cond_1 + + invoke-super {p0, p1, p2}, Landroid/widget/FrameLayout;->onVisibilityChanged(Landroid/view/View;I)V + + if-nez p2, :cond_0 + + invoke-direct {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->resetCurrentEmbed()V + + goto :goto_0 + + :cond_0 + invoke-direct {p0}, Lcom/discord/widgets/chat/list/InlineMediaView;->clearPlayerAndSubscriptions()V + + :goto_0 + return-void + + :cond_1 + const-string p1, "changedView" + + invoke-static {p1}, Ly/v/b/j;->a(Ljava/lang/String;)V + + const/4 p1, 0x0 + + throw p1 .end method .method public final updateUIWithAttachment(Lcom/discord/models/domain/ModelMessageAttachment;Ljava/lang/Integer;Ljava/lang/Integer;)V diff --git a/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali b/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali index 5ae481054d..625b66fc3f 100644 --- a/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali +++ b/com.discord/smali/com/discord/widgets/debugging/WidgetFatalCrash.smali @@ -492,7 +492,7 @@ new-array v1, v2, [Ljava/lang/Object; - const-string v3, "22.0" + const-string v3, "22.1" aput-object v3, v1, v4 diff --git a/com.discord/smali/com/discord/widgets/media/WidgetMedia.smali b/com.discord/smali/com/discord/widgets/media/WidgetMedia.smali index 55d401859c..443ec25192 100644 --- a/com.discord/smali/com/discord/widgets/media/WidgetMedia.smali +++ b/com.discord/smali/com/discord/widgets/media/WidgetMedia.smali @@ -1416,7 +1416,7 @@ const/4 v8, 0x0 - if-eqz v0, :cond_f + if-eqz v0, :cond_12 invoke-virtual {v0}, Lcom/discord/widgets/media/WidgetMediaViewModel;->getShowCoverFrame()Z @@ -1543,7 +1543,7 @@ :cond_4 iget-object v0, v6, Lcom/discord/widgets/media/WidgetMedia;->imageUri:Landroid/net/Uri; - if-eqz v0, :cond_e + if-eqz v0, :cond_11 :goto_2 move-object v11, v0 @@ -1654,41 +1654,36 @@ iget-object v0, v6, Lcom/discord/widgets/media/WidgetMedia;->mediaSource:Lcom/discord/player/MediaSource; - if-eqz v0, :cond_d + if-eqz v0, :cond_10 + invoke-virtual {v0}, Lcom/discord/player/MediaSource;->q()Lcom/discord/player/MediaType; + + move-result-object v1 + + sget-object v2, Lcom/discord/player/MediaType;->GIFV:Lcom/discord/player/MediaType; + + if-ne v1, v2, :cond_8 + + const/4 v9, 0x1 + + :cond_8 iget-object v1, v6, Lcom/discord/widgets/media/WidgetMedia;->appMediaPlayer:Lcom/discord/player/AppMediaPlayer; const-string v2, "appMediaPlayer" - if-eqz v1, :cond_c + if-eqz v1, :cond_f iget-object v3, v6, Lcom/discord/widgets/media/WidgetMedia;->viewModel:Lcom/discord/widgets/media/WidgetMediaViewModel; - if-eqz v3, :cond_b + if-eqz v3, :cond_e invoke-virtual {v3}, Lcom/discord/widgets/media/WidgetMediaViewModel;->isPlaying()Z move-result v19 - invoke-virtual {v0}, Lcom/discord/player/MediaSource;->q()Lcom/discord/player/MediaType; - - move-result-object v3 - - sget-object v4, Lcom/discord/player/MediaType;->GIFV:Lcom/discord/player/MediaType; - - if-ne v3, v4, :cond_8 - - const/16 v20, 0x1 - - goto :goto_6 - - :cond_8 - const/16 v20, 0x0 - - :goto_6 iget-object v3, v6, Lcom/discord/widgets/media/WidgetMedia;->viewModel:Lcom/discord/widgets/media/WidgetMediaViewModel; - if-eqz v3, :cond_a + if-eqz v3, :cond_d invoke-virtual {v3}, Lcom/discord/widgets/media/WidgetMediaViewModel;->getCurrentPlayerPositionMs()J @@ -1706,12 +1701,41 @@ move-object/from16 v18, v0 + move/from16 v20, v9 + invoke-virtual/range {v17 .. v24}, Lcom/discord/player/AppMediaPlayer;->a(Lcom/discord/player/MediaSource;ZZJLcom/google/android/exoplayer2/ui/PlayerView;Lcom/google/android/exoplayer2/ui/PlayerControlView;)V + if-eqz v9, :cond_a + iget-object v0, v6, Lcom/discord/widgets/media/WidgetMedia;->appMediaPlayer:Lcom/discord/player/AppMediaPlayer; if-eqz v0, :cond_9 + const/4 v1, 0x0 + + invoke-virtual {v0, v1}, Lcom/discord/player/AppMediaPlayer;->a(F)V + + goto :goto_6 + + :cond_9 + invoke-static {v2}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V + + throw v8 + + :cond_a + iget-object v0, v6, Lcom/discord/widgets/media/WidgetMedia;->appMediaPlayer:Lcom/discord/player/AppMediaPlayer; + + if-eqz v0, :cond_c + + const/high16 v1, 0x3f800000 # 1.0f + + invoke-virtual {v0, v1}, Lcom/discord/player/AppMediaPlayer;->a(F)V + + :goto_6 + iget-object v0, v6, Lcom/discord/widgets/media/WidgetMedia;->appMediaPlayer:Lcom/discord/player/AppMediaPlayer; + + if-eqz v0, :cond_b + invoke-virtual {v0}, Lcom/discord/player/AppMediaPlayer;->b()Lrx/Observable; move-result-object v0 @@ -1742,18 +1766,8 @@ goto :goto_7 - :cond_9 - invoke-static {v2}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V - - throw v8 - - :cond_a - invoke-static {v7}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V - - throw v8 - :cond_b - invoke-static {v7}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V + invoke-static {v2}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V throw v8 @@ -1763,17 +1777,32 @@ throw v8 :cond_d + invoke-static {v7}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V + + throw v8 + + :cond_e + invoke-static {v7}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V + + throw v8 + + :cond_f + invoke-static {v2}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V + + throw v8 + + :cond_10 :goto_7 return-void - :cond_e + :cond_11 const-string v0, "imageUri" invoke-static {v0}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V throw v8 - :cond_f + :cond_12 invoke-static {v7}, Ly/v/b/j;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V throw v8 diff --git a/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali b/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali index 62d30b8a6c..88516e56b8 100644 --- a/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali +++ b/com.discord/smali/com/discord/widgets/settings/WidgetSettings.smali @@ -1989,7 +1989,7 @@ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; - const-string v0, " - 22.0 (1135)" + const-string v0, " - 22.1 (1138)" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; diff --git a/com.discord/smali/f/a/b/h.smali b/com.discord/smali/f/a/b/h.smali index 641af437c7..f81452e73d 100644 --- a/com.discord/smali/f/a/b/h.smali +++ b/com.discord/smali/f/a/b/h.smali @@ -613,7 +613,7 @@ sput-object v0, Lf/a/b/h;->c:Ljava/util/List; - new-array v0, v5, [Ly/z/b; + new-array v0, v6, [Ly/z/b; const-class v1, Lcom/discord/widgets/settings/billing/WidgetSettingsBilling; @@ -631,6 +631,14 @@ aput-object v1, v0, v4 + const-class v1, Lcom/discord/widgets/media/WidgetMedia; + + invoke-static {v1}, Ly/v/b/x;->getOrCreateKotlinClass(Ljava/lang/Class;)Ly/z/b; + + move-result-object v1 + + aput-object v1, v0, v5 + invoke-static {v0}, Lf/o/a/j/a;->listOf([Ljava/lang/Object;)Ljava/util/List; move-result-object v0