From 25ea411c07899e2ae024a0e3616c0028cff3f77d Mon Sep 17 00:00:00 2001 From: Juby210 Date: Thu, 28 Oct 2021 08:20:59 +0200 Subject: [PATCH] 100.6 - Alpha (100206) --- app/build.gradle | 4 +- app/src/main/AndroidManifest.xml | 8 +- app/src/main/java/c/a/a/i.java | 5 +- app/src/main/java/c/a/d/l0/a.java | 6 +- app/src/main/java/c/a/q/o0/a.java | 2 +- app/src/main/java/c/a/q/o0/e.java | 64 +- .../discord/media_engine/InboundRtpVideo.java | 100 +- .../media_engine/internal/InboundVideo.java | 99 +- .../media_engine/internal/TransformStats.java | 8 +- .../TrackNotifyStreamSettingUpdate.java | 48 + ...rackNotifyStreamSettingUpdateReceiver.java | 6 + .../discord/app/DiscordConnectService.java | 2 +- .../models/domain/ModelUserSettings.java | 63 +- .../com/discord/restapi/RestAPIParams.java | 50 +- .../com/discord/stores/StoreContactSync.java | 17 +- .../StoreDynamicLink$storeLinkIfExists$1.java | 6 +- .../discord/stores/StoreStageChannels.java | 130 +- .../java/com/discord/stores/StoreStream.java | 2 +- .../com/discord/stores/StoreUserSettings.java | 16 + .../intent/IntentUtils$pathRouterMap$10.java | 4 +- .../intent/IntentUtils$pathRouterMap$11.java | 4 +- .../intent/IntentUtils$pathRouterMap$12.java | 4 +- .../intent/IntentUtils$pathRouterMap$13.java | 4 +- .../intent/IntentUtils$pathRouterMap$14.java | 21 + .../intent/IntentUtils$pathRouterMap$2.java | 4 +- .../intent/IntentUtils$pathRouterMap$3.java | 4 +- .../intent/IntentUtils$pathRouterMap$4.java | 4 +- .../intent/IntentUtils$pathRouterMap$5.java | 4 +- .../intent/IntentUtils$pathRouterMap$7.java | 4 +- .../intent/IntentUtils$pathRouterMap$8.java | 4 +- .../intent/IntentUtils$pathRouterMap$9.java | 4 +- .../discord/utilities/intent/IntentUtils.java | 14 +- .../utilities/intent/RouteHandlers.java | 32 + .../discord/utilities/platform/Platform.java | 93 +- .../discord/utilities/sms/SmsListener.java | 18 +- .../widgets/auth/WidgetAuthPhoneVerify.java | 18 +- ...ottomSheet$hideAnnouncementChannels$2.java | 22 + ...tChannelPickerBottomSheet$viewModel$2.java | 2 +- .../WidgetChannelPickerBottomSheet.java | 17 +- ...ewModel$Companion$observeStoreState$1.java | 11 +- ...dgetChannelPickerBottomSheetViewModel.java | 20 +- ...nnel$disableAnnouncementChannelType$2.java | 22 + .../widgets/channels/WidgetCreateChannel.java | 21 +- ...p$onViewBound$$inlined$apply$lambda$1.java | 2 + .../WidgetGuildRoleSubscriptionPlanSetup.java | 4 +- ...leSubscriptionTierListItemGeneratorKt.java | 2 +- ...oleSubscriptionTierViewModel$submit$2.java | 4 +- ...ateGuildRoleSubscriptionTierViewModel.java | 50 +- ...WidgetCreateGuildRoleSubscriptionTier.java | 2 +- ...idgetGuildRoleSubscriptionTierDetails.java | 15 +- ...SubscriptionTierBenefit$configureUI$1.java | 2 +- ...enefit$configureUIForChannelBenefit$2.java | 2 +- ...ue$guildScheduledEventDetailsNotice$1.java | 8 +- ...GuildScheduledEventDetailsBottomSheet.java | 9 +- .../widgets/media/WidgetQRScanner.java | 4 +- .../discord/widgets/roles/RoleIconView.java | 30 +- ...ettingsGuildRoleSubscriptionViewModel.java | 60 +- ...yGuildRoleSubscriptions$onViewBound$1.java | 1 + ...riptionEditTierViewModel$deleteTier$2.java | 4 +- ...iptionEditTierViewModel$publishTier$2.java | 4 +- ...tionEditTierViewModel$submitChanges$3.java | 4 +- ...uildRoleSubscriptionEditTierViewModel.java | 324 +- ...SettingsGuildRoleSubscriptionEditTier.java | 13 +- .../widgets/settings/WidgetSettings.java | 2 +- .../WidgetSettingsUserConnections.java | 7 +- ...sAdd$Adapter$ViewHolder$onConfigure$1.java | 2 +- .../WidgetSettingsUserConnectionsAdd.java | 11 +- .../status/WidgetGlobalStatusIndicator.java | 19 +- .../WidgetUserPhoneVerify$autofillCode$2.java | 29 + .../user/phone/WidgetUserPhoneVerify.java | 19 +- .../ViewHolderPlatformRichPresence.java | 5 +- ...nectionsView$ViewHolder$onConfigure$1.java | 6 +- .../profile/UserProfileConnectionsView.java | 13 +- ...ionsSection$onConnectedAccountClick$1.java | 2 +- ...ole_subscription_price_tier_text_color.xml | 5 + .../drawable-anydpi-v24/ic_account_bnet.xml | 4 - .../ic_account_facebook.xml | 5 - .../drawable-anydpi-v24/ic_account_github.xml | 5 - .../ic_account_github_light_24dp.xml | 4 + .../ic_account_github_white_24dp.xml | 4 + .../drawable-anydpi-v24/ic_account_lol.xml | 4 - .../drawable-anydpi-v24/ic_account_obs.xml | 5 - .../ic_account_patreon.xml | 5 - .../drawable-anydpi-v24/ic_account_reddit.xml | 5 - .../drawable-anydpi-v24/ic_account_skype.xml | 5 - .../ic_account_spotify.xml | 4 - .../drawable-anydpi-v24/ic_account_steam.xml | 5 - .../drawable-anydpi-v24/ic_account_twitch.xml | 5 - .../ic_account_twitter.xml | 4 - .../drawable-anydpi-v24/ic_account_xbox.xml | 7 - .../drawable-anydpi-v24/ic_account_xsplit.xml | 4 - ...ic_account_youtube_light_and_dark_24dp.xml | 5 + .../ic_facebook_white_24dp.xml | 4 - .../drawable-anydpi-v24/ic_github_white.xml | 4 - .../ic_network_connecting.xml | 9 + .../ic_network_connecting_light.xml | 9 + .../ic_reddit_white_24dp.xml | 4 - .../ic_twitch_white_24dp.xml | 5 - .../ic_twitter_white_24dp.xml | 4 - .../res/drawable-hdpi/ic_account_bnet.png | Bin 941 -> 0 bytes .../res/drawable-hdpi/ic_account_facebook.png | Bin 393 -> 0 bytes .../res/drawable-hdpi/ic_account_github.png | Bin 816 -> 0 bytes .../ic_account_github_light_24dp.png | Bin 0 -> 531 bytes .../ic_account_github_white_24dp.png | Bin 0 -> 544 bytes .../main/res/drawable-hdpi/ic_account_lol.png | Bin 542 -> 0 bytes .../main/res/drawable-hdpi/ic_account_obs.png | Bin 854 -> 0 bytes .../res/drawable-hdpi/ic_account_patreon.png | Bin 439 -> 0 bytes .../res/drawable-hdpi/ic_account_reddit.png | Bin 839 -> 0 bytes .../res/drawable-hdpi/ic_account_skype.png | Bin 825 -> 0 bytes .../res/drawable-hdpi/ic_account_spotify.png | Bin 757 -> 0 bytes .../res/drawable-hdpi/ic_account_steam.png | Bin 744 -> 0 bytes .../res/drawable-hdpi/ic_account_twitch.png | Bin 363 -> 0 bytes .../res/drawable-hdpi/ic_account_twitter.png | Bin 543 -> 0 bytes .../res/drawable-hdpi/ic_account_xbox.png | Bin 965 -> 0 bytes .../res/drawable-hdpi/ic_account_xsplit.png | Bin 384 -> 0 bytes ...ic_account_youtube_light_and_dark_24dp.png | Bin 0 -> 463 bytes .../drawable-hdpi/ic_facebook_white_24dp.png | Bin 295 -> 0 bytes .../res/drawable-hdpi/ic_github_white.png | Bin 478 -> 0 bytes .../drawable-hdpi/ic_network_connecting.png | Bin 0 -> 280 bytes .../ic_network_connecting_light.png | Bin 0 -> 288 bytes .../drawable-hdpi/ic_reddit_white_24dp.png | Bin 584 -> 0 bytes .../drawable-hdpi/ic_twitch_white_24dp.png | Bin 322 -> 0 bytes .../drawable-hdpi/ic_twitter_white_24dp.png | Bin 486 -> 0 bytes .../res/drawable-ldpi/ic_account_bnet.png | Bin 447 -> 0 bytes .../res/drawable-ldpi/ic_account_facebook.png | Bin 274 -> 0 bytes .../res/drawable-ldpi/ic_account_github.png | Bin 423 -> 0 bytes .../ic_account_github_light_24dp.png | Bin 0 -> 302 bytes .../ic_account_github_white_24dp.png | Bin 0 -> 310 bytes .../main/res/drawable-ldpi/ic_account_lol.png | Bin 323 -> 0 bytes .../main/res/drawable-ldpi/ic_account_obs.png | Bin 421 -> 0 bytes .../res/drawable-ldpi/ic_account_patreon.png | Bin 275 -> 0 bytes .../res/drawable-ldpi/ic_account_reddit.png | Bin 426 -> 0 bytes .../res/drawable-ldpi/ic_account_skype.png | Bin 448 -> 0 bytes .../res/drawable-ldpi/ic_account_spotify.png | Bin 426 -> 0 bytes .../res/drawable-ldpi/ic_account_steam.png | Bin 355 -> 0 bytes .../res/drawable-ldpi/ic_account_twitch.png | Bin 292 -> 0 bytes .../res/drawable-ldpi/ic_account_twitter.png | Bin 309 -> 0 bytes .../res/drawable-ldpi/ic_account_xbox.png | Bin 561 -> 0 bytes .../res/drawable-ldpi/ic_account_xsplit.png | Bin 228 -> 0 bytes ...ic_account_youtube_light_and_dark_24dp.png | Bin 0 -> 273 bytes .../drawable-ldpi/ic_facebook_white_24dp.png | Bin 191 -> 0 bytes .../res/drawable-ldpi/ic_github_white.png | Bin 268 -> 0 bytes .../drawable-ldpi/ic_network_connecting.png | Bin 0 -> 180 bytes .../ic_network_connecting_light.png | Bin 0 -> 179 bytes .../drawable-ldpi/ic_reddit_white_24dp.png | Bin 303 -> 0 bytes .../drawable-ldpi/ic_twitch_white_24dp.png | Bin 223 -> 0 bytes .../drawable-ldpi/ic_twitter_white_24dp.png | Bin 278 -> 0 bytes .../res/drawable-mdpi/ic_account_bnet.png | Bin 600 -> 0 bytes .../res/drawable-mdpi/ic_account_facebook.png | Bin 326 -> 0 bytes .../res/drawable-mdpi/ic_account_github.png | Bin 578 -> 0 bytes .../ic_account_github_light_24dp.png | Bin 0 -> 380 bytes .../ic_account_github_white_24dp.png | Bin 0 -> 383 bytes .../main/res/drawable-mdpi/ic_account_lol.png | Bin 413 -> 0 bytes .../main/res/drawable-mdpi/ic_account_obs.png | Bin 598 -> 0 bytes .../res/drawable-mdpi/ic_account_patreon.png | Bin 327 -> 0 bytes .../res/drawable-mdpi/ic_account_reddit.png | Bin 600 -> 0 bytes .../res/drawable-mdpi/ic_account_skype.png | Bin 580 -> 0 bytes .../res/drawable-mdpi/ic_account_spotify.png | Bin 541 -> 0 bytes .../res/drawable-mdpi/ic_account_steam.png | Bin 497 -> 0 bytes .../res/drawable-mdpi/ic_account_twitch.png | Bin 338 -> 0 bytes .../res/drawable-mdpi/ic_account_twitter.png | Bin 374 -> 0 bytes .../res/drawable-mdpi/ic_account_xbox.png | Bin 701 -> 0 bytes .../res/drawable-mdpi/ic_account_xsplit.png | Bin 287 -> 0 bytes ...ic_account_youtube_light_and_dark_24dp.png | Bin 0 -> 309 bytes .../drawable-mdpi/ic_facebook_white_24dp.png | Bin 220 -> 0 bytes .../res/drawable-mdpi/ic_github_white.png | Bin 353 -> 0 bytes .../drawable-mdpi/ic_network_connecting.png | Bin 0 -> 205 bytes .../ic_network_connecting_light.png | Bin 0 -> 208 bytes .../drawable-mdpi/ic_reddit_white_24dp.png | Bin 405 -> 0 bytes .../drawable-mdpi/ic_twitch_white_24dp.png | Bin 259 -> 0 bytes .../drawable-mdpi/ic_twitter_white_24dp.png | Bin 342 -> 0 bytes .../res/drawable-xhdpi/ic_account_bnet.png | Bin 1238 -> 0 bytes .../drawable-xhdpi/ic_account_facebook.png | Bin 462 -> 0 bytes .../res/drawable-xhdpi/ic_account_github.png | Bin 1080 -> 0 bytes .../ic_account_github_light_24dp.png | Bin 0 -> 680 bytes .../ic_account_github_white_24dp.png | Bin 0 -> 686 bytes .../res/drawable-xhdpi/ic_account_lol.png | Bin 678 -> 0 bytes .../res/drawable-xhdpi/ic_account_obs.png | Bin 1145 -> 0 bytes .../res/drawable-xhdpi/ic_account_patreon.png | Bin 559 -> 0 bytes .../res/drawable-xhdpi/ic_account_reddit.png | Bin 1083 -> 0 bytes .../res/drawable-xhdpi/ic_account_skype.png | Bin 1046 -> 0 bytes .../res/drawable-xhdpi/ic_account_spotify.png | Bin 957 -> 0 bytes .../res/drawable-xhdpi/ic_account_steam.png | Bin 975 -> 0 bytes .../res/drawable-xhdpi/ic_account_twitch.png | Bin 435 -> 0 bytes .../res/drawable-xhdpi/ic_account_twitter.png | Bin 699 -> 0 bytes .../res/drawable-xhdpi/ic_account_xbox.png | Bin 1239 -> 0 bytes .../res/drawable-xhdpi/ic_account_xsplit.png | Bin 450 -> 0 bytes ...ic_account_youtube_light_and_dark_24dp.png | Bin 0 -> 592 bytes .../drawable-xhdpi/ic_facebook_white_24dp.png | Bin 331 -> 0 bytes .../res/drawable-xhdpi/ic_github_white.png | Bin 661 -> 0 bytes .../drawable-xhdpi/ic_network_connecting.png | Bin 0 -> 323 bytes .../ic_network_connecting_light.png | Bin 0 -> 327 bytes .../drawable-xhdpi/ic_reddit_white_24dp.png | Bin 777 -> 0 bytes .../drawable-xhdpi/ic_twitch_white_24dp.png | Bin 416 -> 0 bytes .../drawable-xhdpi/ic_twitter_white_24dp.png | Bin 656 -> 0 bytes .../res/drawable-xxhdpi/ic_account_bnet.png | Bin 1496 -> 0 bytes .../drawable-xxhdpi/ic_account_facebook.png | Bin 569 -> 0 bytes .../res/drawable-xxhdpi/ic_account_github.png | Bin 1404 -> 0 bytes .../ic_account_github_light_24dp.png | Bin 0 -> 995 bytes .../ic_account_github_white_24dp.png | Bin 0 -> 1027 bytes .../res/drawable-xxhdpi/ic_account_lol.png | Bin 826 -> 0 bytes .../res/drawable-xxhdpi/ic_account_obs.png | Bin 1491 -> 0 bytes .../drawable-xxhdpi/ic_account_patreon.png | Bin 622 -> 0 bytes .../res/drawable-xxhdpi/ic_account_reddit.png | Bin 1548 -> 0 bytes .../res/drawable-xxhdpi/ic_account_skype.png | Bin 1359 -> 0 bytes .../drawable-xxhdpi/ic_account_spotify.png | Bin 1061 -> 0 bytes .../res/drawable-xxhdpi/ic_account_steam.png | Bin 1455 -> 0 bytes .../res/drawable-xxhdpi/ic_account_twitch.png | Bin 489 -> 0 bytes .../drawable-xxhdpi/ic_account_twitter.png | Bin 852 -> 0 bytes .../res/drawable-xxhdpi/ic_account_xbox.png | Bin 1806 -> 0 bytes .../res/drawable-xxhdpi/ic_account_xsplit.png | Bin 612 -> 0 bytes ...ic_account_youtube_light_and_dark_24dp.png | Bin 0 -> 824 bytes .../ic_facebook_white_24dp.png | Bin 460 -> 0 bytes .../res/drawable-xxhdpi/ic_github_white.png | Bin 930 -> 0 bytes .../drawable-xxhdpi/ic_network_connecting.png | Bin 0 -> 416 bytes .../ic_network_connecting_light.png | Bin 0 -> 414 bytes .../drawable-xxhdpi/ic_reddit_white_24dp.png | Bin 1168 -> 0 bytes .../drawable-xxhdpi/ic_twitch_white_24dp.png | Bin 555 -> 0 bytes .../drawable-xxhdpi/ic_twitter_white_24dp.png | Bin 944 -> 0 bytes .../res/drawable-xxxhdpi/ic_account_bnet.png | Bin 1976 -> 0 bytes .../drawable-xxxhdpi/ic_account_facebook.png | Bin 654 -> 0 bytes .../drawable-xxxhdpi/ic_account_github.png | Bin 1759 -> 0 bytes .../ic_account_github_light_24dp.png | Bin 0 -> 1286 bytes .../ic_account_github_white_24dp.png | Bin 0 -> 1336 bytes .../res/drawable-xxxhdpi/ic_account_lol.png | Bin 1021 -> 0 bytes .../res/drawable-xxxhdpi/ic_account_obs.png | Bin 1951 -> 0 bytes .../drawable-xxxhdpi/ic_account_patreon.png | Bin 811 -> 0 bytes .../drawable-xxxhdpi/ic_account_reddit.png | Bin 1953 -> 0 bytes .../res/drawable-xxxhdpi/ic_account_skype.png | Bin 1645 -> 0 bytes .../drawable-xxxhdpi/ic_account_spotify.png | Bin 1330 -> 0 bytes .../res/drawable-xxxhdpi/ic_account_steam.png | Bin 1996 -> 0 bytes .../drawable-xxxhdpi/ic_account_twitch.png | Bin 589 -> 0 bytes .../drawable-xxxhdpi/ic_account_twitter.png | Bin 1037 -> 0 bytes .../res/drawable-xxxhdpi/ic_account_xbox.png | Bin 2322 -> 0 bytes .../drawable-xxxhdpi/ic_account_xsplit.png | Bin 731 -> 0 bytes ...ic_account_youtube_light_and_dark_24dp.png | Bin 0 -> 1002 bytes .../ic_facebook_white_24dp.png | Bin 579 -> 0 bytes .../res/drawable-xxxhdpi/ic_github_white.png | Bin 1275 -> 0 bytes .../ic_network_connecting.png | Bin 0 -> 557 bytes .../ic_network_connecting_light.png | Bin 0 -> 562 bytes .../drawable-xxxhdpi/ic_reddit_white_24dp.png | Bin 1582 -> 0 bytes .../drawable-xxxhdpi/ic_twitch_white_24dp.png | Bin 710 -> 0 bytes .../ic_twitter_white_24dp.png | Bin 1244 -> 0 bytes ..._account_battlenet_light_and_dark_24dp.xml | 4 + .../ic_account_battlenet_white_24dp.xml | 4 + ...c_account_facebook_light_and_dark_24dp.xml | 5 + .../ic_account_facebook_white_24dp.xml | 7 + .../main/res/drawable/ic_account_google.xml | 7 - ..._league_of_legends_light_and_dark_24dp.xml | 4 + ...c_account_league_of_legends_white_24dp.xml | 4 + .../ic_account_reddit_light_and_dark_24dp.xml | 5 + .../drawable/ic_account_reddit_white_24dp.xml | 4 + ...ic_account_samsung_light_and_dark_24dp.xml | 4 + .../ic_account_samsung_white_24dp.xml | 4 + .../ic_account_skype_light_and_dark_24dp.xml | 5 + .../drawable/ic_account_skype_white_24dp.xml | 4 + ...ic_account_spotify_light_and_dark_24dp.xml | 4 + .../ic_account_spotify_white_24dp.xml | 4 + .../drawable/ic_account_steam_light_24dp.xml | 5 + .../drawable/ic_account_steam_white_24dp.xml | 4 + .../ic_account_twitch_light_and_dark_24dp.xml | 10 + .../drawable/ic_account_twitch_white_24dp.xml | 9 + ...ic_account_twitter_light_and_dark_24dp.xml | 4 + .../ic_account_twitter_white_24dp.xml | 4 + .../drawable/ic_account_xbox_light_24dp.xml | 7 + .../drawable/ic_account_xbox_white_24dp.xml | 7 + .../main/res/drawable/ic_account_youtube.xml | 19 - .../ic_account_youtube_white_24dp.xml | 7 + .../main/res/drawable/ic_bnet_white_24dp.xml | 4 - .../res/drawable/ic_google_white_24dp.xml | 4 - .../main/res/drawable/ic_lol_white_24dp.xml | 4 - .../main/res/drawable/ic_skype_white_24dp.xml | 4 - .../res/drawable/ic_spotify_white_24dp.xml | 4 - .../main/res/drawable/ic_steam_white_24dp.xml | 4 - .../main/res/drawable/ic_xbox_white_24dp.xml | 4 - .../drawable/ic_youtube_gaming_white_24dp.xml | 4 - ...widget_guild_role_subscription_details.xml | 2 +- ...widget_guild_role_subscription_details.xml | 2 +- app/src/main/res/values-ar-rXB/strings.xml | 18 +- app/src/main/res/values-en-rXA/strings.xml | 18 +- app/src/main/res/values/attrs.xml | 28 + app/src/main/res/values/public.xml | 23090 ++++++++-------- app/src/main/res/values/strings.xml | 20 +- app/src/main/res/values/styles.xml | 28 + 284 files changed, 13026 insertions(+), 12131 deletions(-) create mode 100644 app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdate.java create mode 100644 app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdateReceiver.java create mode 100644 app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$14.java create mode 100644 app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$hideAnnouncementChannels$2.java create mode 100644 app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel$disableAnnouncementChannelType$2.java create mode 100644 app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify$autofillCode$2.java create mode 100644 app/src/main/res/color/guild_role_subscription_price_tier_text_color.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_bnet.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_facebook.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_github.xml create mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_github_light_24dp.xml create mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_github_white_24dp.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_lol.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_obs.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_patreon.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_reddit.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_skype.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_spotify.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_steam.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_twitch.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_twitter.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_xbox.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_xsplit.xml create mode 100644 app/src/main/res/drawable-anydpi-v24/ic_account_youtube_light_and_dark_24dp.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_facebook_white_24dp.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_github_white.xml create mode 100644 app/src/main/res/drawable-anydpi-v24/ic_network_connecting.xml create mode 100644 app/src/main/res/drawable-anydpi-v24/ic_network_connecting_light.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_reddit_white_24dp.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_twitch_white_24dp.xml delete mode 100644 app/src/main/res/drawable-anydpi-v24/ic_twitter_white_24dp.xml delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_bnet.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_facebook.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_github.png create mode 100644 app/src/main/res/drawable-hdpi/ic_account_github_light_24dp.png create mode 100644 app/src/main/res/drawable-hdpi/ic_account_github_white_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_lol.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_obs.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_patreon.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_reddit.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_skype.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_spotify.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_steam.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_twitch.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_twitter.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_xbox.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_account_xsplit.png create mode 100644 app/src/main/res/drawable-hdpi/ic_account_youtube_light_and_dark_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_facebook_white_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_github_white.png create mode 100644 app/src/main/res/drawable-hdpi/ic_network_connecting.png create mode 100644 app/src/main/res/drawable-hdpi/ic_network_connecting_light.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_reddit_white_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_twitch_white_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_twitter_white_24dp.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_bnet.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_facebook.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_github.png create mode 100644 app/src/main/res/drawable-ldpi/ic_account_github_light_24dp.png create mode 100644 app/src/main/res/drawable-ldpi/ic_account_github_white_24dp.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_lol.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_obs.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_patreon.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_reddit.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_skype.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_spotify.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_steam.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_twitch.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_twitter.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_xbox.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_account_xsplit.png create mode 100644 app/src/main/res/drawable-ldpi/ic_account_youtube_light_and_dark_24dp.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_facebook_white_24dp.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_github_white.png create mode 100644 app/src/main/res/drawable-ldpi/ic_network_connecting.png create mode 100644 app/src/main/res/drawable-ldpi/ic_network_connecting_light.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_reddit_white_24dp.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_twitch_white_24dp.png delete mode 100644 app/src/main/res/drawable-ldpi/ic_twitter_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_bnet.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_facebook.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_github.png create mode 100644 app/src/main/res/drawable-mdpi/ic_account_github_light_24dp.png create mode 100644 app/src/main/res/drawable-mdpi/ic_account_github_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_lol.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_obs.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_patreon.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_reddit.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_skype.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_spotify.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_steam.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_twitch.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_twitter.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_xbox.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_account_xsplit.png create mode 100644 app/src/main/res/drawable-mdpi/ic_account_youtube_light_and_dark_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_facebook_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_github_white.png create mode 100644 app/src/main/res/drawable-mdpi/ic_network_connecting.png create mode 100644 app/src/main/res/drawable-mdpi/ic_network_connecting_light.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_reddit_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_twitch_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_twitter_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_bnet.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_facebook.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_github.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_account_github_light_24dp.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_account_github_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_lol.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_obs.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_patreon.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_reddit.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_skype.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_spotify.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_steam.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_twitch.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_twitter.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_xbox.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_account_xsplit.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_account_youtube_light_and_dark_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_facebook_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_github_white.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_network_connecting.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_network_connecting_light.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_reddit_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_twitch_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_twitter_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_bnet.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_facebook.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_github.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_github_light_24dp.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_github_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_lol.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_obs.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_patreon.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_reddit.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_skype.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_spotify.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_steam.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_twitch.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_twitter.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_xbox.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_xsplit.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_account_youtube_light_and_dark_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_facebook_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_github_white.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_network_connecting.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_network_connecting_light.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_reddit_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_twitch_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_twitter_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_bnet.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_facebook.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_github.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_github_light_24dp.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_github_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_lol.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_obs.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_patreon.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_reddit.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_skype.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_spotify.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_steam.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_twitch.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_twitter.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_xbox.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_xsplit.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_account_youtube_light_and_dark_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_facebook_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_github_white.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_network_connecting.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_network_connecting_light.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_reddit_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_twitch_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_twitter_white_24dp.png create mode 100644 app/src/main/res/drawable/ic_account_battlenet_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_battlenet_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_facebook_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_facebook_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_account_google.xml create mode 100644 app/src/main/res/drawable/ic_account_league_of_legends_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_league_of_legends_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_reddit_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_reddit_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_samsung_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_samsung_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_skype_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_skype_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_spotify_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_spotify_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_steam_light_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_steam_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_twitch_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_twitch_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_twitter_light_and_dark_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_twitter_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_xbox_light_24dp.xml create mode 100644 app/src/main/res/drawable/ic_account_xbox_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_account_youtube.xml create mode 100644 app/src/main/res/drawable/ic_account_youtube_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_bnet_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_google_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_lol_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_skype_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_spotify_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_steam_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_xbox_white_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_youtube_gaming_white_24dp.xml diff --git a/app/build.gradle b/app/build.gradle index 58059eda25..39c81ad294 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId 'com.discord' minSdkVersion 21 targetSdkVersion 29 - versionCode 100204 - versionName "100.4 - Alpha" + versionCode 100206 + versionName "100.6 - Alpha" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b8a8cf205d..6ff889bdbb 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,5 +1,5 @@ - + @@ -72,6 +72,8 @@ + + @@ -91,6 +93,8 @@ + + @@ -174,7 +178,7 @@ - + diff --git a/app/src/main/java/c/a/a/i.java b/app/src/main/java/c/a/a/i.java index c8fe95e09f..066f0ac5ac 100644 --- a/app/src/main/java/c/a/a/i.java +++ b/app/src/main/java/c/a/a/i.java @@ -10,6 +10,7 @@ import c0.z.d.k; import c0.z.d.m; import com.discord.R; import com.discord.app.AppDialog; +import com.discord.utilities.drawable.DrawableCompat; import com.discord.utilities.uri.UriHandler; import com.discord.utilities.view.extensions.ViewExtensions; import com.discord.utilities.viewbinding.FragmentViewBindingDelegate; @@ -108,11 +109,11 @@ public final class i extends AppDialog { super.onViewBound(view); String string = getArgumentsOrDefault().getString("ARG_PROFILE_URL", ""); String string2 = getArgumentsOrDefault().getString("ARG_USERNAME", ""); - int i2 = getArgumentsOrDefault().getInt("ARG_PLATFORM_IMAGE_RES", 0); + int i2 = getArgumentsOrDefault().getInt("ARG_THEMED_PLATFORM_IMAGE_RES", 0); if (i2 != 0) { TextView textView = g().f103c; m.checkNotNullExpressionValue(textView, "binding.connectedAccountActionsDialogHeader"); - ViewExtensions.setCompoundDrawableWithIntrinsicBounds$default(textView, i2, 0, 0, 0, 14, null); + ViewExtensions.setCompoundDrawableWithIntrinsicBounds$default(textView, DrawableCompat.getThemedDrawableRes$default(view, i2, 0, 2, (Object) null), 0, 0, 0, 14, null); } TextView textView2 = g().f103c; m.checkNotNullExpressionValue(textView2, "binding.connectedAccountActionsDialogHeader"); diff --git a/app/src/main/java/c/a/d/l0/a.java b/app/src/main/java/c/a/d/l0/a.java index 3ccab1036e..e4173251b9 100644 --- a/app/src/main/java/c/a/d/l0/a.java +++ b/app/src/main/java/c/a/d/l0/a.java @@ -12,7 +12,8 @@ public final class a { public static final Regex B; public static final Regex C = new Regex("^/ra/([\\w-]+)$"); public static final Regex D; - public static final a E; + public static final Regex E; + public static final a F; public static final String a; public static final String b; @@ -54,7 +55,7 @@ public final class a { static { a aVar = new a(); - E = aVar; + F = aVar; String b2 = aVar.b(BuildConfig.HOST); a = b2; String b3 = aVar.b(BuildConfig.HOST_ALTERNATE); @@ -114,6 +115,7 @@ public final class a { A = new Regex("^/query(/\\w+)*/?$", iVar); B = new Regex("^/(?:oauth2|connect)/authorize/?$", iVar); D = new Regex("^/guild/((?:@me)|(?:\\d+))/premiumguild/?$", iVar); + E = new Regex("^/events/(\\d+)/(\\d+)/?$", iVar); } public final boolean a(String str) { diff --git a/app/src/main/java/c/a/q/o0/a.java b/app/src/main/java/c/a/q/o0/a.java index 59f31af98f..26fa249f26 100644 --- a/app/src/main/java/c/a/q/o0/a.java +++ b/app/src/main/java/c/a/q/o0/a.java @@ -46,7 +46,7 @@ public final /* synthetic */ class a extends k implements Function1 Transport transport = stats2.getTransport(); eVar.g(null, Integer.valueOf((transport == null || (receiverReports = transport.getReceiverReports()) == null) ? 0 : receiverReports.length), currentTimeMillis); if (!eVar.k.a() && (outboundRtpVideo = stats2.getOutboundRtpVideo()) != null) { - eVar.a(eVar.l, new e.g((long) outboundRtpVideo.getResolution().getHeight(), currentTimeMillis, new e.a(outboundRtpVideo.getFramesEncoded(), outboundRtpVideo.getFramesSent(), outboundRtpVideo.getPacketsSent(), (long) outboundRtpVideo.getPacketsLost(), 0, outboundRtpVideo.getBytesSent(), outboundRtpVideo.getNackCount(), outboundRtpVideo.getPliCount(), outboundRtpVideo.getQpSum()))); + eVar.a(eVar.l, new e.g((long) outboundRtpVideo.getResolution().getHeight(), currentTimeMillis, new e.a(outboundRtpVideo.getFramesEncoded(), outboundRtpVideo.getFramesSent(), outboundRtpVideo.getPacketsSent(), (long) outboundRtpVideo.getPacketsLost(), 0, outboundRtpVideo.getBytesSent(), outboundRtpVideo.getNackCount(), outboundRtpVideo.getPliCount(), outboundRtpVideo.getQpSum(), 0, 0, 0, 0, 0))); if (eVar.l.d == null && outboundRtpVideo.getFramesEncoded() > 0) { eVar.l.d = Long.valueOf(currentTimeMillis - eVar.g); Logger.i$default(eVar.p, "VideoQuality: outboundStats.timeToFirstFrame: " + eVar.l.d, null, 2, null); diff --git a/app/src/main/java/c/a/q/o0/e.java b/app/src/main/java/c/a/q/o0/e.java index 664aa5c7c5..c2e3022b19 100644 --- a/app/src/main/java/c/a/q/o0/e.java +++ b/app/src/main/java/c/a/q/o0/e.java @@ -1,7 +1,6 @@ package c.a.q.o0; import androidx.annotation.AnyThread; -import androidx.core.app.FrameMetricsAggregator; import c0.t.h0; import c0.t.n; import c0.t.r; @@ -60,12 +59,17 @@ public final class e { public long g; public long h; public long i; + public long j; + public long k; + public long l; + public long m; + public long n; public a() { - this(0, 0, 0, 0, 0, 0, 0, 0, 0, FrameMetricsAggregator.EVERY_DURATION); + this(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16383); } - public a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8, long j9) { + public a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8, long j9, long j10, long j11, long j12, long j13, long j14) { this.a = j; this.b = j2; this.f232c = j3; @@ -75,11 +79,16 @@ public final class e { this.g = j7; this.h = j8; this.i = j9; + this.j = j10; + this.k = j11; + this.l = j12; + this.m = j13; + this.n = j14; } /* JADX INFO: this call moved to the top of the method (can break code semantics) */ - public /* synthetic */ a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8, long j9, int i) { - this((i & 1) != 0 ? 0 : j, (i & 2) != 0 ? 0 : j2, (i & 4) != 0 ? 0 : j3, (i & 8) != 0 ? 0 : j4, (i & 16) != 0 ? 0 : j5, (i & 32) != 0 ? 0 : j6, (i & 64) != 0 ? 0 : j7, (i & 128) != 0 ? 0 : j8, (i & 256) == 0 ? j9 : 0); + public /* synthetic */ a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8, long j9, long j10, long j11, long j12, long j13, long j14, int i) { + this((i & 1) != 0 ? 0 : j, (i & 2) != 0 ? 0 : j2, (i & 4) != 0 ? 0 : j3, (i & 8) != 0 ? 0 : j4, (i & 16) != 0 ? 0 : j5, (i & 32) != 0 ? 0 : j6, (i & 64) != 0 ? 0 : j7, (i & 128) != 0 ? 0 : j8, (i & 256) != 0 ? 0 : j9, (i & 512) != 0 ? 0 : j10, (i & 1024) != 0 ? 0 : j11, (i & 2048) != 0 ? 0 : j12, (i & 4096) != 0 ? 0 : j13, (i & 8192) == 0 ? j14 : 0); } public boolean equals(Object obj) { @@ -90,7 +99,7 @@ public final class e { return false; } a aVar = (a) obj; - return this.a == aVar.a && this.b == aVar.b && this.f232c == aVar.f232c && this.d == aVar.d && this.e == aVar.e && this.f == aVar.f && this.g == aVar.g && this.h == aVar.h && this.i == aVar.i; + return this.a == aVar.a && this.b == aVar.b && this.f232c == aVar.f232c && this.d == aVar.d && this.e == aVar.e && this.f == aVar.f && this.g == aVar.g && this.h == aVar.h && this.i == aVar.i && this.j == aVar.j && this.k == aVar.k && this.l == aVar.l && this.m == aVar.m && this.n == aVar.n; } public int hashCode() { @@ -101,7 +110,12 @@ public final class e { int a5 = z.a.a.b.a(this.f); int a6 = z.a.a.b.a(this.g); int a7 = z.a.a.b.a(this.h); - return z.a.a.b.a(this.i) + ((a7 + ((a6 + ((a5 + ((a4 + ((a3 + ((a2 + ((a + (z.a.a.b.a(this.a) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31); + int a8 = z.a.a.b.a(this.i); + int a9 = z.a.a.b.a(this.j); + int a10 = z.a.a.b.a(this.k); + int a11 = z.a.a.b.a(this.l); + int a12 = z.a.a.b.a(this.m); + return z.a.a.b.a(this.n) + ((a12 + ((a11 + ((a10 + ((a9 + ((a8 + ((a7 + ((a6 + ((a5 + ((a4 + ((a3 + ((a2 + ((a + (z.a.a.b.a(this.a) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31); } public String toString() { @@ -122,7 +136,17 @@ public final class e { O.append(", pliCount="); O.append(this.h); O.append(", qpSum="); - return c.d.b.a.a.A(O, this.i, ")"); + O.append(this.i); + O.append(", freezeCount="); + O.append(this.j); + O.append(", pauseCount="); + O.append(this.k); + O.append(", totalFreezesDuration="); + O.append(this.l); + O.append(", totalPausesDuration="); + O.append(this.m); + O.append(", totalFramesDuration="); + return c.d.b.a.a.A(O, this.n, ")"); } } @@ -189,7 +213,7 @@ public final class e { /* renamed from: c reason: collision with root package name */ public final Histogram f233c = new Histogram(25600, 0, 2, null); public Long d; - public a e = new a(0, 0, 0, 0, 0, 0, 0, 0, 0, FrameMetricsAggregator.EVERY_DURATION); + public a e = new a(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16383); public long f; public Map g = new LinkedHashMap(); public Map h = new LinkedHashMap(); @@ -227,7 +251,7 @@ public final class e { public final a f234c; public g() { - this(0, 0, new a(0, 0, 0, 0, 0, 0, 0, 0, 0, FrameMetricsAggregator.EVERY_DURATION)); + this(0, 0, new a(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16383)); } public g(long j, long j2, a aVar) { @@ -336,6 +360,11 @@ public final class e { aVar.g = fVar.a(aVar2.g, aVar3.g) + aVar.g; aVar.h = fVar.a(aVar2.h, aVar3.h) + aVar.h; aVar.i = fVar.a(aVar2.i, aVar3.i) + aVar.i; + aVar.j = fVar.a(aVar2.j, aVar3.j) + aVar.j; + aVar.k = fVar.a(aVar2.j, aVar3.j) + aVar.k; + aVar.l = fVar.a(aVar2.l, aVar3.l) + aVar.l; + aVar.m = fVar.a(aVar2.m, aVar3.m) + aVar.m; + aVar.n = fVar.a(aVar2.n, aVar3.n) + aVar.n; a aVar4 = gVar2.f234c; long j = aVar4.f; long j2 = aVar4.a; @@ -442,12 +471,12 @@ public final class e { return h0.plus(e(this.l), h0.mapOf(c0.o.to("target_bitrate_max", Long.valueOf((i <= 0 || (valueOf3 = Float.valueOf(((float) (fVar.o * ((long) 8))) / f2)) == null) ? 0 : c0.a0.a.roundToLong(valueOf3.floatValue()))), c0.o.to("target_bitrate_network", Long.valueOf((i <= 0 || (valueOf2 = Float.valueOf(((float) (this.l.n * ((long) 8))) / f2)) == null) ? 0 : c0.a0.a.roundToLong(valueOf2.floatValue()))), c0.o.to("target_fps", Long.valueOf((i <= 0 || (valueOf = Float.valueOf(((float) this.l.m) / f2)) == null) ? 0 : c0.a0.a.roundToLong(valueOf.floatValue()))), c0.o.to("duration_encoder_nvidia_cuda", 0L), c0.o.to("duration_encoder_nvidia_direct3d", 0L), c0.o.to("duration_encoder_openh264", 0L), c0.o.to("duration_encoder_videotoolbox", 0L), c0.o.to("duration_encoder_amd_direct3d", 0L), c0.o.to("duration_encoder_intel", 0L), c0.o.to("duration_encoder_intel_direct3d", 0L), c0.o.to("duration_encoder_unknown", 0L))); } - /* JADX DEBUG: Can't convert new array creation: APUT found in different block: 0x04e0: APUT + /* JADX DEBUG: Can't convert new array creation: APUT found in different block: 0x04e4: APUT (r6v4 kotlin.Pair[]) (6 ??[int, float, short, byte, char]) - (wrap: kotlin.Pair : 0x04db: INVOKE (r1v3 kotlin.Pair) = + (wrap: kotlin.Pair : 0x04df: INVOKE (r1v3 kotlin.Pair) = ("time_to_first_frame_ms") - (wrap: java.lang.Long : 0x04d4: INVOKE (r1v2 java.lang.Long) = (r4v22 long) type: STATIC call: java.lang.Long.valueOf(long):java.lang.Long) + (wrap: java.lang.Long : 0x04d8: INVOKE (r1v2 java.lang.Long) = (r4v22 long) type: STATIC call: java.lang.Long.valueOf(long):java.lang.Long) type: STATIC call: c0.o.to(java.lang.Object, java.lang.Object):kotlin.Pair) */ public final Map e(C0043e eVar) { @@ -466,7 +495,7 @@ public final class e { a aVar = eVar.e; long a2 = i > 0 ? b.a(bVar, Float.valueOf(((float) (aVar.f * ((long) 8))) / f2)) : 0; long a3 = i > 0 ? b.a(bVar, Float.valueOf(((float) aVar.a) / f2)) : 0; - Pair[] pairArr = new Pair[11]; + Pair[] pairArr = new Pair[16]; pairArr[0] = c0.o.to("avg_bitrate", Long.valueOf(a2)); pairArr[1] = c0.o.to("avg_fps", Long.valueOf(a3)); pairArr[2] = c0.o.to("num_bytes", Long.valueOf(aVar.f)); @@ -479,11 +508,16 @@ public final class e { pairArr[8] = c0.o.to("num_nacks", Long.valueOf(aVar.g)); pairArr[9] = c0.o.to("num_plis", Long.valueOf(aVar.h)); pairArr[10] = c0.o.to("qp_sum", Long.valueOf(aVar.i)); + pairArr[11] = c0.o.to("receiver_freeze_count", Long.valueOf(aVar.j)); + pairArr[12] = c0.o.to("receiver_pause_count", Long.valueOf(aVar.k)); + pairArr[13] = c0.o.to("receiver_total_freezes_duration", Long.valueOf(aVar.l)); + pairArr[14] = c0.o.to("receiver_total_pauses_duration", Long.valueOf(aVar.m)); + pairArr[15] = c0.o.to("receiver_total_frames_duration", Long.valueOf(aVar.n)); return h0.plus(mapOf, h0.mapOf(pairArr)); } public final g f(InboundRtpVideo inboundRtpVideo, long j) { - return new g((long) inboundRtpVideo.getResolution().getHeight(), j, new a((long) inboundRtpVideo.getFramesDecoded(), (long) inboundRtpVideo.getFramesReceived(), (long) inboundRtpVideo.getPacketsReceived(), (long) inboundRtpVideo.getPacketsLost(), (long) inboundRtpVideo.getFramesDropped(), inboundRtpVideo.getBytesReceived(), inboundRtpVideo.getNackCount(), inboundRtpVideo.getPliCount(), inboundRtpVideo.getQpSum())); + return new g((long) inboundRtpVideo.getResolution().getHeight(), j, new a((long) inboundRtpVideo.getFramesDecoded(), (long) inboundRtpVideo.getFramesReceived(), (long) inboundRtpVideo.getPacketsReceived(), (long) inboundRtpVideo.getPacketsLost(), (long) inboundRtpVideo.getFramesDropped(), inboundRtpVideo.getBytesReceived(), inboundRtpVideo.getNackCount(), inboundRtpVideo.getPliCount(), inboundRtpVideo.getQpSum(), inboundRtpVideo.getFreezeCount(), inboundRtpVideo.getPauseCount(), inboundRtpVideo.getTotalFreezesDuration(), inboundRtpVideo.getTotalPausesDuration(), inboundRtpVideo.getTotalFramesDuration())); } public final void g(Boolean bool, Integer num, long j) { diff --git a/app/src/main/java/co/discord/media_engine/InboundRtpVideo.java b/app/src/main/java/co/discord/media_engine/InboundRtpVideo.java index a6147edcd2..5ead7e4677 100644 --- a/app/src/main/java/co/discord/media_engine/InboundRtpVideo.java +++ b/app/src/main/java/co/discord/media_engine/InboundRtpVideo.java @@ -1,7 +1,7 @@ package co.discord.media_engine; -import c.d.b.a.a; import c0.z.d.m; +import z.a.a.a; import z.a.a.b; /* compiled from: Statistics.kt */ public final class InboundRtpVideo { @@ -17,16 +17,22 @@ public final class InboundRtpVideo { private final int framesDecoded; private final int framesDropped; private final int framesReceived; + private final long freezeCount; private final long nackCount; private final int packetsLost; private final int packetsReceived; + private final long pauseCount; private final long pliCount; private final long qpSum; private final Resolution resolution; private final long ssrc; + private final double sumOfSquaredFramesDurations; + private final long totalFramesDuration; + private final long totalFreezesDuration; + private final long totalPausesDuration; private final String type; - public InboundRtpVideo(String str, long j, StatsCodec statsCodec, long j2, int i, int i2, int i3, int i4, Resolution resolution, String str2, int i5, int i6, int i7, int i8, int i9, int i10, long j3, long j4, long j5, long j6) { + public InboundRtpVideo(String str, long j, StatsCodec statsCodec, long j2, int i, int i2, int i3, int i4, Resolution resolution, String str2, int i5, int i6, int i7, int i8, int i9, int i10, long j3, long j4, long j5, long j6, long j7, long j8, long j9, long j10, long j11, double d) { m.checkNotNullParameter(str, "type"); m.checkNotNullParameter(resolution, "resolution"); m.checkNotNullParameter(str2, "decoderImplementationName"); @@ -50,10 +56,16 @@ public final class InboundRtpVideo { this.nackCount = j4; this.pliCount = j5; this.qpSum = j6; + this.freezeCount = j7; + this.pauseCount = j8; + this.totalFreezesDuration = j9; + this.totalPausesDuration = j10; + this.totalFramesDuration = j11; + this.sumOfSquaredFramesDurations = d; } - public static /* synthetic */ InboundRtpVideo copy$default(InboundRtpVideo inboundRtpVideo, String str, long j, StatsCodec statsCodec, long j2, int i, int i2, int i3, int i4, Resolution resolution, String str2, int i5, int i6, int i7, int i8, int i9, int i10, long j3, long j4, long j5, long j6, int i11, Object obj) { - return inboundRtpVideo.copy((i11 & 1) != 0 ? inboundRtpVideo.type : str, (i11 & 2) != 0 ? inboundRtpVideo.ssrc : j, (i11 & 4) != 0 ? inboundRtpVideo.codec : statsCodec, (i11 & 8) != 0 ? inboundRtpVideo.bytesReceived : j2, (i11 & 16) != 0 ? inboundRtpVideo.packetsReceived : i, (i11 & 32) != 0 ? inboundRtpVideo.packetsLost : i2, (i11 & 64) != 0 ? inboundRtpVideo.bitrate : i3, (i11 & 128) != 0 ? inboundRtpVideo.averageDecodeTime : i4, (i11 & 256) != 0 ? inboundRtpVideo.resolution : resolution, (i11 & 512) != 0 ? inboundRtpVideo.decoderImplementationName : str2, (i11 & 1024) != 0 ? inboundRtpVideo.framesDecoded : i5, (i11 & 2048) != 0 ? inboundRtpVideo.framesDropped : i6, (i11 & 4096) != 0 ? inboundRtpVideo.framesReceived : i7, (i11 & 8192) != 0 ? inboundRtpVideo.frameRateDecode : i8, (i11 & 16384) != 0 ? inboundRtpVideo.frameRateNetwork : i9, (i11 & 32768) != 0 ? inboundRtpVideo.frameRateRender : i10, (i11 & 65536) != 0 ? inboundRtpVideo.firCount : j3, (i11 & 131072) != 0 ? inboundRtpVideo.nackCount : j4, (i11 & 262144) != 0 ? inboundRtpVideo.pliCount : j5, (i11 & 524288) != 0 ? inboundRtpVideo.qpSum : j6); + public static /* synthetic */ InboundRtpVideo copy$default(InboundRtpVideo inboundRtpVideo, String str, long j, StatsCodec statsCodec, long j2, int i, int i2, int i3, int i4, Resolution resolution, String str2, int i5, int i6, int i7, int i8, int i9, int i10, long j3, long j4, long j5, long j6, long j7, long j8, long j9, long j10, long j11, double d, int i11, Object obj) { + return inboundRtpVideo.copy((i11 & 1) != 0 ? inboundRtpVideo.type : str, (i11 & 2) != 0 ? inboundRtpVideo.ssrc : j, (i11 & 4) != 0 ? inboundRtpVideo.codec : statsCodec, (i11 & 8) != 0 ? inboundRtpVideo.bytesReceived : j2, (i11 & 16) != 0 ? inboundRtpVideo.packetsReceived : i, (i11 & 32) != 0 ? inboundRtpVideo.packetsLost : i2, (i11 & 64) != 0 ? inboundRtpVideo.bitrate : i3, (i11 & 128) != 0 ? inboundRtpVideo.averageDecodeTime : i4, (i11 & 256) != 0 ? inboundRtpVideo.resolution : resolution, (i11 & 512) != 0 ? inboundRtpVideo.decoderImplementationName : str2, (i11 & 1024) != 0 ? inboundRtpVideo.framesDecoded : i5, (i11 & 2048) != 0 ? inboundRtpVideo.framesDropped : i6, (i11 & 4096) != 0 ? inboundRtpVideo.framesReceived : i7, (i11 & 8192) != 0 ? inboundRtpVideo.frameRateDecode : i8, (i11 & 16384) != 0 ? inboundRtpVideo.frameRateNetwork : i9, (i11 & 32768) != 0 ? inboundRtpVideo.frameRateRender : i10, (i11 & 65536) != 0 ? inboundRtpVideo.firCount : j3, (i11 & 131072) != 0 ? inboundRtpVideo.nackCount : j4, (i11 & 262144) != 0 ? inboundRtpVideo.pliCount : j5, (i11 & 524288) != 0 ? inboundRtpVideo.qpSum : j6, (i11 & 1048576) != 0 ? inboundRtpVideo.freezeCount : j7, (i11 & 2097152) != 0 ? inboundRtpVideo.pauseCount : j8, (i11 & 4194304) != 0 ? inboundRtpVideo.totalFreezesDuration : j9, (i11 & 8388608) != 0 ? inboundRtpVideo.totalPausesDuration : j10, (i11 & 16777216) != 0 ? inboundRtpVideo.totalFramesDuration : j11, (i11 & 33554432) != 0 ? inboundRtpVideo.sumOfSquaredFramesDurations : d); } public final String component1() { @@ -108,6 +120,30 @@ public final class InboundRtpVideo { return this.qpSum; } + public final long component21() { + return this.freezeCount; + } + + public final long component22() { + return this.pauseCount; + } + + public final long component23() { + return this.totalFreezesDuration; + } + + public final long component24() { + return this.totalPausesDuration; + } + + public final long component25() { + return this.totalFramesDuration; + } + + public final double component26() { + return this.sumOfSquaredFramesDurations; + } + public final StatsCodec component3() { return this.codec; } @@ -136,11 +172,11 @@ public final class InboundRtpVideo { return this.resolution; } - public final InboundRtpVideo copy(String str, long j, StatsCodec statsCodec, long j2, int i, int i2, int i3, int i4, Resolution resolution, String str2, int i5, int i6, int i7, int i8, int i9, int i10, long j3, long j4, long j5, long j6) { + public final InboundRtpVideo copy(String str, long j, StatsCodec statsCodec, long j2, int i, int i2, int i3, int i4, Resolution resolution, String str2, int i5, int i6, int i7, int i8, int i9, int i10, long j3, long j4, long j5, long j6, long j7, long j8, long j9, long j10, long j11, double d) { m.checkNotNullParameter(str, "type"); m.checkNotNullParameter(resolution, "resolution"); m.checkNotNullParameter(str2, "decoderImplementationName"); - return new InboundRtpVideo(str, j, statsCodec, j2, i, i2, i3, i4, resolution, str2, i5, i6, i7, i8, i9, i10, j3, j4, j5, j6); + return new InboundRtpVideo(str, j, statsCodec, j2, i, i2, i3, i4, resolution, str2, i5, i6, i7, i8, i9, i10, j3, j4, j5, j6, j7, j8, j9, j10, j11, d); } public boolean equals(Object obj) { @@ -151,7 +187,7 @@ public final class InboundRtpVideo { return false; } InboundRtpVideo inboundRtpVideo = (InboundRtpVideo) obj; - return m.areEqual(this.type, inboundRtpVideo.type) && this.ssrc == inboundRtpVideo.ssrc && m.areEqual(this.codec, inboundRtpVideo.codec) && this.bytesReceived == inboundRtpVideo.bytesReceived && this.packetsReceived == inboundRtpVideo.packetsReceived && this.packetsLost == inboundRtpVideo.packetsLost && this.bitrate == inboundRtpVideo.bitrate && this.averageDecodeTime == inboundRtpVideo.averageDecodeTime && m.areEqual(this.resolution, inboundRtpVideo.resolution) && m.areEqual(this.decoderImplementationName, inboundRtpVideo.decoderImplementationName) && this.framesDecoded == inboundRtpVideo.framesDecoded && this.framesDropped == inboundRtpVideo.framesDropped && this.framesReceived == inboundRtpVideo.framesReceived && this.frameRateDecode == inboundRtpVideo.frameRateDecode && this.frameRateNetwork == inboundRtpVideo.frameRateNetwork && this.frameRateRender == inboundRtpVideo.frameRateRender && this.firCount == inboundRtpVideo.firCount && this.nackCount == inboundRtpVideo.nackCount && this.pliCount == inboundRtpVideo.pliCount && this.qpSum == inboundRtpVideo.qpSum; + return m.areEqual(this.type, inboundRtpVideo.type) && this.ssrc == inboundRtpVideo.ssrc && m.areEqual(this.codec, inboundRtpVideo.codec) && this.bytesReceived == inboundRtpVideo.bytesReceived && this.packetsReceived == inboundRtpVideo.packetsReceived && this.packetsLost == inboundRtpVideo.packetsLost && this.bitrate == inboundRtpVideo.bitrate && this.averageDecodeTime == inboundRtpVideo.averageDecodeTime && m.areEqual(this.resolution, inboundRtpVideo.resolution) && m.areEqual(this.decoderImplementationName, inboundRtpVideo.decoderImplementationName) && this.framesDecoded == inboundRtpVideo.framesDecoded && this.framesDropped == inboundRtpVideo.framesDropped && this.framesReceived == inboundRtpVideo.framesReceived && this.frameRateDecode == inboundRtpVideo.frameRateDecode && this.frameRateNetwork == inboundRtpVideo.frameRateNetwork && this.frameRateRender == inboundRtpVideo.frameRateRender && this.firCount == inboundRtpVideo.firCount && this.nackCount == inboundRtpVideo.nackCount && this.pliCount == inboundRtpVideo.pliCount && this.qpSum == inboundRtpVideo.qpSum && this.freezeCount == inboundRtpVideo.freezeCount && this.pauseCount == inboundRtpVideo.pauseCount && this.totalFreezesDuration == inboundRtpVideo.totalFreezesDuration && this.totalPausesDuration == inboundRtpVideo.totalPausesDuration && this.totalFramesDuration == inboundRtpVideo.totalFramesDuration && Double.compare(this.sumOfSquaredFramesDurations, inboundRtpVideo.sumOfSquaredFramesDurations) == 0; } public final int getAverageDecodeTime() { @@ -202,6 +238,10 @@ public final class InboundRtpVideo { return this.framesReceived; } + public final long getFreezeCount() { + return this.freezeCount; + } + public final long getNackCount() { return this.nackCount; } @@ -214,6 +254,10 @@ public final class InboundRtpVideo { return this.packetsReceived; } + public final long getPauseCount() { + return this.pauseCount; + } + public final long getPliCount() { return this.pliCount; } @@ -230,6 +274,22 @@ public final class InboundRtpVideo { return this.ssrc; } + public final double getSumOfSquaredFramesDurations() { + return this.sumOfSquaredFramesDurations; + } + + public final long getTotalFramesDuration() { + return this.totalFramesDuration; + } + + public final long getTotalFreezesDuration() { + return this.totalFreezesDuration; + } + + public final long getTotalPausesDuration() { + return this.totalPausesDuration; + } + public final String getType() { return this.type; } @@ -246,11 +306,17 @@ public final class InboundRtpVideo { if (str2 != null) { i = str2.hashCode(); } - return b.a(this.qpSum) + ((b.a(this.pliCount) + ((b.a(this.nackCount) + ((b.a(this.firCount) + ((((((((((((((hashCode + i) * 31) + this.framesDecoded) * 31) + this.framesDropped) * 31) + this.framesReceived) * 31) + this.frameRateDecode) * 31) + this.frameRateNetwork) * 31) + this.frameRateRender) * 31)) * 31)) * 31)) * 31); + int a3 = b.a(this.firCount); + int a4 = b.a(this.nackCount); + int a5 = b.a(this.pliCount); + int a6 = b.a(this.qpSum); + int a7 = b.a(this.freezeCount); + int a8 = b.a(this.pauseCount); + return a.a(this.sumOfSquaredFramesDurations) + ((b.a(this.totalFramesDuration) + ((b.a(this.totalPausesDuration) + ((b.a(this.totalFreezesDuration) + ((a8 + ((a7 + ((a6 + ((a5 + ((a4 + ((a3 + ((((((((((((((hashCode + i) * 31) + this.framesDecoded) * 31) + this.framesDropped) * 31) + this.framesReceived) * 31) + this.frameRateDecode) * 31) + this.frameRateNetwork) * 31) + this.frameRateRender) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31); } public String toString() { - StringBuilder O = a.O("InboundRtpVideo(type="); + StringBuilder O = c.d.b.a.a.O("InboundRtpVideo(type="); O.append(this.type); O.append(", ssrc="); O.append(this.ssrc); @@ -289,6 +355,20 @@ public final class InboundRtpVideo { O.append(", pliCount="); O.append(this.pliCount); O.append(", qpSum="); - return a.A(O, this.qpSum, ")"); + O.append(this.qpSum); + O.append(", freezeCount="); + O.append(this.freezeCount); + O.append(", pauseCount="); + O.append(this.pauseCount); + O.append(", totalFreezesDuration="); + O.append(this.totalFreezesDuration); + O.append(", totalPausesDuration="); + O.append(this.totalPausesDuration); + O.append(", totalFramesDuration="); + O.append(this.totalFramesDuration); + O.append(", sumOfSquaredFramesDurations="); + O.append(this.sumOfSquaredFramesDurations); + O.append(")"); + return O.toString(); } } diff --git a/app/src/main/java/co/discord/media_engine/internal/InboundVideo.java b/app/src/main/java/co/discord/media_engine/internal/InboundVideo.java index 5787c73df2..377672988f 100644 --- a/app/src/main/java/co/discord/media_engine/internal/InboundVideo.java +++ b/app/src/main/java/co/discord/media_engine/internal/InboundVideo.java @@ -1,7 +1,8 @@ package co.discord.media_engine.internal; -import c.d.b.a.a; +import androidx.constraintlayout.solver.widgets.analyzer.BasicMeasure; import c0.z.d.m; +import z.a.a.a; import z.a.a.b; /* compiled from: NativeStatistics.kt */ public final class InboundVideo { @@ -16,23 +17,29 @@ public final class InboundVideo { private final long framesDecoded; private final int framesDropped; private final long framesRendered; + private final long freezeCount; private final int height; private final int jitterBuffer; private final int maxDecode; private final int minPlayoutDelay; private final int networkFrameRate; + private final long pauseCount; private final long qpSum; private final int renderDelay; private final int renderFrameRate; private final InboundRtcpStats rtcpStats; private final InboundRtpStats rtpStats; private final long ssrc; + private final double sumOfSquaredFramesDurations; private final float syncOffset; private final float targetDelay; private final int totalBitrate; + private final long totalFramesDuration; + private final long totalFreezesDuration; + private final long totalPausesDuration; private final int width; - public InboundVideo(String str, int i, int i2, int i3, int i4, int i5, String str2, FrameCounts frameCounts, long j, long j2, int i6, int i7, int i8, int i9, int i10, int i11, long j3, int i12, int i13, InboundRtcpStats inboundRtcpStats, InboundRtpStats inboundRtpStats, long j4, float f, float f2, int i14, int i15) { + public InboundVideo(String str, int i, int i2, int i3, int i4, int i5, String str2, FrameCounts frameCounts, long j, long j2, int i6, int i7, int i8, int i9, int i10, int i11, long j3, int i12, int i13, InboundRtcpStats inboundRtcpStats, InboundRtpStats inboundRtpStats, long j4, float f, float f2, int i14, int i15, long j5, long j6, long j7, long j8, long j9, double d) { m.checkNotNullParameter(str, "codecName"); m.checkNotNullParameter(str2, "decoderImplementationName"); m.checkNotNullParameter(frameCounts, "frameCounts"); @@ -64,10 +71,16 @@ public final class InboundVideo { this.targetDelay = f2; this.totalBitrate = i14; this.width = i15; + this.freezeCount = j5; + this.pauseCount = j6; + this.totalFreezesDuration = j7; + this.totalPausesDuration = j8; + this.totalFramesDuration = j9; + this.sumOfSquaredFramesDurations = d; } - public static /* synthetic */ InboundVideo copy$default(InboundVideo inboundVideo, String str, int i, int i2, int i3, int i4, int i5, String str2, FrameCounts frameCounts, long j, long j2, int i6, int i7, int i8, int i9, int i10, int i11, long j3, int i12, int i13, InboundRtcpStats inboundRtcpStats, InboundRtpStats inboundRtpStats, long j4, float f, float f2, int i14, int i15, int i16, Object obj) { - return inboundVideo.copy((i16 & 1) != 0 ? inboundVideo.codecName : str, (i16 & 2) != 0 ? inboundVideo.codecPayloadType : i, (i16 & 4) != 0 ? inboundVideo.currentDelay : i2, (i16 & 8) != 0 ? inboundVideo.currentPayloadType : i3, (i16 & 16) != 0 ? inboundVideo.decodeFrameRate : i4, (i16 & 32) != 0 ? inboundVideo.decode : i5, (i16 & 64) != 0 ? inboundVideo.decoderImplementationName : str2, (i16 & 128) != 0 ? inboundVideo.frameCounts : frameCounts, (i16 & 256) != 0 ? inboundVideo.framesDecoded : j, (i16 & 512) != 0 ? inboundVideo.framesRendered : j2, (i16 & 1024) != 0 ? inboundVideo.framesDropped : i6, (i16 & 2048) != 0 ? inboundVideo.height : i7, (i16 & 4096) != 0 ? inboundVideo.jitterBuffer : i8, (i16 & 8192) != 0 ? inboundVideo.maxDecode : i9, (i16 & 16384) != 0 ? inboundVideo.minPlayoutDelay : i10, (i16 & 32768) != 0 ? inboundVideo.networkFrameRate : i11, (i16 & 65536) != 0 ? inboundVideo.qpSum : j3, (i16 & 131072) != 0 ? inboundVideo.renderDelay : i12, (262144 & i16) != 0 ? inboundVideo.renderFrameRate : i13, (i16 & 524288) != 0 ? inboundVideo.rtcpStats : inboundRtcpStats, (i16 & 1048576) != 0 ? inboundVideo.rtpStats : inboundRtpStats, (i16 & 2097152) != 0 ? inboundVideo.ssrc : j4, (i16 & 4194304) != 0 ? inboundVideo.syncOffset : f, (8388608 & i16) != 0 ? inboundVideo.targetDelay : f2, (i16 & 16777216) != 0 ? inboundVideo.totalBitrate : i14, (i16 & 33554432) != 0 ? inboundVideo.width : i15); + public static /* synthetic */ InboundVideo copy$default(InboundVideo inboundVideo, String str, int i, int i2, int i3, int i4, int i5, String str2, FrameCounts frameCounts, long j, long j2, int i6, int i7, int i8, int i9, int i10, int i11, long j3, int i12, int i13, InboundRtcpStats inboundRtcpStats, InboundRtpStats inboundRtpStats, long j4, float f, float f2, int i14, int i15, long j5, long j6, long j7, long j8, long j9, double d, int i16, Object obj) { + return inboundVideo.copy((i16 & 1) != 0 ? inboundVideo.codecName : str, (i16 & 2) != 0 ? inboundVideo.codecPayloadType : i, (i16 & 4) != 0 ? inboundVideo.currentDelay : i2, (i16 & 8) != 0 ? inboundVideo.currentPayloadType : i3, (i16 & 16) != 0 ? inboundVideo.decodeFrameRate : i4, (i16 & 32) != 0 ? inboundVideo.decode : i5, (i16 & 64) != 0 ? inboundVideo.decoderImplementationName : str2, (i16 & 128) != 0 ? inboundVideo.frameCounts : frameCounts, (i16 & 256) != 0 ? inboundVideo.framesDecoded : j, (i16 & 512) != 0 ? inboundVideo.framesRendered : j2, (i16 & 1024) != 0 ? inboundVideo.framesDropped : i6, (i16 & 2048) != 0 ? inboundVideo.height : i7, (i16 & 4096) != 0 ? inboundVideo.jitterBuffer : i8, (i16 & 8192) != 0 ? inboundVideo.maxDecode : i9, (i16 & 16384) != 0 ? inboundVideo.minPlayoutDelay : i10, (i16 & 32768) != 0 ? inboundVideo.networkFrameRate : i11, (i16 & 65536) != 0 ? inboundVideo.qpSum : j3, (i16 & 131072) != 0 ? inboundVideo.renderDelay : i12, (262144 & i16) != 0 ? inboundVideo.renderFrameRate : i13, (i16 & 524288) != 0 ? inboundVideo.rtcpStats : inboundRtcpStats, (i16 & 1048576) != 0 ? inboundVideo.rtpStats : inboundRtpStats, (i16 & 2097152) != 0 ? inboundVideo.ssrc : j4, (i16 & 4194304) != 0 ? inboundVideo.syncOffset : f, (8388608 & i16) != 0 ? inboundVideo.targetDelay : f2, (i16 & 16777216) != 0 ? inboundVideo.totalBitrate : i14, (i16 & 33554432) != 0 ? inboundVideo.width : i15, (i16 & 67108864) != 0 ? inboundVideo.freezeCount : j5, (i16 & 134217728) != 0 ? inboundVideo.pauseCount : j6, (i16 & 268435456) != 0 ? inboundVideo.totalFreezesDuration : j7, (i16 & 536870912) != 0 ? inboundVideo.totalPausesDuration : j8, (i16 & BasicMeasure.EXACTLY) != 0 ? inboundVideo.totalFramesDuration : j9, (i16 & Integer.MIN_VALUE) != 0 ? inboundVideo.sumOfSquaredFramesDurations : d); } public final String component1() { @@ -146,10 +159,34 @@ public final class InboundVideo { return this.width; } + public final long component27() { + return this.freezeCount; + } + + public final long component28() { + return this.pauseCount; + } + + public final long component29() { + return this.totalFreezesDuration; + } + public final int component3() { return this.currentDelay; } + public final long component30() { + return this.totalPausesDuration; + } + + public final long component31() { + return this.totalFramesDuration; + } + + public final double component32() { + return this.sumOfSquaredFramesDurations; + } + public final int component4() { return this.currentPayloadType; } @@ -174,13 +211,13 @@ public final class InboundVideo { return this.framesDecoded; } - public final InboundVideo copy(String str, int i, int i2, int i3, int i4, int i5, String str2, FrameCounts frameCounts, long j, long j2, int i6, int i7, int i8, int i9, int i10, int i11, long j3, int i12, int i13, InboundRtcpStats inboundRtcpStats, InboundRtpStats inboundRtpStats, long j4, float f, float f2, int i14, int i15) { + public final InboundVideo copy(String str, int i, int i2, int i3, int i4, int i5, String str2, FrameCounts frameCounts, long j, long j2, int i6, int i7, int i8, int i9, int i10, int i11, long j3, int i12, int i13, InboundRtcpStats inboundRtcpStats, InboundRtpStats inboundRtpStats, long j4, float f, float f2, int i14, int i15, long j5, long j6, long j7, long j8, long j9, double d) { m.checkNotNullParameter(str, "codecName"); m.checkNotNullParameter(str2, "decoderImplementationName"); m.checkNotNullParameter(frameCounts, "frameCounts"); m.checkNotNullParameter(inboundRtcpStats, "rtcpStats"); m.checkNotNullParameter(inboundRtpStats, "rtpStats"); - return new InboundVideo(str, i, i2, i3, i4, i5, str2, frameCounts, j, j2, i6, i7, i8, i9, i10, i11, j3, i12, i13, inboundRtcpStats, inboundRtpStats, j4, f, f2, i14, i15); + return new InboundVideo(str, i, i2, i3, i4, i5, str2, frameCounts, j, j2, i6, i7, i8, i9, i10, i11, j3, i12, i13, inboundRtcpStats, inboundRtpStats, j4, f, f2, i14, i15, j5, j6, j7, j8, j9, d); } public boolean equals(Object obj) { @@ -191,7 +228,7 @@ public final class InboundVideo { return false; } InboundVideo inboundVideo = (InboundVideo) obj; - return m.areEqual(this.codecName, inboundVideo.codecName) && this.codecPayloadType == inboundVideo.codecPayloadType && this.currentDelay == inboundVideo.currentDelay && this.currentPayloadType == inboundVideo.currentPayloadType && this.decodeFrameRate == inboundVideo.decodeFrameRate && this.decode == inboundVideo.decode && m.areEqual(this.decoderImplementationName, inboundVideo.decoderImplementationName) && m.areEqual(this.frameCounts, inboundVideo.frameCounts) && this.framesDecoded == inboundVideo.framesDecoded && this.framesRendered == inboundVideo.framesRendered && this.framesDropped == inboundVideo.framesDropped && this.height == inboundVideo.height && this.jitterBuffer == inboundVideo.jitterBuffer && this.maxDecode == inboundVideo.maxDecode && this.minPlayoutDelay == inboundVideo.minPlayoutDelay && this.networkFrameRate == inboundVideo.networkFrameRate && this.qpSum == inboundVideo.qpSum && this.renderDelay == inboundVideo.renderDelay && this.renderFrameRate == inboundVideo.renderFrameRate && m.areEqual(this.rtcpStats, inboundVideo.rtcpStats) && m.areEqual(this.rtpStats, inboundVideo.rtpStats) && this.ssrc == inboundVideo.ssrc && Float.compare(this.syncOffset, inboundVideo.syncOffset) == 0 && Float.compare(this.targetDelay, inboundVideo.targetDelay) == 0 && this.totalBitrate == inboundVideo.totalBitrate && this.width == inboundVideo.width; + return m.areEqual(this.codecName, inboundVideo.codecName) && this.codecPayloadType == inboundVideo.codecPayloadType && this.currentDelay == inboundVideo.currentDelay && this.currentPayloadType == inboundVideo.currentPayloadType && this.decodeFrameRate == inboundVideo.decodeFrameRate && this.decode == inboundVideo.decode && m.areEqual(this.decoderImplementationName, inboundVideo.decoderImplementationName) && m.areEqual(this.frameCounts, inboundVideo.frameCounts) && this.framesDecoded == inboundVideo.framesDecoded && this.framesRendered == inboundVideo.framesRendered && this.framesDropped == inboundVideo.framesDropped && this.height == inboundVideo.height && this.jitterBuffer == inboundVideo.jitterBuffer && this.maxDecode == inboundVideo.maxDecode && this.minPlayoutDelay == inboundVideo.minPlayoutDelay && this.networkFrameRate == inboundVideo.networkFrameRate && this.qpSum == inboundVideo.qpSum && this.renderDelay == inboundVideo.renderDelay && this.renderFrameRate == inboundVideo.renderFrameRate && m.areEqual(this.rtcpStats, inboundVideo.rtcpStats) && m.areEqual(this.rtpStats, inboundVideo.rtpStats) && this.ssrc == inboundVideo.ssrc && Float.compare(this.syncOffset, inboundVideo.syncOffset) == 0 && Float.compare(this.targetDelay, inboundVideo.targetDelay) == 0 && this.totalBitrate == inboundVideo.totalBitrate && this.width == inboundVideo.width && this.freezeCount == inboundVideo.freezeCount && this.pauseCount == inboundVideo.pauseCount && this.totalFreezesDuration == inboundVideo.totalFreezesDuration && this.totalPausesDuration == inboundVideo.totalPausesDuration && this.totalFramesDuration == inboundVideo.totalFramesDuration && Double.compare(this.sumOfSquaredFramesDurations, inboundVideo.sumOfSquaredFramesDurations) == 0; } public final String getCodecName() { @@ -238,6 +275,10 @@ public final class InboundVideo { return this.framesRendered; } + public final long getFreezeCount() { + return this.freezeCount; + } + public final int getHeight() { return this.height; } @@ -258,6 +299,10 @@ public final class InboundVideo { return this.networkFrameRate; } + public final long getPauseCount() { + return this.pauseCount; + } + public final long getQpSum() { return this.qpSum; } @@ -282,6 +327,10 @@ public final class InboundVideo { return this.ssrc; } + public final double getSumOfSquaredFramesDurations() { + return this.sumOfSquaredFramesDurations; + } + public final float getSyncOffset() { return this.syncOffset; } @@ -294,6 +343,18 @@ public final class InboundVideo { return this.totalBitrate; } + public final long getTotalFramesDuration() { + return this.totalFramesDuration; + } + + public final long getTotalFreezesDuration() { + return this.totalFreezesDuration; + } + + public final long getTotalPausesDuration() { + return this.totalPausesDuration; + } + public final int getWidth() { return this.width; } @@ -312,11 +373,15 @@ public final class InboundVideo { if (inboundRtpStats != null) { i = inboundRtpStats.hashCode(); } - return ((((Float.floatToIntBits(this.targetDelay) + ((Float.floatToIntBits(this.syncOffset) + ((b.a(this.ssrc) + ((hashCode3 + i) * 31)) * 31)) * 31)) * 31) + this.totalBitrate) * 31) + this.width; + int a2 = b.a(this.ssrc); + int floatToIntBits = Float.floatToIntBits(this.syncOffset); + int floatToIntBits2 = Float.floatToIntBits(this.targetDelay); + int a3 = b.a(this.freezeCount); + return a.a(this.sumOfSquaredFramesDurations) + ((b.a(this.totalFramesDuration) + ((b.a(this.totalPausesDuration) + ((b.a(this.totalFreezesDuration) + ((b.a(this.pauseCount) + ((a3 + ((((((floatToIntBits2 + ((floatToIntBits + ((a2 + ((hashCode3 + i) * 31)) * 31)) * 31)) * 31) + this.totalBitrate) * 31) + this.width) * 31)) * 31)) * 31)) * 31)) * 31)) * 31); } public String toString() { - StringBuilder O = a.O("InboundVideo(codecName="); + StringBuilder O = c.d.b.a.a.O("InboundVideo(codecName="); O.append(this.codecName); O.append(", codecPayloadType="); O.append(this.codecPayloadType); @@ -367,6 +432,20 @@ public final class InboundVideo { O.append(", totalBitrate="); O.append(this.totalBitrate); O.append(", width="); - return a.z(O, this.width, ")"); + O.append(this.width); + O.append(", freezeCount="); + O.append(this.freezeCount); + O.append(", pauseCount="); + O.append(this.pauseCount); + O.append(", totalFreezesDuration="); + O.append(this.totalFreezesDuration); + O.append(", totalPausesDuration="); + O.append(this.totalPausesDuration); + O.append(", totalFramesDuration="); + O.append(this.totalFramesDuration); + O.append(", sumOfSquaredFramesDurations="); + O.append(this.sumOfSquaredFramesDurations); + O.append(")"); + return O.toString(); } } diff --git a/app/src/main/java/co/discord/media_engine/internal/TransformStats.java b/app/src/main/java/co/discord/media_engine/internal/TransformStats.java index d65bb4aeda..5626e7d413 100644 --- a/app/src/main/java/co/discord/media_engine/internal/TransformStats.java +++ b/app/src/main/java/co/discord/media_engine/internal/TransformStats.java @@ -39,9 +39,9 @@ public final class TransformStats { /* JADX WARNING: Removed duplicated region for block: B:47:0x00f7 */ /* JADX WARNING: Removed duplicated region for block: B:54:0x01c9 */ /* JADX WARNING: Removed duplicated region for block: B:57:0x01dc */ - /* JADX WARNING: Removed duplicated region for block: B:95:0x03bf */ - /* JADX WARNING: Removed duplicated region for block: B:98:0x03c9 */ - /* JADX WARNING: Removed duplicated region for block: B:99:0x03eb */ + /* JADX WARNING: Removed duplicated region for block: B:95:0x03d7 */ + /* JADX WARNING: Removed duplicated region for block: B:98:0x03e1 */ + /* JADX WARNING: Removed duplicated region for block: B:99:0x0403 */ public static final Stats transform(String str) { OutboundRtpAudio outboundRtpAudio; long j; @@ -127,7 +127,7 @@ public final class TransformStats { InboundVideo video = inbound2.getVideo(); long payloadBytes = video.getRtpStats().getPayloadBytes() + video.getRtpStats().getPaddingBytes() + video.getRtpStats().getHeaderBytes(); bytesReceived += payloadBytes; - InboundRtpVideo inboundRtpVideo = (InboundRtpVideo) linkedHashMap2.put(id2, new InboundRtpVideo(MediaStreamTrack.VIDEO_TRACK_KIND, video.getSsrc(), video.getCodecPayloadType() != -1 ? new StatsCodec(video.getCodecPayloadType(), video.getCodecName()) : null, payloadBytes, (int) video.getRtpStats().getPackets(), video.getRtpStats().getPacketsLost(), video.getTotalBitrate(), video.getDecode(), new Resolution(video.getWidth(), video.getHeight()), video.getDecoderImplementationName(), (int) video.getFramesDecoded(), video.getFramesDropped(), video.getFrameCounts().getKeyFrames() + video.getFrameCounts().getDeltaFrames(), video.getDecodeFrameRate(), video.getNetworkFrameRate(), video.getRenderFrameRate(), video.getRtcpStats().getFirPackets(), video.getRtcpStats().getNackPackets(), video.getRtcpStats().getPliPackets(), video.getQpSum())); + InboundRtpVideo inboundRtpVideo = (InboundRtpVideo) linkedHashMap2.put(id2, new InboundRtpVideo(MediaStreamTrack.VIDEO_TRACK_KIND, video.getSsrc(), video.getCodecPayloadType() != -1 ? new StatsCodec(video.getCodecPayloadType(), video.getCodecName()) : null, payloadBytes, (int) video.getRtpStats().getPackets(), video.getRtpStats().getPacketsLost(), video.getTotalBitrate(), video.getDecode(), new Resolution(video.getWidth(), video.getHeight()), video.getDecoderImplementationName(), (int) video.getFramesDecoded(), video.getFramesDropped(), video.getFrameCounts().getKeyFrames() + video.getFrameCounts().getDeltaFrames(), video.getDecodeFrameRate(), video.getNetworkFrameRate(), video.getRenderFrameRate(), video.getRtcpStats().getFirPackets(), video.getRtcpStats().getNackPackets(), video.getRtcpStats().getPliPackets(), video.getQpSum(), video.getFreezeCount(), video.getPauseCount(), video.getTotalFreezesDuration(), video.getTotalPausesDuration(), video.getTotalFramesDuration(), video.getSumOfSquaredFramesDurations())); } j7 = bytesReceived; } diff --git a/app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdate.java b/app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdate.java new file mode 100644 index 0000000000..bbe16b8848 --- /dev/null +++ b/app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdate.java @@ -0,0 +1,48 @@ +package com.discord.analytics.generated.events; + +import c.d.b.a.a; +import c0.z.d.m; +import com.discord.analytics.generated.traits.TrackBase; +import com.discord.analytics.generated.traits.TrackBaseReceiver; +import com.discord.api.science.AnalyticsSchema; +/* compiled from: TrackNotifyStreamSettingUpdate.kt */ +public final class TrackNotifyStreamSettingUpdate implements AnalyticsSchema, TrackBaseReceiver { + private final transient String analyticsSchemaTypeName = "notify_stream_setting_update"; + private final Boolean prechecked = null; + private TrackBase trackBase; + private final Boolean value = null; + + @Override // com.discord.api.science.AnalyticsSchema + public String b() { + return this.analyticsSchemaTypeName; + } + + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (!(obj instanceof TrackNotifyStreamSettingUpdate)) { + return false; + } + TrackNotifyStreamSettingUpdate trackNotifyStreamSettingUpdate = (TrackNotifyStreamSettingUpdate) obj; + return m.areEqual(this.value, trackNotifyStreamSettingUpdate.value) && m.areEqual(this.prechecked, trackNotifyStreamSettingUpdate.prechecked); + } + + public int hashCode() { + Boolean bool = this.value; + int i = 0; + int hashCode = (bool != null ? bool.hashCode() : 0) * 31; + Boolean bool2 = this.prechecked; + if (bool2 != null) { + i = bool2.hashCode(); + } + return hashCode + i; + } + + public String toString() { + StringBuilder O = a.O("TrackNotifyStreamSettingUpdate(value="); + O.append(this.value); + O.append(", prechecked="); + return a.B(O, this.prechecked, ")"); + } +} diff --git a/app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdateReceiver.java b/app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdateReceiver.java new file mode 100644 index 0000000000..50a2d43758 --- /dev/null +++ b/app/src/main/java/com/discord/analytics/generated/events/TrackNotifyStreamSettingUpdateReceiver.java @@ -0,0 +1,6 @@ +package com.discord.analytics.generated.events; + +import com.discord.api.science.AnalyticsSchema; +/* compiled from: TrackNotifyStreamSettingUpdate.kt */ +public interface TrackNotifyStreamSettingUpdateReceiver extends AnalyticsSchema { +} diff --git a/app/src/main/java/com/discord/app/DiscordConnectService.java b/app/src/main/java/com/discord/app/DiscordConnectService.java index f4789d699a..171d7430ce 100644 --- a/app/src/main/java/com/discord/app/DiscordConnectService.java +++ b/app/src/main/java/com/discord/app/DiscordConnectService.java @@ -207,7 +207,7 @@ public final class DiscordConnectService extends Service { observable2 = Observable.w(new IllegalStateException("UNAUTHED")); m.checkNotNullExpressionValue(observable2, "Observable.error(Illegal…ateException(\"UNAUTHED\"))"); } else { - c.a.d.l0.a aVar = c.a.d.l0.a.E; + c.a.d.l0.a aVar = c.a.d.l0.a.F; Regex regex = c.a.d.l0.a.s; String path = data.getPath(); if (path == null) { diff --git a/app/src/main/java/com/discord/models/domain/ModelUserSettings.java b/app/src/main/java/com/discord/models/domain/ModelUserSettings.java index 0dfb3caa0e..60c1be1ea4 100644 --- a/app/src/main/java/com/discord/models/domain/ModelUserSettings.java +++ b/app/src/main/java/com/discord/models/domain/ModelUserSettings.java @@ -25,6 +25,7 @@ public class ModelUserSettings implements Model { private Boolean allowAccessibilityDetection; private Boolean animateEmoji; private Integer animateStickers; + private Boolean contactSyncUpsellShown; private ModelCustomStatusSetting customStatus; private Boolean defaultGuildsRestricted; private Boolean developerMode; @@ -252,33 +253,39 @@ public class ModelUserSettings implements Model { break; } break; + case 652639068: + if (nextName.equals("contact_sync_enabled")) { + c2 = 14; + break; + } + break; case 1168748672: if (nextName.equals("custom_status")) { - c2 = 14; + c2 = 15; break; } break; case 1265830244: if (nextName.equals("friend_source_flags")) { - c2 = 15; + c2 = 16; break; } break; case 1776929396: if (nextName.equals("animate_stickers")) { - c2 = 16; + c2 = 17; break; } break; case 2020489111: if (nextName.equals("friend_discovery_flags")) { - c2 = 17; + c2 = 18; break; } break; case 2039062684: if (nextName.equals("default_guilds_restricted")) { - c2 = 18; + c2 = 19; break; } break; @@ -335,18 +342,21 @@ public class ModelUserSettings implements Model { this.inlineEmbedMedia = jsonReader.nextBooleanOrNull(); return; case 14: - this.customStatus = ModelCustomStatusSetting.Parser.INSTANCE.parse(jsonReader); + this.contactSyncUpsellShown = jsonReader.nextBooleanOrNull(); return; case 15: - this.friendSourceFlags = (FriendSourceFlags) jsonReader.parse(new FriendSourceFlags()); + this.customStatus = ModelCustomStatusSetting.Parser.INSTANCE.parse(jsonReader); return; case 16: - this.animateStickers = jsonReader.nextIntOrNull(); + this.friendSourceFlags = (FriendSourceFlags) jsonReader.parse(new FriendSourceFlags()); return; case 17: - this.friendDiscoveryFlags = Integer.valueOf(jsonReader.nextInt(0)); + this.animateStickers = jsonReader.nextIntOrNull(); return; case 18: + this.friendDiscoveryFlags = Integer.valueOf(jsonReader.nextInt(0)); + return; + case 19: this.defaultGuildsRestricted = jsonReader.nextBooleanOrNull(); return; default: @@ -405,6 +415,11 @@ public class ModelUserSettings implements Model { if (friendDiscoveryFlags != null ? !friendDiscoveryFlags.equals(friendDiscoveryFlags2) : friendDiscoveryFlags2 != null) { return false; } + Boolean contactSyncUpsellShown = getContactSyncUpsellShown(); + Boolean contactSyncUpsellShown2 = modelUserSettings.getContactSyncUpsellShown(); + if (contactSyncUpsellShown != null ? !contactSyncUpsellShown.equals(contactSyncUpsellShown2) : contactSyncUpsellShown2 != null) { + return false; + } Boolean showCurrentGame = getShowCurrentGame(); Boolean showCurrentGame2 = modelUserSettings.getShowCurrentGame(); if (showCurrentGame != null ? !showCurrentGame.equals(showCurrentGame2) : showCurrentGame2 != null) { @@ -472,6 +487,10 @@ public class ModelUserSettings implements Model { return this.animateStickers; } + public Boolean getContactSyncUpsellShown() { + return this.contactSyncUpsellShown; + } + public ModelCustomStatusSetting getCustomStatus() { return this.customStatus; } @@ -548,28 +567,30 @@ public class ModelUserSettings implements Model { int hashCode6 = (hashCode5 * 59) + (explicitContentFilter == null ? 43 : explicitContentFilter.hashCode()); Integer friendDiscoveryFlags = getFriendDiscoveryFlags(); int hashCode7 = (hashCode6 * 59) + (friendDiscoveryFlags == null ? 43 : friendDiscoveryFlags.hashCode()); + Boolean contactSyncUpsellShown = getContactSyncUpsellShown(); + int hashCode8 = (hashCode7 * 59) + (contactSyncUpsellShown == null ? 43 : contactSyncUpsellShown.hashCode()); Boolean showCurrentGame = getShowCurrentGame(); - int hashCode8 = (hashCode7 * 59) + (showCurrentGame == null ? 43 : showCurrentGame.hashCode()); + int hashCode9 = (hashCode8 * 59) + (showCurrentGame == null ? 43 : showCurrentGame.hashCode()); Boolean animateEmoji = getAnimateEmoji(); - int hashCode9 = (hashCode8 * 59) + (animateEmoji == null ? 43 : animateEmoji.hashCode()); + int hashCode10 = (hashCode9 * 59) + (animateEmoji == null ? 43 : animateEmoji.hashCode()); Boolean allowAccessibilityDetection = getAllowAccessibilityDetection(); - int hashCode10 = (hashCode9 * 59) + (allowAccessibilityDetection == null ? 43 : allowAccessibilityDetection.hashCode()); + int hashCode11 = (hashCode10 * 59) + (allowAccessibilityDetection == null ? 43 : allowAccessibilityDetection.hashCode()); Integer animateStickers = getAnimateStickers(); - int hashCode11 = (hashCode10 * 59) + (animateStickers == null ? 43 : animateStickers.hashCode()); + int hashCode12 = (hashCode11 * 59) + (animateStickers == null ? 43 : animateStickers.hashCode()); String theme = getTheme(); - int hashCode12 = (hashCode11 * 59) + (theme == null ? 43 : theme.hashCode()); + int hashCode13 = (hashCode12 * 59) + (theme == null ? 43 : theme.hashCode()); List guildFolders = getGuildFolders(); - int hashCode13 = (hashCode12 * 59) + (guildFolders == null ? 43 : guildFolders.hashCode()); + int hashCode14 = (hashCode13 * 59) + (guildFolders == null ? 43 : guildFolders.hashCode()); String locale = getLocale(); - int hashCode14 = (hashCode13 * 59) + (locale == null ? 43 : locale.hashCode()); + int hashCode15 = (hashCode14 * 59) + (locale == null ? 43 : locale.hashCode()); List restrictedGuilds = getRestrictedGuilds(); - int hashCode15 = (hashCode14 * 59) + (restrictedGuilds == null ? 43 : restrictedGuilds.hashCode()); + int hashCode16 = (hashCode15 * 59) + (restrictedGuilds == null ? 43 : restrictedGuilds.hashCode()); FriendSourceFlags friendSourceFlags = getFriendSourceFlags(); - int hashCode16 = (hashCode15 * 59) + (friendSourceFlags == null ? 43 : friendSourceFlags.hashCode()); + int hashCode17 = (hashCode16 * 59) + (friendSourceFlags == null ? 43 : friendSourceFlags.hashCode()); ClientStatus status = getStatus(); - int hashCode17 = (hashCode16 * 59) + (status == null ? 43 : status.hashCode()); + int hashCode18 = (hashCode17 * 59) + (status == null ? 43 : status.hashCode()); ModelCustomStatusSetting customStatus = getCustomStatus(); - int i2 = hashCode17 * 59; + int i2 = hashCode18 * 59; if (customStatus != null) { i = customStatus.hashCode(); } @@ -601,6 +622,8 @@ public class ModelUserSettings implements Model { O.append(getExplicitContentFilter()); O.append(", friendDiscoveryFlags="); O.append(getFriendDiscoveryFlags()); + O.append(", contactSyncUpsellShown="); + O.append(getContactSyncUpsellShown()); O.append(", status="); O.append(getStatus()); O.append(", customStatus="); diff --git a/app/src/main/java/com/discord/restapi/RestAPIParams.java b/app/src/main/java/com/discord/restapi/RestAPIParams.java index 17807cc85d..1529e132bb 100644 --- a/app/src/main/java/com/discord/restapi/RestAPIParams.java +++ b/app/src/main/java/com/discord/restapi/RestAPIParams.java @@ -4284,6 +4284,7 @@ public final class RestAPIParams { private final Boolean animateEmoji; private final Integer animateStickers; private final Boolean blockedMessageBar; + private final Boolean contactSyncEnabled; private final Boolean defaultGuildsRestricted; private final Boolean developerMode; private final Integer explicitContentFilter; @@ -4309,61 +4310,65 @@ public final class RestAPIParams { } public final UserSettings createWithAllowAccessibilityDetection(Boolean bool) { - return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, bool, null, null, 229375, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, bool, null, null, null, 491519, null); } public final UserSettings createWithAllowAnimatedEmojis(Boolean bool) { - return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, bool, null, null, null, 245759, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, bool, null, null, null, null, 507903, null); } public final UserSettings createWithBlockedMessageBar(boolean z2) { - return new UserSettings(null, null, null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, 262111, null); + return new UserSettings(null, null, null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, 524255, null); + } + + public final UserSettings createWithContactSyncUpsellShown() { + return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, Boolean.TRUE, null, 393215, null); } public final UserSettings createWithDeveloperMode(boolean z2) { - return new UserSettings(null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 262141, null); + return new UserSettings(null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 524285, null); } public final UserSettings createWithExplicitContentFilter(int i) { - return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, Integer.valueOf(i), null, null, null, null, 253951, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, Integer.valueOf(i), null, null, null, null, null, 516095, null); } public final UserSettings createWithFriendDiscoveryFlags(Integer num) { - return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, num, 131071, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, num, 262143, null); } public final UserSettings createWithFriendSourceFlags(Boolean bool, Boolean bool2, Boolean bool3) { - return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, new FriendSourceFlags(bool, bool2, bool3), null, null, null, null, null, 258047, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, new FriendSourceFlags(bool, bool2, bool3), null, null, null, null, null, null, 520191, null); } public final UserSettings createWithGuildFolders(List list) { m.checkNotNullParameter(list, "guildFolders"); - return new UserSettings(null, null, null, null, null, null, null, null, null, null, list, null, null, null, null, null, null, null, 261119, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, null, list, null, null, null, null, null, null, null, null, 523263, null); } public final UserSettings createWithInlineAttachmentMedia(boolean z2) { - return new UserSettings(null, null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, 262127, null); + return new UserSettings(null, null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, null, 524271, null); } public final UserSettings createWithInlineEmbedMedia(boolean z2) { - return new UserSettings(null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, null, 262135, null); + return new UserSettings(null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 524279, null); } public final UserSettings createWithLocale(String str) { m.checkNotNullParameter(str, "locale"); - return new UserSettings(null, null, null, null, null, null, str, null, null, null, null, null, null, null, null, null, null, null, 262079, null); + return new UserSettings(null, null, null, null, null, null, str, null, null, null, null, null, null, null, null, null, null, null, null, 524223, null); } public final UserSettings createWithRenderEmbeds(boolean z2) { - return new UserSettings(null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 262139, null); + return new UserSettings(null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 524283, null); } public final UserSettings createWithRestrictedGuilds(Boolean bool, Collection collection) { - return new UserSettings(null, null, null, null, null, null, null, collection, null, null, null, bool, null, null, null, null, null, null, 259967, null); + return new UserSettings(null, null, null, null, null, null, null, collection, null, null, null, bool, null, null, null, null, null, null, null, 522111, null); } public final UserSettings createWithShowCurrentGame(boolean z2) { - return new UserSettings(null, null, null, null, null, null, null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, 261631, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, Boolean.valueOf(z2), null, null, null, null, null, null, null, null, null, 523775, null); } public final UserSettings createWithStatus(ClientStatus clientStatus) { @@ -4374,16 +4379,16 @@ public final class RestAPIParams { Objects.requireNonNull(name, "null cannot be cast to non-null type java.lang.String"); String lowerCase = name.toLowerCase(locale); m.checkNotNullExpressionValue(lowerCase, "(this as java.lang.String).toLowerCase(locale)"); - return new UserSettings(null, null, null, null, null, null, null, null, lowerCase, null, null, null, null, null, null, null, null, null, 261887, null); + return new UserSettings(null, null, null, null, null, null, null, null, lowerCase, null, null, null, null, null, null, null, null, null, null, 524031, null); } public final UserSettings createWithStickerAnimationSettings(Integer num) { - return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, num, null, 196607, null); + return new UserSettings(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, num, null, null, 458751, null); } public final UserSettings createWithTheme(String str) { m.checkNotNullParameter(str, "theme"); - return new UserSettings(str, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 262142, null); + return new UserSettings(str, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 524286, null); } } @@ -4400,7 +4405,7 @@ public final class RestAPIParams { } } - private UserSettings(String str, Boolean bool, Boolean bool2, Boolean bool3, Boolean bool4, Boolean bool5, String str2, Collection collection, String str3, Boolean bool6, Collection collection2, Boolean bool7, FriendSourceFlags friendSourceFlags, Integer num, Boolean bool8, Boolean bool9, Integer num2, Integer num3) { + private UserSettings(String str, Boolean bool, Boolean bool2, Boolean bool3, Boolean bool4, Boolean bool5, String str2, Collection collection, String str3, Boolean bool6, Collection collection2, Boolean bool7, FriendSourceFlags friendSourceFlags, Integer num, Boolean bool8, Boolean bool9, Integer num2, Boolean bool10, Integer num3) { this.theme = str; this.developerMode = bool; this.renderEmbeds = bool2; @@ -4418,12 +4423,13 @@ public final class RestAPIParams { this.animateEmoji = bool8; this.allowAccessibilityDetection = bool9; this.animateStickers = num2; + this.contactSyncEnabled = bool10; this.friendDiscoveryFlags = num3; } /* JADX INFO: this call moved to the top of the method (can break code semantics) */ - public /* synthetic */ UserSettings(String str, Boolean bool, Boolean bool2, Boolean bool3, Boolean bool4, Boolean bool5, String str2, Collection collection, String str3, Boolean bool6, Collection collection2, Boolean bool7, FriendSourceFlags friendSourceFlags, Integer num, Boolean bool8, Boolean bool9, Integer num2, Integer num3, int i, DefaultConstructorMarker defaultConstructorMarker) { - this((i & 1) != 0 ? null : str, (i & 2) != 0 ? null : bool, (i & 4) != 0 ? null : bool2, (i & 8) != 0 ? null : bool3, (i & 16) != 0 ? null : bool4, (i & 32) != 0 ? null : bool5, (i & 64) != 0 ? null : str2, (i & 128) != 0 ? null : collection, (i & 256) != 0 ? null : str3, (i & 512) != 0 ? null : bool6, (i & 1024) != 0 ? null : collection2, (i & 2048) != 0 ? null : bool7, (i & 4096) != 0 ? null : friendSourceFlags, (i & 8192) != 0 ? null : num, (i & 16384) != 0 ? null : bool8, (i & 32768) != 0 ? null : bool9, (i & 65536) != 0 ? null : num2, (i & 131072) != 0 ? null : num3); + public /* synthetic */ UserSettings(String str, Boolean bool, Boolean bool2, Boolean bool3, Boolean bool4, Boolean bool5, String str2, Collection collection, String str3, Boolean bool6, Collection collection2, Boolean bool7, FriendSourceFlags friendSourceFlags, Integer num, Boolean bool8, Boolean bool9, Integer num2, Boolean bool10, Integer num3, int i, DefaultConstructorMarker defaultConstructorMarker) { + this((i & 1) != 0 ? null : str, (i & 2) != 0 ? null : bool, (i & 4) != 0 ? null : bool2, (i & 8) != 0 ? null : bool3, (i & 16) != 0 ? null : bool4, (i & 32) != 0 ? null : bool5, (i & 64) != 0 ? null : str2, (i & 128) != 0 ? null : collection, (i & 256) != 0 ? null : str3, (i & 512) != 0 ? null : bool6, (i & 1024) != 0 ? null : collection2, (i & 2048) != 0 ? null : bool7, (i & 4096) != 0 ? null : friendSourceFlags, (i & 8192) != 0 ? null : num, (i & 16384) != 0 ? null : bool8, (i & 32768) != 0 ? null : bool9, (i & 65536) != 0 ? null : num2, (i & 131072) != 0 ? null : bool10, (i & 262144) != 0 ? null : num3); } public static final UserSettings createWithAllowAccessibilityDetection(Boolean bool) { @@ -4438,6 +4444,10 @@ public final class RestAPIParams { return Companion.createWithBlockedMessageBar(z2); } + public static final UserSettings createWithContactSyncUpsellShown() { + return Companion.createWithContactSyncUpsellShown(); + } + public static final UserSettings createWithDeveloperMode(boolean z2) { return Companion.createWithDeveloperMode(z2); } diff --git a/app/src/main/java/com/discord/stores/StoreContactSync.java b/app/src/main/java/com/discord/stores/StoreContactSync.java index 292dfeb15b..ed47aca83b 100644 --- a/app/src/main/java/com/discord/stores/StoreContactSync.java +++ b/app/src/main/java/com/discord/stores/StoreContactSync.java @@ -37,9 +37,10 @@ public final class StoreContactSync extends StoreV2 { private final RestAPI restAPI; private boolean shouldTryUploadContacts; private final Persister uploadTimestampCache = new Persister<>("CONTACT_SYNC_LAST_UPLOAD_TIME", 0L); + private final StoreUserSettings userSettingsStore; private final StoreUser usersStore; - public StoreContactSync(Dispatcher dispatcher, RestAPI restAPI, Clock clock, StoreUserConnections storeUserConnections, StoreUser storeUser, StoreExperiments storeExperiments, StoreNotices storeNotices) { + public StoreContactSync(Dispatcher dispatcher, RestAPI restAPI, Clock clock, StoreUserConnections storeUserConnections, StoreUser storeUser, StoreExperiments storeExperiments, StoreNotices storeNotices, StoreUserSettings storeUserSettings) { m.checkNotNullParameter(dispatcher, "dispatcher"); m.checkNotNullParameter(restAPI, "restAPI"); m.checkNotNullParameter(clock, "clock"); @@ -47,6 +48,7 @@ public final class StoreContactSync extends StoreV2 { m.checkNotNullParameter(storeUser, "usersStore"); m.checkNotNullParameter(storeExperiments, "experimentsStore"); m.checkNotNullParameter(storeNotices, "noticesStore"); + m.checkNotNullParameter(storeUserSettings, "userSettingsStore"); this.dispatcher = dispatcher; this.restAPI = restAPI; this.clock = clock; @@ -54,6 +56,7 @@ public final class StoreContactSync extends StoreV2 { this.usersStore = storeUser; this.experimentsStore = storeExperiments; this.noticesStore = storeNotices; + this.userSettingsStore = storeUserSettings; } private final StoreNotices.Notice createContactSyncNotice() { @@ -120,15 +123,23 @@ public final class StoreContactSync extends StoreV2 { } ModelConnectedAccount modelConnectedAccount2 = modelConnectedAccount; Boolean bool = this.dismissState.get("CONTACT_SYNC_DISMISS_UPSELL"); + Boolean contactSyncUpsellShown = this.userSettingsStore.getContactSyncUpsellShown(); boolean z2 = false; Experiment userExperiment = this.experimentsStore.getUserExperiment("2021-04_contact_sync_android_main", modelConnectedAccount2 == null); if (userExperiment != null && userExperiment.getBucket() == 1 && modelConnectedAccount2 == null) { UserUtils userUtils = UserUtils.INSTANCE; - if (userUtils.getHasPhone(me2) && (!m.areEqual(bool, Boolean.TRUE)) && userUtils.getAgeMs(me2, ClockFactory.get()) > 604800000) { - z2 = true; + if (userUtils.getHasPhone(me2)) { + Boolean bool2 = Boolean.TRUE; + if ((!m.areEqual(bool, bool2)) && (!m.areEqual(contactSyncUpsellShown, bool2)) && userUtils.getAgeMs(me2, ClockFactory.get()) > 604800000) { + z2 = true; + } } } Experiment userExperiment2 = this.experimentsStore.getUserExperiment("2021-04_contact_sync_android_existing_user_phone_prompt", z2); + Boolean bool3 = Boolean.TRUE; + if (m.areEqual(bool, bool3) && (!m.areEqual(contactSyncUpsellShown, bool3))) { + this.userSettingsStore.updateContactSyncShown(); + } if (z2 && userExperiment2 != null && userExperiment2.getBucket() == 1) { this.noticesStore.requestToShow(createContactSyncNotice()); } diff --git a/app/src/main/java/com/discord/stores/StoreDynamicLink$storeLinkIfExists$1.java b/app/src/main/java/com/discord/stores/StoreDynamicLink$storeLinkIfExists$1.java index dce475c317..619d0590bf 100644 --- a/app/src/main/java/com/discord/stores/StoreDynamicLink$storeLinkIfExists$1.java +++ b/app/src/main/java/com/discord/stores/StoreDynamicLink$storeLinkIfExists$1.java @@ -35,7 +35,7 @@ public final class StoreDynamicLink$storeLinkIfExists$1 implements b implements b implements b getStageChannelsInGuild(long j, Map map, long j2, Map map2, Map map3) { - ArrayList arrayList; - Iterator it; - StageChannel stageChannel; StoreStageChannels storeStageChannels = this; Map map4 = map2; m.checkNotNullParameter(map, "channelsInGuild"); m.checkNotNullParameter(map4, "users"); m.checkNotNullParameter(map3, "voiceStates"); Collection values = map.values(); - ArrayList arrayList2 = new ArrayList(); - Iterator it2 = values.iterator(); - while (it2.hasNext()) { - Channel channel = (Channel) it2.next(); - Map map5 = (Map) a.c(channel, storeStageChannels.stageRolesByChannelSnapshot); - if (map5 != null) { - Set keySet = map5.keySet(); - ArrayList arrayList3 = new ArrayList(); - for (Number number : keySet) { - User user = (User) map4.get(Long.valueOf(number.longValue())); - if (user != null) { - arrayList3.add(user); - } - } - ArrayList arrayList4 = new ArrayList(); - for (Object obj : arrayList3) { - StageRoles r11 = storeStageChannels.m28getUserRolesuOBN1zc(((User) obj).getId(), channel.h()); - if (r11 != null && StageRoles.m43isSpeakerimpl(r11.m45unboximpl())) { - arrayList4.add(obj); - } - } - ArrayList arrayList5 = new ArrayList(o.collectionSizeOrDefault(arrayList4, 10)); - for (User user2 : arrayList4) { - arrayList5.add(Long.valueOf(user2.getId())); - } - Set set = u.toSet(arrayList5); - int size = arrayList3.size() - set.size(); - Long l = (Long) a.c(channel, storeStageChannels.permissionsStore.getPermissionsByChannel()); - boolean z2 = PermissionUtils.can(Permission.CONNECT, l) && PermissionUtils.can(Permission.VIEW_CHANNEL, l); - Map map6 = storeStageChannels.guildsStore.getMembers().get(Long.valueOf(j)); - ArrayList arrayList6 = new ArrayList(); - for (Object obj2 : arrayList3) { - if (set.contains(Long.valueOf(((User) obj2).getId()))) { - arrayList6.add(obj2); - } - } - ArrayList arrayList7 = new ArrayList(o.collectionSizeOrDefault(arrayList6, 10)); - for (User user3 : arrayList6) { - arrayList7.add(new UserGuildMember(user3, map6 != null ? (GuildMember) a.e(user3, map6) : null)); - } - it = it2; - arrayList = arrayList2; - StageRoles r9 = storeStageChannels.m26getMyRolesvisDeB4(channel.h()); - StageInstance stageInstanceForChannel = storeStageChannels.stageInstancesStore.getStageInstanceForChannel(channel.h()); - VoiceState voiceState = map3.get(Long.valueOf(j2)); - Long a = voiceState != null ? voiceState.a() : null; - stageChannel = new StageChannel(channel, arrayList3, r9, set, arrayList7, size, stageInstanceForChannel, z2, a != null && a.longValue() == channel.h(), null); - } else { - it = it2; - arrayList = arrayList2; - stageChannel = null; - } - if (stageChannel != null) { - arrayList.add(stageChannel); - map4 = map2; - arrayList2 = arrayList; - it2 = it; - storeStageChannels = this; - } else { - storeStageChannels = this; - arrayList2 = arrayList; - map4 = map2; - it2 = it; + ArrayList arrayList = new ArrayList(); + for (Object obj : values) { + if (ChannelUtils.z((Channel) obj)) { + arrayList.add(obj); } } - LinkedHashMap linkedHashMap = new LinkedHashMap(f.coerceAtLeast(g0.mapCapacity(o.collectionSizeOrDefault(arrayList2, 10)), 16)); - for (Object obj3 : arrayList2) { - linkedHashMap.put(Long.valueOf(((StageChannel) obj3).getChannel().h()), obj3); + int i = 10; + ArrayList arrayList2 = new ArrayList(o.collectionSizeOrDefault(arrayList, 10)); + Iterator it = arrayList.iterator(); + while (it.hasNext()) { + Channel channel = (Channel) it.next(); + Map map5 = (Map) a.c(channel, storeStageChannels.stageRolesByChannelSnapshot); + if (map5 == null) { + map5 = h0.emptyMap(); + } + Set keySet = map5.keySet(); + ArrayList arrayList3 = new ArrayList(); + for (Number number : keySet) { + User user = (User) map4.get(Long.valueOf(number.longValue())); + if (user != null) { + arrayList3.add(user); + } + } + ArrayList arrayList4 = new ArrayList(); + for (Object obj2 : arrayList3) { + StageRoles r11 = storeStageChannels.m28getUserRolesuOBN1zc(((User) obj2).getId(), channel.h()); + if (r11 != null && StageRoles.m43isSpeakerimpl(r11.m45unboximpl())) { + arrayList4.add(obj2); + } + } + ArrayList arrayList5 = new ArrayList(o.collectionSizeOrDefault(arrayList4, 10)); + for (User user2 : arrayList4) { + arrayList5.add(Long.valueOf(user2.getId())); + } + Set set = u.toSet(arrayList5); + int size = arrayList3.size() - set.size(); + Long l = (Long) a.c(channel, storeStageChannels.permissionsStore.getPermissionsByChannel()); + boolean z2 = PermissionUtils.can(Permission.CONNECT, l) && PermissionUtils.can(Permission.VIEW_CHANNEL, l); + Map map6 = storeStageChannels.guildsStore.getMembers().get(Long.valueOf(j)); + ArrayList arrayList6 = new ArrayList(); + for (Object obj3 : arrayList3) { + if (set.contains(Long.valueOf(((User) obj3).getId()))) { + arrayList6.add(obj3); + } + } + ArrayList arrayList7 = new ArrayList(o.collectionSizeOrDefault(arrayList6, 10)); + for (User user3 : arrayList6) { + arrayList7.add(new UserGuildMember(user3, map6 != null ? (GuildMember) a.e(user3, map6) : null)); + } + StageRoles r9 = storeStageChannels.m26getMyRolesvisDeB4(channel.h()); + StageInstance stageInstanceForChannel = storeStageChannels.stageInstancesStore.getStageInstanceForChannel(channel.h()); + VoiceState voiceState = map3.get(Long.valueOf(j2)); + Long a = voiceState != null ? voiceState.a() : null; + arrayList2.add(new StageChannel(channel, arrayList3, r9, set, arrayList7, size, stageInstanceForChannel, z2, a != null && a.longValue() == channel.h(), null)); + i = 10; + map4 = map2; + arrayList2 = arrayList2; + it = it; + storeStageChannels = this; + } + LinkedHashMap linkedHashMap = new LinkedHashMap(f.coerceAtLeast(g0.mapCapacity(o.collectionSizeOrDefault(arrayList2, i)), 16)); + for (Object obj4 : arrayList2) { + linkedHashMap.put(Long.valueOf(((StageChannel) obj4).getChannel().h()), obj4); } return linkedHashMap; } diff --git a/app/src/main/java/com/discord/stores/StoreStream.java b/app/src/main/java/com/discord/stores/StoreStream.java index 8d062dcfd1..d25c498977 100644 --- a/app/src/main/java/com/discord/stores/StoreStream.java +++ b/app/src/main/java/com/discord/stores/StoreStream.java @@ -1001,7 +1001,7 @@ public final class StoreStream { this.stageSelfPresence = storeStageChannelSelfPresence; StoreAutocomplete storeAutocomplete = new StoreAutocomplete(ObservationDeckProvider.get(), this.dispatcher); this.autocomplete = storeAutocomplete; - StoreContactSync storeContactSync = new StoreContactSync(this.dispatcher, companion.getApi(), this.clock, this.userConnections, this.users, this.experiments, this.notices); + StoreContactSync storeContactSync = new StoreContactSync(this.dispatcher, companion.getApi(), this.clock, this.userConnections, this.users, this.experiments, this.notices, this.userSettings); this.contactSync = storeContactSync; Dispatcher dispatcher2 = this.dispatcher; StoreFriendSuggestions storeFriendSuggestions = new StoreFriendSuggestions(this, dispatcher2, new FriendSuggestionsFetcher(dispatcher2, companion.getApi(), new StoreStream$friendSuggestions$1(this), new StoreStream$friendSuggestions$2(this))); diff --git a/app/src/main/java/com/discord/stores/StoreUserSettings.java b/app/src/main/java/com/discord/stores/StoreUserSettings.java index a3b109719c..1b1d294b2e 100644 --- a/app/src/main/java/com/discord/stores/StoreUserSettings.java +++ b/app/src/main/java/com/discord/stores/StoreUserSettings.java @@ -36,6 +36,7 @@ public final class StoreUserSettings extends Store { private final Persister allowAccessibilityDetectionPublisher; private final Persister allowAnimatedEmojisPublisher; private final Persister autoPlayGifsPublisher; + private Boolean contactSyncUpsellShown; private final SerializedSubject customStatusSubject = new SerializedSubject<>(BehaviorSubject.k0()); private final SerializedSubject defaultGuildsRestrictedSubject = new SerializedSubject<>(BehaviorSubject.k0()); private final Dispatcher dispatcher; @@ -179,6 +180,9 @@ public final class StoreUserSettings extends Store { SerializedSubject serializedSubject4 = this.friendDiscoveryFlagsSubject; serializedSubject4.j.onNext(modelUserSettings.getFriendDiscoveryFlags()); } + if (modelUserSettings.getContactSyncUpsellShown() != null) { + this.contactSyncUpsellShown = modelUserSettings.getContactSyncUpsellShown(); + } } public static /* synthetic */ Observable observeIsAnimatedEmojisEnabled$default(StoreUserSettings storeUserSettings, boolean z2, int i, Object obj) { @@ -228,6 +232,10 @@ public final class StoreUserSettings extends Store { } } + public final Boolean getContactSyncUpsellShown() { + return this.contactSyncUpsellShown; + } + public final boolean getIsAttachmentMediaInline() { return getPrefs().getBoolean("CACHE_KEY_INLINE_ATTACHMENT_MEDIA", true); } @@ -405,6 +413,10 @@ public final class StoreUserSettings extends Store { return q; } + public final void setContactSyncUpsellShown(Boolean bool) { + this.contactSyncUpsellShown = bool; + } + public final void setDefaultGuildsRestricted(AppActivity appActivity, boolean z2, Collection collection) { if (appActivity != null) { Companion.updateUserSettings$default(Companion, appActivity, RestAPIParams.UserSettings.Companion.createWithRestrictedGuilds(Boolean.valueOf(z2), collection), null, 2, null); @@ -551,6 +563,10 @@ public final class StoreUserSettings extends Store { } } + public final Observable updateContactSyncShown() { + return RestAPI.Companion.getApi().updateUserSettings(RestAPIParams.UserSettings.Companion.createWithContactSyncUpsellShown()); + } + public final Observable updateCustomStatus(ModelCustomStatusSetting modelCustomStatusSetting) { return RestAPI.Companion.getApiSerializeNulls().updateUserSettingsCustomStatus(new RestAPIParams.UserSettingsCustomStatus(modelCustomStatusSetting)); } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$10.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$10.java index 98445cf922..9137685816 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$10.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$10.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$10 extends k implements Function3 { public IntentUtils$pathRouterMap$10(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "remoteAuth", "remoteAuth(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "authorize", "authorize(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).remoteAuth(uri, matchResult, context); + return ((RouteHandlers) this.receiver).authorize(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$11.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$11.java index 6e71c84abd..c757bd5b7f 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$11.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$11.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$11 extends k implements Function3 { public IntentUtils$pathRouterMap$11(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "selectPremiumGuild", "selectPremiumGuild(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "remoteAuth", "remoteAuth(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).selectPremiumGuild(uri, matchResult, context); + return ((RouteHandlers) this.receiver).remoteAuth(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$12.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$12.java index 77d538eda1..ddeb35e7f2 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$12.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$12.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$12 extends k implements Function3 { public IntentUtils$pathRouterMap$12(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "handleQuery", "handleQuery(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "selectPremiumGuild", "selectPremiumGuild(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).handleQuery(uri, matchResult, context); + return ((RouteHandlers) this.receiver).selectPremiumGuild(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$13.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$13.java index 4e9d94c5ef..30a9d4a47a 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$13.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$13.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$13 extends k implements Function3 { public IntentUtils$pathRouterMap$13(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "wildCardMatcher", "wildCardMatcher(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "handleQuery", "handleQuery(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).wildCardMatcher(uri, matchResult, context); + return ((RouteHandlers) this.receiver).handleQuery(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$14.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$14.java new file mode 100644 index 0000000000..31532f97e5 --- /dev/null +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$14.java @@ -0,0 +1,21 @@ +package com.discord.utilities.intent; + +import android.content.Context; +import android.net.Uri; +import c0.z.d.k; +import c0.z.d.m; +import com.discord.utilities.intent.RouteHandlers; +import kotlin.jvm.functions.Function3; +import kotlin.text.MatchResult; +/* compiled from: IntentUtils.kt */ +public final /* synthetic */ class IntentUtils$pathRouterMap$14 extends k implements Function3 { + public IntentUtils$pathRouterMap$14(RouteHandlers routeHandlers) { + super(3, routeHandlers, RouteHandlers.class, "wildCardMatcher", "wildCardMatcher(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + } + + public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { + m.checkNotNullParameter(uri, "p1"); + m.checkNotNullParameter(context, "p3"); + return ((RouteHandlers) this.receiver).wildCardMatcher(uri, matchResult, context); + } +} diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$2.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$2.java index 4aa26513dc..51fbff4e62 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$2.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$2.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$2 extends k implements Function3 { public IntentUtils$pathRouterMap$2(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "navigateToFriendsScreen", "navigateToFriendsScreen(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "openEventDetails", "openEventDetails(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).navigateToFriendsScreen(uri, matchResult, context); + return ((RouteHandlers) this.receiver).openEventDetails(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$3.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$3.java index 0e8ba18489..4323980223 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$3.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$3.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$3 extends k implements Function3 { public IntentUtils$pathRouterMap$3(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "selectDirectMessage", "selectDirectMessage(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "navigateToFriendsScreen", "navigateToFriendsScreen(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).selectDirectMessage(uri, matchResult, context); + return ((RouteHandlers) this.receiver).navigateToFriendsScreen(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$4.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$4.java index 46a794b094..463fe42bee 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$4.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$4.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$4 extends k implements Function3 { public IntentUtils$pathRouterMap$4(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "selectUserProfile", "selectUserProfile(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "selectDirectMessage", "selectDirectMessage(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).selectUserProfile(uri, matchResult, context); + return ((RouteHandlers) this.receiver).selectDirectMessage(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$5.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$5.java index 8c9cb567a2..f6b1eb6022 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$5.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$5.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$5 extends k implements Function3 { public IntentUtils$pathRouterMap$5(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "selectFeature", "selectFeature(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "selectUserProfile", "selectUserProfile(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).selectFeature(uri, matchResult, context); + return ((RouteHandlers) this.receiver).selectUserProfile(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$7.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$7.java index 97362341fa..997cdab36e 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$7.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$7.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$7 extends k implements Function3 { public IntentUtils$pathRouterMap$7(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "voiceConnect", "voiceConnect(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "selectFeature", "selectFeature(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).voiceConnect(uri, matchResult, context); + return ((RouteHandlers) this.receiver).selectFeature(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$8.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$8.java index 27d193ef5c..cc4bacaf1f 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$8.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$8.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$8 extends k implements Function3 { public IntentUtils$pathRouterMap$8(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "selectLurk", "selectLurk(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "voiceConnect", "voiceConnect(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).selectLurk(uri, matchResult, context); + return ((RouteHandlers) this.receiver).voiceConnect(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$9.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$9.java index bd2576da95..fd92a88d58 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$9.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils$pathRouterMap$9.java @@ -10,12 +10,12 @@ import kotlin.text.MatchResult; /* compiled from: IntentUtils.kt */ public final /* synthetic */ class IntentUtils$pathRouterMap$9 extends k implements Function3 { public IntentUtils$pathRouterMap$9(RouteHandlers routeHandlers) { - super(3, routeHandlers, RouteHandlers.class, "authorize", "authorize(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); + super(3, routeHandlers, RouteHandlers.class, "selectLurk", "selectLurk(Landroid/net/Uri;Lkotlin/text/MatchResult;Landroid/content/Context;)Lcom/discord/utilities/intent/RouteHandlers$AnalyticsMetadata;", 0); } public final RouteHandlers.AnalyticsMetadata invoke(Uri uri, MatchResult matchResult, Context context) { m.checkNotNullParameter(uri, "p1"); m.checkNotNullParameter(context, "p3"); - return ((RouteHandlers) this.receiver).authorize(uri, matchResult, context); + return ((RouteHandlers) this.receiver).selectLurk(uri, matchResult, context); } } diff --git a/app/src/main/java/com/discord/utilities/intent/IntentUtils.java b/app/src/main/java/com/discord/utilities/intent/IntentUtils.java index a8141ce1dc..d77f0a53b8 100644 --- a/app/src/main/java/com/discord/utilities/intent/IntentUtils.java +++ b/app/src/main/java/com/discord/utilities/intent/IntentUtils.java @@ -128,7 +128,7 @@ public final class IntentUtils { m.checkNotNullExpressionValue(parse, NotificationCompat.MessagingStyle.Message.KEY_DATA_URI); if (parse.getScheme() == null) { if (str != null) { - a aVar = a.E; + a aVar = a.F; if (t.startsWith$default(str, a.e, false, 2, null)) { parse = Uri.parse("https://" + str); } @@ -145,7 +145,7 @@ public final class IntentUtils { m.checkNotNullExpressionValue(parse, NotificationCompat.MessagingStyle.Message.KEY_DATA_URI); if (parse.getScheme() == null) { if (str != null) { - a aVar = a.E; + a aVar = a.F; if (t.startsWith$default(str, a.d, false, 2, null)) { parse = Uri.parse("https://" + str); } @@ -159,10 +159,10 @@ public final class IntentUtils { } static { - a aVar = a.E; - Regex regex = a.u; + a aVar = a.F; + Regex regex = a.E; RouteHandlers routeHandlers = RouteHandlers.INSTANCE; - pathRouterMap = h0.mapOf(o.to(a.t, IntentUtils$pathRouterMap$1.INSTANCE), o.to(regex, new IntentUtils$pathRouterMap$2(routeHandlers)), o.to(a.f51w, new IntentUtils$pathRouterMap$3(routeHandlers)), o.to(a.f52x, new IntentUtils$pathRouterMap$4(routeHandlers)), o.to(a.f53y, new IntentUtils$pathRouterMap$5(routeHandlers)), o.to(a.f54z, new IntentUtils$pathRouterMap$6(routeHandlers)), o.to(a.s, new IntentUtils$pathRouterMap$7(routeHandlers)), o.to(a.v, new IntentUtils$pathRouterMap$8(routeHandlers)), o.to(a.B, new IntentUtils$pathRouterMap$9(routeHandlers)), o.to(a.C, new IntentUtils$pathRouterMap$10(routeHandlers)), o.to(a.D, new IntentUtils$pathRouterMap$11(routeHandlers)), o.to(a.A, new IntentUtils$pathRouterMap$12(routeHandlers)), o.to(a.m, new IntentUtils$pathRouterMap$13(routeHandlers))); + pathRouterMap = h0.mapOf(o.to(a.t, IntentUtils$pathRouterMap$1.INSTANCE), o.to(regex, new IntentUtils$pathRouterMap$2(routeHandlers)), o.to(a.u, new IntentUtils$pathRouterMap$3(routeHandlers)), o.to(a.f51w, new IntentUtils$pathRouterMap$4(routeHandlers)), o.to(a.f52x, new IntentUtils$pathRouterMap$5(routeHandlers)), o.to(a.f53y, new IntentUtils$pathRouterMap$6(routeHandlers)), o.to(a.f54z, new IntentUtils$pathRouterMap$7(routeHandlers)), o.to(a.s, new IntentUtils$pathRouterMap$8(routeHandlers)), o.to(a.v, new IntentUtils$pathRouterMap$9(routeHandlers)), o.to(a.B, new IntentUtils$pathRouterMap$10(routeHandlers)), o.to(a.C, new IntentUtils$pathRouterMap$11(routeHandlers)), o.to(a.D, new IntentUtils$pathRouterMap$12(routeHandlers)), o.to(a.A, new IntentUtils$pathRouterMap$13(routeHandlers)), o.to(a.m, new IntentUtils$pathRouterMap$14(routeHandlers))); } private IntentUtils() { @@ -179,7 +179,7 @@ public final class IntentUtils { private final Uri externalize(Uri uri) { Uri.Builder scheme = uri.buildUpon().scheme(Constants.SCHEME); - a aVar = a.E; + a aVar = a.F; return scheme.authority(a.a).build(); } @@ -354,7 +354,7 @@ public final class IntentUtils { } m.checkNotNullExpressionValue(scheme, "uri.scheme ?: \"\""); if (regex.matches(scheme)) { - return a.E.a(uri.getHost()); + return a.F.a(uri.getHost()); } return false; } diff --git a/app/src/main/java/com/discord/utilities/intent/RouteHandlers.java b/app/src/main/java/com/discord/utilities/intent/RouteHandlers.java index 8e64555981..431d9df99d 100644 --- a/app/src/main/java/com/discord/utilities/intent/RouteHandlers.java +++ b/app/src/main/java/com/discord/utilities/intent/RouteHandlers.java @@ -17,6 +17,8 @@ import c0.t.n; import c0.t.u; import c0.z.d.m; import com.discord.BuildConfig; +import com.discord.api.channel.Channel; +import com.discord.models.guild.Guild; import com.discord.stores.StoreAuthentication; import com.discord.stores.StoreInviteSettings; import com.discord.stores.StoreNavigation; @@ -29,6 +31,7 @@ import com.discord.utilities.rx.ObservableExtensionsKt$filterNull$1; import com.discord.utilities.rx.ObservableExtensionsKt$filterNull$2; import com.discord.widgets.chat.input.MentionUtilsKt; import com.discord.widgets.guilds.join.WidgetGuildJoin; +import com.discord.widgets.guildscheduledevent.WidgetGuildScheduledEventDetailsBottomSheet; import com.discord.widgets.media.WidgetQRScanner; import com.discord.widgets.servers.premiumguild.WidgetPremiumGuildSubscription; import com.discord.widgets.tabs.NavigationTab; @@ -266,6 +269,35 @@ public final class RouteHandlers { return new AnalyticsMetadata("friends", null, null, 6, null); } + public final AnalyticsMetadata openEventDetails(Uri uri, MatchResult matchResult, Context context) { + List groupValues; + String str; + List groupValues2; + String str2; + m.checkNotNullParameter(uri, NotificationCompat.MessagingStyle.Message.KEY_DATA_URI); + m.checkNotNullParameter(context, "context"); + long j = 0; + long parseLong = (matchResult == null || (groupValues2 = matchResult.getGroupValues()) == null || (str2 = groupValues2.get(1)) == null) ? 0 : Long.parseLong(str2); + if (!(matchResult == null || (groupValues = matchResult.getGroupValues()) == null || (str = groupValues.get(2)) == null)) { + j = Long.parseLong(str); + } + StoreStream.Companion companion = StoreStream.Companion; + Guild guild = companion.getGuilds().getGuild(parseLong); + Channel channel = guild == null ? companion.getChannels().getChannel(parseLong) : null; + if (guild == null && channel == null) { + WidgetGuildScheduledEventDetailsBottomSheet.Companion.handleInvalidEvent(context); + } else { + WidgetGuildScheduledEventDetailsBottomSheet.Companion.enqueue(j); + if (guild == null) { + guild = channel != null ? companion.getGuilds().getGuild(channel.f()) : null; + } + if (guild != null) { + companion.getGuildSelected().set(guild.getId()); + } + } + return new AnalyticsMetadata("event", null, null, 6, null); + } + public final AnalyticsMetadata remoteAuth(Uri uri, MatchResult matchResult, Context context) { List groupValues; m.checkNotNullParameter(uri, NotificationCompat.MessagingStyle.Message.KEY_DATA_URI); diff --git a/app/src/main/java/com/discord/utilities/platform/Platform.java b/app/src/main/java/com/discord/utilities/platform/Platform.java index 7b980d4473..5dcbd32fe2 100644 --- a/app/src/main/java/com/discord/utilities/platform/Platform.java +++ b/app/src/main/java/com/discord/utilities/platform/Platform.java @@ -1,5 +1,6 @@ package com.discord.utilities.platform; +import androidx.annotation.AttrRes; import androidx.annotation.ColorRes; import androidx.annotation.DrawableRes; import c.d.b.a.a; @@ -13,23 +14,19 @@ import java.util.Objects; import kotlin.jvm.internal.DefaultConstructorMarker; /* compiled from: Platform.kt */ public enum Platform { - XBOX("Xbox Live", Integer.valueOf((int) R.color.xbox), Integer.valueOf((int) R.drawable.ic_account_xbox), Integer.valueOf((int) R.drawable.ic_xbox_white_24dp), false, true, true, 16, null), - BATTLENET("Battle.Net", Integer.valueOf((int) R.color.battlenet), Integer.valueOf((int) R.drawable.ic_account_bnet), Integer.valueOf((int) R.drawable.ic_bnet_white_24dp), false, false, false, 112, null), - FACEBOOK("Facebook", Integer.valueOf((int) R.color.facebook), Integer.valueOf((int) R.drawable.ic_account_facebook), Integer.valueOf((int) R.drawable.ic_facebook_white_24dp), true, false, true, 32, null), - GOOGLE("Google", Integer.valueOf((int) R.color.google), Integer.valueOf((int) R.drawable.ic_account_google), Integer.valueOf((int) R.drawable.ic_google_white_24dp), false, false, false, 112, null), - LEAGUEOFLEGENDS("League of Legends", Integer.valueOf((int) R.color.league_of_legends), Integer.valueOf((int) R.drawable.ic_account_lol), Integer.valueOf((int) R.drawable.ic_lol_white_24dp), false, false, false, 112, null), - OBS("OBS", null, Integer.valueOf((int) R.drawable.ic_account_obs), null, false, false, false, 122, null), - PATREON("Patreon", null, Integer.valueOf((int) R.drawable.ic_account_patreon), null, false, false, false, 122, null), - REDDIT("Reddit", Integer.valueOf((int) R.color.reddit), Integer.valueOf((int) R.drawable.ic_account_reddit), Integer.valueOf((int) R.drawable.ic_reddit_white_24dp), false, false, true, 48, null), - SAMSUNG("Samsung Galaxy", null, null, null, false, true, false, 94, null), - SKYPE("Skype", Integer.valueOf((int) R.color.skype), Integer.valueOf((int) R.drawable.ic_account_skype), Integer.valueOf((int) R.drawable.ic_skype_white_24dp), false, false, false, 112, null), - SPOTIFY("Spotify", Integer.valueOf((int) R.color.spotify), Integer.valueOf((int) R.drawable.ic_account_spotify), Integer.valueOf((int) R.drawable.ic_spotify_white_24dp), false, true, true, 16, null), - STEAM("Steam", Integer.valueOf((int) R.color.steam), Integer.valueOf((int) R.drawable.ic_account_steam), Integer.valueOf((int) R.drawable.ic_steam_white_24dp), false, false, true, 48, null), - TWITCH("Twitch", Integer.valueOf((int) R.color.twitch), Integer.valueOf((int) R.drawable.ic_account_twitch), Integer.valueOf((int) R.drawable.ic_twitch_white_24dp), false, false, true, 48, null), - TWITTER("Twitter", Integer.valueOf((int) R.color.twitter), Integer.valueOf((int) R.drawable.ic_account_twitter), Integer.valueOf((int) R.drawable.ic_twitter_white_24dp), false, false, true, 48, null), - XSPLIT("XSplit", null, Integer.valueOf((int) R.drawable.ic_account_xsplit), null, false, false, false, 122, null), - YOUTUBE("Youtube", Integer.valueOf((int) R.color.youtube), Integer.valueOf((int) R.drawable.ic_account_youtube), Integer.valueOf((int) R.drawable.ic_youtube_gaming_white_24dp), false, false, true, 48, null), - GITHUB("Github", Integer.valueOf((int) R.color.github), Integer.valueOf((int) R.drawable.ic_account_github), Integer.valueOf((int) R.drawable.ic_github_white), false, false, true, 48, null), + BATTLENET("Battle.net", Integer.valueOf((int) R.color.battlenet), Integer.valueOf((int) R.attr.ic_account_battlenet), Integer.valueOf((int) R.drawable.ic_account_battlenet_white_24dp), false, false, false, 112, null), + FACEBOOK("Facebook", Integer.valueOf((int) R.color.facebook), Integer.valueOf((int) R.attr.ic_account_facebook), Integer.valueOf((int) R.drawable.ic_account_facebook_white_24dp), false, false, true, 48, null), + GITHUB("Github", Integer.valueOf((int) R.color.github), Integer.valueOf((int) R.attr.ic_account_github), Integer.valueOf((int) R.drawable.ic_account_github_white_24dp), false, false, true, 48, null), + LEAGUEOFLEGENDS("League of Legends", Integer.valueOf((int) R.color.league_of_legends), Integer.valueOf((int) R.attr.ic_account_league_of_legends), Integer.valueOf((int) R.drawable.ic_account_league_of_legends_white_24dp), false, false, false, 112, null), + REDDIT("Reddit", Integer.valueOf((int) R.color.reddit), Integer.valueOf((int) R.attr.ic_account_reddit), Integer.valueOf((int) R.drawable.ic_account_reddit_white_24dp), false, false, true, 48, null), + SAMSUNG("Samsung Galaxy", null, Integer.valueOf((int) R.attr.ic_account_samsung), Integer.valueOf((int) R.drawable.ic_account_samsung_white_24dp), false, true, false, 82, null), + SKYPE("Skype", Integer.valueOf((int) R.color.skype), Integer.valueOf((int) R.attr.ic_account_skype), Integer.valueOf((int) R.drawable.ic_account_skype_white_24dp), false, false, false, 112, null), + SPOTIFY("Spotify", Integer.valueOf((int) R.color.spotify), Integer.valueOf((int) R.attr.ic_account_spotify), Integer.valueOf((int) R.drawable.ic_account_spotify_white_24dp), false, true, true, 16, null), + STEAM("Steam", Integer.valueOf((int) R.color.steam), Integer.valueOf((int) R.attr.ic_account_steam), Integer.valueOf((int) R.drawable.ic_account_steam_white_24dp), false, false, true, 48, null), + TWITCH("Twitch", Integer.valueOf((int) R.color.twitch), Integer.valueOf((int) R.attr.ic_account_twitch), Integer.valueOf((int) R.drawable.ic_account_twitch_white_24dp), false, false, true, 48, null), + TWITTER("Twitter", Integer.valueOf((int) R.color.twitter), Integer.valueOf((int) R.attr.ic_account_twitter), Integer.valueOf((int) R.drawable.ic_account_twitter_white_24dp), false, false, true, 48, null), + XBOX("Xbox Live", Integer.valueOf((int) R.color.xbox), Integer.valueOf((int) R.attr.ic_account_xbox), Integer.valueOf((int) R.drawable.ic_account_xbox_white_24dp), false, true, true, 16, null), + YOUTUBE("Youtube", Integer.valueOf((int) R.color.youtube), Integer.valueOf((int) R.attr.ic_account_youtube), Integer.valueOf((int) R.drawable.ic_account_youtube_white_24dp), false, false, true, 48, null), NONE(null, null, null, null, false, false, false, 127, null); public static final Companion Companion = new Companion(null); @@ -38,8 +35,8 @@ public enum Platform { private final Integer colorResId; private final boolean enabled; private final String platformId; - private final Integer platformImage; private final String properName; + private final Integer themedPlatformImage; private final Integer whitePlatformImage; /* compiled from: Platform.kt */ @@ -52,9 +49,9 @@ public enum Platform { ActivityPlatform.values(); int[] iArr = new int[7]; $EnumSwitchMapping$0 = iArr; - iArr[ActivityPlatform.XBOX.ordinal()] = 1; - iArr[ActivityPlatform.SAMSUNG.ordinal()] = 2; - iArr[ActivityPlatform.SPOTIFY.ordinal()] = 3; + iArr[ActivityPlatform.SAMSUNG.ordinal()] = 1; + iArr[ActivityPlatform.SPOTIFY.ordinal()] = 2; + iArr[ActivityPlatform.XBOX.ordinal()] = 3; } } @@ -111,23 +108,23 @@ public enum Platform { static { Platform.values(); - int[] iArr = new int[18]; + int[] iArr = new int[14]; $EnumSwitchMapping$0 = iArr; iArr[Platform.FACEBOOK.ordinal()] = 1; - iArr[Platform.SPOTIFY.ordinal()] = 2; - iArr[Platform.STEAM.ordinal()] = 3; - iArr[Platform.YOUTUBE.ordinal()] = 4; - iArr[Platform.REDDIT.ordinal()] = 5; - iArr[Platform.TWITTER.ordinal()] = 6; - iArr[Platform.TWITCH.ordinal()] = 7; - iArr[Platform.GITHUB.ordinal()] = 8; + iArr[Platform.GITHUB.ordinal()] = 2; + iArr[Platform.REDDIT.ordinal()] = 3; + iArr[Platform.SPOTIFY.ordinal()] = 4; + iArr[Platform.STEAM.ordinal()] = 5; + iArr[Platform.TWITCH.ordinal()] = 6; + iArr[Platform.TWITTER.ordinal()] = 7; + iArr[Platform.YOUTUBE.ordinal()] = 8; } } - private Platform(String str, @ColorRes Integer num, @DrawableRes Integer num2, @DrawableRes Integer num3, boolean z2, boolean z3, boolean z4) { + private Platform(String str, @ColorRes Integer num, @AttrRes Integer num2, @DrawableRes Integer num3, boolean z2, boolean z3, boolean z4) { this.properName = str; this.colorResId = num; - this.platformImage = num2; + this.themedPlatformImage = num2; this.whitePlatformImage = num3; this.canSyncFriends = z2; this.canShowActivity = z3; @@ -178,40 +175,36 @@ public enum Platform { return this.platformId; } - public final Integer getPlatformImage() { - return this.platformImage; - } - public final String getProfileUrl(ModelConnectedAccount modelConnectedAccount) { m.checkNotNullParameter(modelConnectedAccount, "connectedAccount"); int ordinal = ordinal(); - if (ordinal == 2) { + if (ordinal == 1) { StringBuilder O = a.O("https://www.facebook.com/"); O.append(modelConnectedAccount.getId()); return O.toString(); - } else if (ordinal == 7) { - StringBuilder O2 = a.O("https://reddit.com/u/"); + } else if (ordinal == 2) { + StringBuilder O2 = a.O("https://github.com/"); O2.append(modelConnectedAccount.getUsername()); return O2.toString(); - } else if (ordinal == 15) { - StringBuilder O3 = a.O("https://youtube.com/channel/"); - O3.append(modelConnectedAccount.getId()); + } else if (ordinal == 4) { + StringBuilder O3 = a.O("https://reddit.com/u/"); + O3.append(modelConnectedAccount.getUsername()); return O3.toString(); - } else if (ordinal != 16) { + } else if (ordinal != 12) { switch (ordinal) { - case 10: + case 7: StringBuilder O4 = a.O("https://open.spotify.com/user/"); O4.append(modelConnectedAccount.getId()); return O4.toString(); - case 11: + case 8: StringBuilder O5 = a.O("https://steamcommunity.com/profiles/"); O5.append(modelConnectedAccount.getId()); return O5.toString(); - case 12: + case 9: StringBuilder O6 = a.O("https://twitch.tv/"); O6.append(modelConnectedAccount.getUsername()); return O6.toString(); - case 13: + case 10: StringBuilder O7 = a.O("https://www.twitter.com/"); O7.append(modelConnectedAccount.getUsername()); return O7.toString(); @@ -219,8 +212,8 @@ public enum Platform { return null; } } else { - StringBuilder O8 = a.O("https://github.com/"); - O8.append(modelConnectedAccount.getUsername()); + StringBuilder O8 = a.O("https://youtube.com/channel/"); + O8.append(modelConnectedAccount.getId()); return O8.toString(); } } @@ -229,6 +222,10 @@ public enum Platform { return this.properName; } + public final Integer getThemedPlatformImage() { + return this.themedPlatformImage; + } + public final Integer getWhitePlatformImage() { return this.whitePlatformImage; } diff --git a/app/src/main/java/com/discord/utilities/sms/SmsListener.java b/app/src/main/java/com/discord/utilities/sms/SmsListener.java index cc6d8e450d..f72867a907 100644 --- a/app/src/main/java/com/discord/utilities/sms/SmsListener.java +++ b/app/src/main/java/com/discord/utilities/sms/SmsListener.java @@ -1,7 +1,7 @@ package com.discord.utilities.sms; +import android.app.Application; import android.content.BroadcastReceiver; -import android.content.Context; import android.content.IntentFilter; import c.c.a.a0.d; import c.i.a.f.e.h.j.k0; @@ -10,6 +10,7 @@ import c.i.a.f.h.b.b; import c.i.a.f.h.b.h; import c.i.a.f.h.b.j; import c0.z.d.m; +import com.discord.utilities.lifecycle.ApplicationProvider; import com.discord.widgets.auth.SmsAuthCodeBroadcastReceiver; import com.google.android.gms.common.Feature; import kotlin.Unit; @@ -37,22 +38,23 @@ public final class SmsListener { SmsListener.access$setBroadcastReceiver$cp(broadcastReceiver); } - public final void startSmsListener(Context context, Function1 function1) { - m.checkNotNullParameter(context, "context"); + public final void startSmsListener(Function1 function1) { m.checkNotNullParameter(function1, "onSuccess"); - h hVar = new h(context); + Application application = ApplicationProvider.INSTANCE.get(); + h hVar = new h(application); p.a aVar = new p.a(null); aVar.a = new j(hVar); aVar.b = new Feature[]{b.b}; d.p(true, "execute parameter required"); hVar.c(new k0(aVar, aVar.b, true)); setBroadcastReceiver(new SmsAuthCodeBroadcastReceiver(function1)); - context.registerReceiver(getBroadcastReceiver(), new IntentFilter("com.google.android.gms.auth.api.phone.SMS_RETRIEVED")); + application.registerReceiver(getBroadcastReceiver(), new IntentFilter("com.google.android.gms.auth.api.phone.SMS_RETRIEVED")); } - public final void stopSmsListener(Context context) { - if (getBroadcastReceiver() != null && context != null) { - context.unregisterReceiver(getBroadcastReceiver()); + public final void stopSmsListener() { + try { + ApplicationProvider.INSTANCE.get().unregisterReceiver(getBroadcastReceiver()); + } catch (Exception unused) { } } } diff --git a/app/src/main/java/com/discord/widgets/auth/WidgetAuthPhoneVerify.java b/app/src/main/java/com/discord/widgets/auth/WidgetAuthPhoneVerify.java index 85ca13d88b..be1ec3e4f6 100644 --- a/app/src/main/java/com/discord/widgets/auth/WidgetAuthPhoneVerify.java +++ b/app/src/main/java/com/discord/widgets/auth/WidgetAuthPhoneVerify.java @@ -215,12 +215,14 @@ public final class WidgetAuthPhoneVerify extends AppFragment { } private final void inputCode(String str) { - getBinding().f2114c.setOnCodeEntered(WidgetAuthPhoneVerify$inputCode$1.INSTANCE); - getBinding().f2114c.setCode(str); - getBinding().f2114c.setOnCodeEntered(new WidgetAuthPhoneVerify$inputCode$2(this)); - Observable d02 = Observable.d0(500, TimeUnit.MILLISECONDS); - m.checkNotNullExpressionValue(d02, "Observable\n .time…L, TimeUnit.MILLISECONDS)"); - ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(d02, this, null, 2, null), WidgetAuthPhoneVerify.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetAuthPhoneVerify$inputCode$3(this), 62, (Object) null); + if (getView() != null) { + getBinding().f2114c.setOnCodeEntered(WidgetAuthPhoneVerify$inputCode$1.INSTANCE); + getBinding().f2114c.setCode(str); + getBinding().f2114c.setOnCodeEntered(new WidgetAuthPhoneVerify$inputCode$2(this)); + Observable d02 = Observable.d0(500, TimeUnit.MILLISECONDS); + m.checkNotNullExpressionValue(d02, "Observable\n .time…L, TimeUnit.MILLISECONDS)"); + ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(d02, this, null, 2, null), WidgetAuthPhoneVerify.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetAuthPhoneVerify$inputCode$3(this), 62, (Object) null); + } } private final void resendCode() { @@ -282,7 +284,7 @@ public final class WidgetAuthPhoneVerify extends AppFragment { @Override // com.discord.app.AppFragment, androidx.fragment.app.Fragment public void onDestroyView() { super.onDestroyView(); - SmsListener.Companion.stopSmsListener(getContext()); + SmsListener.Companion.stopSmsListener(); } @Override // com.discord.app.AppFragment, androidx.fragment.app.Fragment @@ -337,6 +339,6 @@ public final class WidgetAuthPhoneVerify extends AppFragment { } getBinding().f2114c.setOnCodeEntered(new WidgetAuthPhoneVerify$onViewBound$3(this)); registerForContextMenu(getBinding().f2114c); - SmsListener.Companion.startSmsListener(requireContext(), new WidgetAuthPhoneVerify$onViewBound$4(this)); + SmsListener.Companion.startSmsListener(new WidgetAuthPhoneVerify$onViewBound$4(this)); } } diff --git a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$hideAnnouncementChannels$2.java b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$hideAnnouncementChannels$2.java new file mode 100644 index 0000000000..9745017c10 --- /dev/null +++ b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$hideAnnouncementChannels$2.java @@ -0,0 +1,22 @@ +package com.discord.widgets.channels; + +import c0.z.d.o; +import kotlin.jvm.functions.Function0; +/* compiled from: WidgetChannelPickerBottomSheet.kt */ +public final class WidgetChannelPickerBottomSheet$hideAnnouncementChannels$2 extends o implements Function0 { + public final /* synthetic */ WidgetChannelPickerBottomSheet this$0; + + /* JADX INFO: super call moved to the top of the method (can break code semantics) */ + public WidgetChannelPickerBottomSheet$hideAnnouncementChannels$2(WidgetChannelPickerBottomSheet widgetChannelPickerBottomSheet) { + super(0); + this.this$0 = widgetChannelPickerBottomSheet; + } + + /* Return type fixed from 'boolean' to match base method */ + /* JADX WARNING: Unknown variable types count: 1 */ + @Override // kotlin.jvm.functions.Function0 + /* renamed from: invoke */ + public final Boolean mo17invoke() { + return WidgetChannelPickerBottomSheet.access$getArgumentsOrDefault$p(this.this$0).getBoolean("ARG_HIDE_ANNOUNCEMENT_CHANNELS", false); + } +} diff --git a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$viewModel$2.java b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$viewModel$2.java index a6908536dd..d9a07ad1c5 100644 --- a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$viewModel$2.java +++ b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet$viewModel$2.java @@ -17,6 +17,6 @@ public final class WidgetChannelPickerBottomSheet$viewModel$2 extends o implemen @Override // kotlin.jvm.functions.Function0 /* renamed from: invoke */ public final AppViewModel mo17invoke() { - return new WidgetChannelPickerBottomSheetViewModel(WidgetChannelPickerBottomSheet.access$getGuildId$p(this.this$0), WidgetChannelPickerBottomSheet.access$getSelectedChannelId$p(this.this$0), null, null, null, 28, null); + return new WidgetChannelPickerBottomSheetViewModel(WidgetChannelPickerBottomSheet.access$getGuildId$p(this.this$0), WidgetChannelPickerBottomSheet.access$getSelectedChannelId$p(this.this$0), WidgetChannelPickerBottomSheet.access$getHideAnnouncementChannels$p(this.this$0), null, null, null, 56, null); } } diff --git a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet.java b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet.java index c0ea2c9b17..7e9b068594 100644 --- a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet.java +++ b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheet.java @@ -37,6 +37,7 @@ import rx.subscriptions.CompositeSubscription; public final class WidgetChannelPickerBottomSheet extends AppBottomSheet { public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.Z(WidgetChannelPickerBottomSheet.class, "binding", "getBinding()Lcom/discord/databinding/WidgetChannelPickerSheetBinding;", 0)}; private static final String ARG_CHANNEL_PICKER_GUILD_ID = "ARG_CHANNEL_PICKER_GUILD_ID"; + private static final String ARG_HIDE_ANNOUNCEMENT_CHANNELS = "ARG_HIDE_ANNOUNCEMENT_CHANNELS"; private static final String ARG_REQUEST_KEY = "INTENT_EXTRA_REQUEST_CODE"; private static final String ARG_SELECTED_CHANNEL_ID = "ARG_SELECTED_CHANNEL_ID"; private static final int CHANNEL_PICKER_VIEW_FLIPPER_LOADING_STATE = 0; @@ -49,6 +50,7 @@ public final class WidgetChannelPickerBottomSheet extends AppBottomSheet { private WidgetchannelPickerAdapter adapter; private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding$default(this, WidgetChannelPickerBottomSheet$binding$2.INSTANCE, null, 2, null); private final Lazy guildId$delegate = g.lazy(new WidgetChannelPickerBottomSheet$guildId$2(this)); + private final Lazy hideAnnouncementChannels$delegate = g.lazy(new WidgetChannelPickerBottomSheet$hideAnnouncementChannels$2(this)); private final WidgetChannelPickerBottomSheet$itemClickListener$1 itemClickListener; private Function0 onCancel; private final Lazy selectedChannelId$delegate = g.lazy(new WidgetChannelPickerBottomSheet$selectedChannelId$2(this)); @@ -77,17 +79,18 @@ public final class WidgetChannelPickerBottomSheet extends AppBottomSheet { this(); } - public static /* synthetic */ void launch$default(Companion companion, Fragment fragment, String str, long j, Long l, Function0 function0, int i, Object obj) { - companion.launch(fragment, str, j, (i & 8) != 0 ? null : l, (i & 16) != 0 ? null : function0); + public static /* synthetic */ void launch$default(Companion companion, Fragment fragment, String str, long j, Long l, Function0 function0, boolean z2, int i, Object obj) { + companion.launch(fragment, str, j, (i & 8) != 0 ? null : l, (i & 16) != 0 ? null : function0, (i & 32) != 0 ? false : z2); } - public final void launch(Fragment fragment, String str, long j, Long l, Function0 function0) { + public final void launch(Fragment fragment, String str, long j, Long l, Function0 function0, boolean z2) { m.checkNotNullParameter(fragment, "fragment"); m.checkNotNullParameter(str, "requestKey"); WidgetChannelPickerBottomSheet widgetChannelPickerBottomSheet = new WidgetChannelPickerBottomSheet(); Bundle bundle = new Bundle(); bundle.putString(WidgetChannelPickerBottomSheet.ARG_REQUEST_KEY, str); bundle.putLong(WidgetChannelPickerBottomSheet.ARG_CHANNEL_PICKER_GUILD_ID, j); + bundle.putBoolean(WidgetChannelPickerBottomSheet.ARG_HIDE_ANNOUNCEMENT_CHANNELS, z2); if (l != null) { bundle.putLong(WidgetChannelPickerBottomSheet.ARG_SELECTED_CHANNEL_ID, l.longValue()); } @@ -151,6 +154,10 @@ public final class WidgetChannelPickerBottomSheet extends AppBottomSheet { return widgetChannelPickerBottomSheet.getGuildId(); } + public static final /* synthetic */ boolean access$getHideAnnouncementChannels$p(WidgetChannelPickerBottomSheet widgetChannelPickerBottomSheet) { + return widgetChannelPickerBottomSheet.getHideAnnouncementChannels(); + } + public static final /* synthetic */ long access$getSelectedChannelId$p(WidgetChannelPickerBottomSheet widgetChannelPickerBottomSheet) { return widgetChannelPickerBottomSheet.getSelectedChannelId(); } @@ -190,6 +197,10 @@ public final class WidgetChannelPickerBottomSheet extends AppBottomSheet { return ((Number) this.guildId$delegate.getValue()).longValue(); } + private final boolean getHideAnnouncementChannels() { + return ((Boolean) this.hideAnnouncementChannels$delegate.getValue()).booleanValue(); + } + private final long getSelectedChannelId() { return ((Number) this.selectedChannelId$delegate.getValue()).longValue(); } diff --git a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1.java b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1.java index a1f243f4ef..0172cf4a73 100644 --- a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1.java +++ b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1.java @@ -12,13 +12,15 @@ import kotlin.jvm.functions.Function0; /* compiled from: WidgetChannelPickerBottomSheetViewModel.kt */ public final class WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1 extends o implements Function0 { public final /* synthetic */ long $guildId; + public final /* synthetic */ boolean $hideAnnouncementChannels; public final /* synthetic */ StoreChannels $storeChannels; /* JADX INFO: super call moved to the top of the method (can break code semantics) */ - public WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1(StoreChannels storeChannels, long j) { + public WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1(StoreChannels storeChannels, long j, boolean z2) { super(0); this.$storeChannels = storeChannels; this.$guildId = j; + this.$hideAnnouncementChannels = z2; } @Override // kotlin.jvm.functions.Function0 @@ -27,7 +29,12 @@ public final class WidgetChannelPickerBottomSheetViewModel$Companion$observeStor Map channelsForGuild = this.$storeChannels.getChannelsForGuild(this.$guildId); LinkedHashMap linkedHashMap = new LinkedHashMap(); for (Map.Entry entry : channelsForGuild.entrySet()) { - if (!ChannelUtils.k(entry.getValue())) { + Channel value = entry.getValue(); + boolean z2 = false; + if (!ChannelUtils.k(value) && (!this.$hideAnnouncementChannels || !ChannelUtils.i(value))) { + z2 = true; + } + if (z2) { linkedHashMap.put(entry.getKey(), entry.getValue()); } } diff --git a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel.java b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel.java index 2bfc34e8dc..ce1e663c37 100644 --- a/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel.java +++ b/app/src/main/java/com/discord/widgets/channels/WidgetChannelPickerBottomSheetViewModel.java @@ -28,6 +28,7 @@ public final class WidgetChannelPickerBottomSheetViewModel extends AppViewModel< public static final Companion Companion = new Companion(null); private StoreState currentStoreState; private final long guildId; + private final boolean hideAnnouncementChannels; private String searchQuery; private final long selectedChannelId; @@ -66,12 +67,12 @@ public final class WidgetChannelPickerBottomSheetViewModel extends AppViewModel< this(); } - public static final /* synthetic */ Observable access$observeStoreState(Companion companion, long j, ObservationDeck observationDeck, StoreChannels storeChannels) { - return companion.observeStoreState(j, observationDeck, storeChannels); + public static final /* synthetic */ Observable access$observeStoreState(Companion companion, long j, ObservationDeck observationDeck, StoreChannels storeChannels, boolean z2) { + return companion.observeStoreState(j, observationDeck, storeChannels, z2); } - private final Observable observeStoreState(long j, ObservationDeck observationDeck, StoreChannels storeChannels) { - return ObservationDeck.connectRx$default(observationDeck, new ObservationDeck.UpdateSource[]{storeChannels}, false, null, null, new WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1(storeChannels, j), 14, null); + private final Observable observeStoreState(long j, ObservationDeck observationDeck, StoreChannels storeChannels, boolean z2) { + return ObservationDeck.connectRx$default(observationDeck, new ObservationDeck.UpdateSource[]{storeChannels}, false, null, null, new WidgetChannelPickerBottomSheetViewModel$Companion$observeStoreState$1(storeChannels, j, z2), 14, null); } } @@ -224,13 +225,14 @@ public final class WidgetChannelPickerBottomSheetViewModel extends AppViewModel< } /* JADX INFO: super call moved to the top of the method (can break code semantics) */ - public WidgetChannelPickerBottomSheetViewModel(long j, long j2, ObservationDeck observationDeck, StoreChannels storeChannels, Observable observable) { + public WidgetChannelPickerBottomSheetViewModel(long j, long j2, boolean z2, ObservationDeck observationDeck, StoreChannels storeChannels, Observable observable) { super(ViewState.Loading.INSTANCE); m.checkNotNullParameter(observationDeck, "observationDeck"); m.checkNotNullParameter(storeChannels, "storeChannels"); m.checkNotNullParameter(observable, "storeStateObservable"); this.guildId = j; this.selectedChannelId = j2; + this.hideAnnouncementChannels = z2; this.searchQuery = ""; Observable q = observable.q(); m.checkNotNullExpressionValue(q, "storeStateObservable\n … .distinctUntilChanged()"); @@ -238,10 +240,10 @@ public final class WidgetChannelPickerBottomSheetViewModel extends AppViewModel< } /* JADX WARNING: Illegal instructions before constructor call */ - public /* synthetic */ WidgetChannelPickerBottomSheetViewModel(long j, long j2, ObservationDeck observationDeck, StoreChannels storeChannels, Observable observable, int i, DefaultConstructorMarker defaultConstructorMarker) { - this(j, j2, r6, r7, (i & 16) != 0 ? Companion.access$observeStoreState(Companion, j, r6, r7) : observable); - ObservationDeck observationDeck2 = (i & 4) != 0 ? ObservationDeckProvider.get() : observationDeck; - StoreChannels channels = (i & 8) != 0 ? StoreStream.Companion.getChannels() : storeChannels; + public /* synthetic */ WidgetChannelPickerBottomSheetViewModel(long j, long j2, boolean z2, ObservationDeck observationDeck, StoreChannels storeChannels, Observable observable, int i, DefaultConstructorMarker defaultConstructorMarker) { + this(j, j2, z2, r7, r8, (i & 32) != 0 ? Companion.access$observeStoreState(Companion, j, r7, r8, z2) : observable); + ObservationDeck observationDeck2 = (i & 8) != 0 ? ObservationDeckProvider.get() : observationDeck; + StoreChannels channels = (i & 16) != 0 ? StoreStream.Companion.getChannels() : storeChannels; } public static final /* synthetic */ void access$handleStoreState(WidgetChannelPickerBottomSheetViewModel widgetChannelPickerBottomSheetViewModel, StoreState storeState) { diff --git a/app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel$disableAnnouncementChannelType$2.java b/app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel$disableAnnouncementChannelType$2.java new file mode 100644 index 0000000000..43bad4c05e --- /dev/null +++ b/app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel$disableAnnouncementChannelType$2.java @@ -0,0 +1,22 @@ +package com.discord.widgets.channels; + +import c0.z.d.o; +import kotlin.jvm.functions.Function0; +/* compiled from: WidgetCreateChannel.kt */ +public final class WidgetCreateChannel$disableAnnouncementChannelType$2 extends o implements Function0 { + public final /* synthetic */ WidgetCreateChannel this$0; + + /* JADX INFO: super call moved to the top of the method (can break code semantics) */ + public WidgetCreateChannel$disableAnnouncementChannelType$2(WidgetCreateChannel widgetCreateChannel) { + super(0); + this.this$0 = widgetCreateChannel; + } + + /* Return type fixed from 'boolean' to match base method */ + /* JADX WARNING: Unknown variable types count: 1 */ + @Override // kotlin.jvm.functions.Function0 + /* renamed from: invoke */ + public final Boolean mo17invoke() { + return this.this$0.getMostRecentIntent().getBooleanExtra("INTENT_DISABLE_ANNOUNCEMENT_CHANNEL_TYPE", false); + } +} diff --git a/app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel.java b/app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel.java index f967e99129..ec51f3d73b 100644 --- a/app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel.java +++ b/app/src/main/java/com/discord/widgets/channels/WidgetCreateChannel.java @@ -67,6 +67,7 @@ public final class WidgetCreateChannel extends AppFragment { public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.Z(WidgetCreateChannel.class, "binding", "getBinding()Lcom/discord/databinding/WidgetCreateChannelBinding;", 0)}; public static final Companion Companion = new Companion(null); private static final String INTENT_CATEGORY_ID = "INTENT_CATEGORY_ID"; + private static final String INTENT_DISABLE_ANNOUNCEMENT_CHANNEL_TYPE = "INTENT_DISABLE_ANNOUNCEMENT_CHANNEL_TYPE"; private static final String INTENT_DISABLE_PRIVATE_SWITCH = "INTENT_DISABLE_PRIVATE_SWITCH"; private static final String INTENT_GUILD_ID = "INTENT_GUILD_ID"; private static final String INTENT_PROVIDE_RESULT_ONLY = "INTENT_PROVIDE_RESULT_ONLY"; @@ -77,6 +78,7 @@ public final class WidgetCreateChannel extends AppFragment { private static final String RESULT_EXTRA_CHANNEL_NAME = "RESULT_EXTRA_CHANNEL_NAME"; private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding$default(this, WidgetCreateChannel$binding$2.INSTANCE, null, 2, null); private final Lazy categoryId$delegate = g.lazy(new WidgetCreateChannel$categoryId$2(this)); + private final Lazy disableAnnouncementChannelType$delegate = g.lazy(new WidgetCreateChannel$disableAnnouncementChannelType$2(this)); private final Lazy disablePrivateSwitch$delegate = g.lazy(new WidgetCreateChannel$disablePrivateSwitch$2(this)); private final Lazy guildId$delegate = g.lazy(new WidgetCreateChannel$guildId$2(this)); private final LoggingConfig loggingConfig = new LoggingConfig(false, null, WidgetCreateChannel$loggingConfig$1.INSTANCE, 3); @@ -94,8 +96,8 @@ public final class WidgetCreateChannel extends AppFragment { this(); } - public static /* synthetic */ void launch$default(Companion companion, Context context, ActivityResultLauncher activityResultLauncher, long j, int i, Long l, boolean z2, boolean z3, boolean z4, int i2, Object obj) { - companion.launch(context, activityResultLauncher, j, (i2 & 8) != 0 ? 0 : i, (i2 & 16) != 0 ? null : l, (i2 & 32) != 0 ? false : z2, (i2 & 64) != 0 ? false : z3, (i2 & 128) != 0 ? false : z4); + public static /* synthetic */ void launch$default(Companion companion, Context context, ActivityResultLauncher activityResultLauncher, long j, int i, Long l, boolean z2, boolean z3, boolean z4, boolean z5, int i2, Object obj) { + companion.launch(context, activityResultLauncher, j, (i2 & 8) != 0 ? 0 : i, (i2 & 16) != 0 ? null : l, (i2 & 32) != 0 ? false : z2, (i2 & 64) != 0 ? false : z3, (i2 & 128) != 0 ? false : z4, (i2 & 256) != 0 ? false : z5); } public static /* synthetic */ void show$default(Companion companion, Context context, long j, int i, Long l, int i2, Object obj) { @@ -106,7 +108,7 @@ public final class WidgetCreateChannel extends AppFragment { companion.show(context, j, i3, l); } - public final void launch(Context context, ActivityResultLauncher activityResultLauncher, long j, int i, Long l, boolean z2, boolean z3, boolean z4) { + public final void launch(Context context, ActivityResultLauncher activityResultLauncher, long j, int i, Long l, boolean z2, boolean z3, boolean z4, boolean z5) { m.checkNotNullParameter(context, "context"); m.checkNotNullParameter(activityResultLauncher, "launcher"); j jVar = j.g; @@ -117,6 +119,7 @@ public final class WidgetCreateChannel extends AppFragment { intent.putExtra(WidgetCreateChannel.INTENT_PROVIDE_RESULT_ONLY, z3); intent.putExtra(WidgetCreateChannel.INTENT_SHOULD_CHANNEL_DEFAULT_PRIVATE, z2); intent.putExtra(WidgetCreateChannel.INTENT_DISABLE_PRIVATE_SWITCH, z4); + intent.putExtra(WidgetCreateChannel.INTENT_DISABLE_ANNOUNCEMENT_CHANNEL_TYPE, z5); jVar.f(context, activityResultLauncher, WidgetCreateChannel.class, intent); } @@ -362,15 +365,15 @@ public final class WidgetCreateChannel extends AppFragment { AppFragment.setActionBarOptionsMenu$default(this, R.menu.menu_channel_create, new WidgetCreateChannel$configureUI$1(this), null, 4, null); ConstraintLayout constraintLayout = getBinding().b; m.checkNotNullExpressionValue(constraintLayout, "binding.createChannelAnnouncementsContainer"); - int i = 8; - constraintLayout.setVisibility(model.getCanCreateCommunityChannels() ? 0 : 8); + int i = 0; + constraintLayout.setVisibility(model.getCanCreateCommunityChannels() && !getDisableAnnouncementChannelType() ? 0 : 8); ConstraintLayout constraintLayout2 = getBinding().l; m.checkNotNullExpressionValue(constraintLayout2, "binding.createChannelStageContainer"); if (!model.getCanCreateCommunityChannels() || !model.getCanManageRoles()) { z2 = false; } - if (z2) { - i = 0; + if (!z2) { + i = 8; } constraintLayout2.setVisibility(i); RolesAdapter rolesAdapter = this.rolesAdapter; @@ -414,6 +417,10 @@ public final class WidgetCreateChannel extends AppFragment { return radioButton3.isChecked() ? 13 : 0; } + private final boolean getDisableAnnouncementChannelType() { + return ((Boolean) this.disableAnnouncementChannelType$delegate.getValue()).booleanValue(); + } + private final boolean getDisablePrivateSwitch() { return ((Boolean) this.disablePrivateSwitch$delegate.getValue()).booleanValue(); } diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup$onViewBound$$inlined$apply$lambda$1.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup$onViewBound$$inlined$apply$lambda$1.java index 70d5063ded..bf59b27e7c 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup$onViewBound$$inlined$apply$lambda$1.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup$onViewBound$$inlined$apply$lambda$1.java @@ -1,6 +1,7 @@ package com.discord.widgets.guild_role_subscriptions.setup; import c0.z.d.o; +import com.discord.widgets.servers.guild_role_subscription.WidgetServerSettingsEmptyGuildRoleSubscriptions; import java.util.List; import kotlin.Unit; import kotlin.jvm.functions.Function0; @@ -19,6 +20,7 @@ public final class WidgetGuildRoleSubscriptionPlanSetup$onViewBound$$inlined$app @Override // kotlin.jvm.functions.Function0 /* renamed from: invoke */ public final void mo17invoke() { + WidgetServerSettingsEmptyGuildRoleSubscriptions.Companion.launch(this.this$0.requireContext(), WidgetGuildRoleSubscriptionPlanSetup.access$getGuildId$p(this.this$0)); this.this$0.requireActivity().finish(); } } diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup.java index 112b2ffd1b..518c27e4d8 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/setup/WidgetGuildRoleSubscriptionPlanSetup.java @@ -30,6 +30,7 @@ import com.discord.widgets.guild_role_subscriptions.tier.create.WidgetGuildRoleS import com.discord.widgets.guild_role_subscriptions.tier.create.WidgetGuildRoleSubscriptionTierDetails; import com.discord.widgets.guild_role_subscriptions.tier.create.benefits.GuildRoleSubscriptionTierBenefitListType; import com.discord.widgets.guild_role_subscriptions.tier.create.benefits.WidgetGuildRoleSubscriptionTierBenefits; +import com.discord.widgets.servers.guild_role_subscription.WidgetServerSettingsGuildRoleSubscriptionTierList; import java.util.List; import kotlin.Lazy; import kotlin.jvm.functions.Function0; @@ -115,12 +116,13 @@ public final class WidgetGuildRoleSubscriptionPlanSetup extends AppFragment { private final void handleEvents(GuildRoleSubscriptionPlanSetupViewModel.Event event) { if (event instanceof GuildRoleSubscriptionPlanSetupViewModel.Event.SubmitSuccess) { + WidgetServerSettingsGuildRoleSubscriptionTierList.Companion.launch(requireContext(), getGuildId()); FragmentActivity activity = getActivity(); if (activity != null) { activity.finish(); } } else if (event instanceof GuildRoleSubscriptionPlanSetupViewModel.Event.SubmitFailure) { - c.a.d.m.i(this, R.string.default_failure_to_perform_action_message, 0, 4); + ((GuildRoleSubscriptionPlanSetupViewModel.Event.SubmitFailure) event).getError().showToasts(requireContext()); } } diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/GuildRoleSubscriptionTierListItemGeneratorKt.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/GuildRoleSubscriptionTierListItemGeneratorKt.java index 702d82aaf6..836777d88c 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/GuildRoleSubscriptionTierListItemGeneratorKt.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/GuildRoleSubscriptionTierListItemGeneratorKt.java @@ -20,7 +20,7 @@ public final class GuildRoleSubscriptionTierListItemGeneratorKt { } if (guildRoleSubscriptionTier != null) { arrayList.add(new GuildRoleSubscriptionTierAdapterItem.Header(guildRoleSubscriptionTier.getName(), guildRoleSubscriptionTier.getPriceTier(), null, guildRoleSubscriptionTier.getImage(), guildRoleSubscriptionTier.getDescription(), 4, null)); - arrayList.add(new GuildRoleSubscriptionTierAdapterItem.MemberPreview(guildRoleSubscriptionTier.getMemberColor(), null, 2, null)); + arrayList.add(new GuildRoleSubscriptionTierAdapterItem.MemberPreview(guildRoleSubscriptionTier.getMemberColor(), guildRoleSubscriptionTier.getMemberIcon())); if (!guildRoleSubscriptionTier.getChannelBenefits().isEmpty()) { arrayList.add(new GuildRoleSubscriptionTierAdapterItem.SectionHeader(R.plurals.guild_role_subscription_tier_review_exclusive_channel_header_count, guildRoleSubscriptionTier.getChannelBenefits().size())); int i2 = 0; diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel$submit$2.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel$submit$2.java index 40f75ac4e2..f6e3735d7b 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel$submit$2.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel$submit$2.java @@ -25,9 +25,9 @@ public final class CreateGuildRoleSubscriptionTierViewModel$submit$2 extends o i } public final void invoke(Error error) { - m.checkNotNullParameter(error, "it"); + m.checkNotNullParameter(error, "error"); CreateGuildRoleSubscriptionTierViewModel createGuildRoleSubscriptionTierViewModel = this.this$0; createGuildRoleSubscriptionTierViewModel.updateViewState(CreateGuildRoleSubscriptionTierViewModel.ViewState.copy$default(CreateGuildRoleSubscriptionTierViewModel.access$requireViewState(createGuildRoleSubscriptionTierViewModel), 0, false, false, null, 11, null)); - CreateGuildRoleSubscriptionTierViewModel.access$emitEvent(this.this$0, CreateGuildRoleSubscriptionTierViewModel.Event.SubmitFailure.INSTANCE); + CreateGuildRoleSubscriptionTierViewModel.access$emitEvent(this.this$0, new CreateGuildRoleSubscriptionTierViewModel.Event.SubmitFailure(error)); } } diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel.java index 13278451e2..61eef1112b 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/CreateGuildRoleSubscriptionTierViewModel.java @@ -9,6 +9,7 @@ import com.discord.app.AppViewModel; import com.discord.stores.StoreGuildRoleSubscriptions; import com.discord.stores.StoreStream; import com.discord.utilities.color.ColorCompat; +import com.discord.utilities.error.Error; import com.discord.utilities.rest.RestAPI; import com.discord.utilities.rx.ObservableExtensionsKt; import com.discord.widgets.guild_role_subscriptions.GuildRoleSubscriptionUtils; @@ -46,10 +47,55 @@ public final class CreateGuildRoleSubscriptionTierViewModel extends AppViewModel /* compiled from: CreateGuildRoleSubscriptionTierViewModel.kt */ public static final class SubmitFailure extends Event { - public static final SubmitFailure INSTANCE = new SubmitFailure(); + private final Error error; - private SubmitFailure() { + /* JADX INFO: super call moved to the top of the method (can break code semantics) */ + public SubmitFailure(Error error) { super(null); + m.checkNotNullParameter(error, "error"); + this.error = error; + } + + public static /* synthetic */ SubmitFailure copy$default(SubmitFailure submitFailure, Error error, int i, Object obj) { + if ((i & 1) != 0) { + error = submitFailure.error; + } + return submitFailure.copy(error); + } + + public final Error component1() { + return this.error; + } + + public final SubmitFailure copy(Error error) { + m.checkNotNullParameter(error, "error"); + return new SubmitFailure(error); + } + + public boolean equals(Object obj) { + if (this != obj) { + return (obj instanceof SubmitFailure) && m.areEqual(this.error, ((SubmitFailure) obj).error); + } + return true; + } + + public final Error getError() { + return this.error; + } + + public int hashCode() { + Error error = this.error; + if (error != null) { + return error.hashCode(); + } + return 0; + } + + public String toString() { + StringBuilder O = a.O("SubmitFailure(error="); + O.append(this.error); + O.append(")"); + return O.toString(); } } diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetCreateGuildRoleSubscriptionTier.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetCreateGuildRoleSubscriptionTier.java index 13c0c56f52..2cace1ac45 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetCreateGuildRoleSubscriptionTier.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetCreateGuildRoleSubscriptionTier.java @@ -130,7 +130,7 @@ public final class WidgetCreateGuildRoleSubscriptionTier extends AppFragment { activity.finish(); } } else if (event instanceof CreateGuildRoleSubscriptionTierViewModel.Event.SubmitFailure) { - c.a.d.m.i(this, R.string.default_failure_to_perform_action_message, 0, 4); + ((CreateGuildRoleSubscriptionTierViewModel.Event.SubmitFailure) event).getError().showToasts(requireContext()); } } diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetGuildRoleSubscriptionTierDetails.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetGuildRoleSubscriptionTierDetails.java index 8627a5162d..47530c39fd 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetGuildRoleSubscriptionTierDetails.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/WidgetGuildRoleSubscriptionTierDetails.java @@ -108,13 +108,22 @@ public final class WidgetGuildRoleSubscriptionTierDetails extends AppFragment { m.checkNotNullExpressionValue(context, "binding.root.context"); textView.setText(PremiumUtilsKt.getFormattedPriceUsd(intValue, context)); } - if (m.areEqual(guildRoleSubscriptionTier.isPublished(), Boolean.TRUE)) { + Boolean isPublished = guildRoleSubscriptionTier.isPublished(); + Boolean bool = Boolean.TRUE; + if (m.areEqual(isPublished, bool)) { TextView textView2 = getBinding().g; m.checkNotNullExpressionValue(textView2, "binding.createSubscriptionTierPrice"); ViewExtensions.setCompoundDrawableWithIntrinsicBounds$default(textView2, 0, 0, R.drawable.ic_lock_white_a60_16dp, 0, 11, null); - return; + } else { + getBinding().g.setOnClickListener(new WidgetGuildRoleSubscriptionTierDetails$configureUI$1(this)); } - getBinding().g.setOnClickListener(new WidgetGuildRoleSubscriptionTierDetails$configureUI$1(this)); + TextView textView3 = getBinding().g; + m.checkNotNullExpressionValue(textView3, "binding.createSubscriptionTierPrice"); + boolean z2 = true; + if (guildRoleSubscriptionTier.getPriceTier() == null || !(!m.areEqual(guildRoleSubscriptionTier.isPublished(), bool))) { + z2 = false; + } + textView3.setSelected(z2); } private final WidgetGuildRoleSubscriptionDetailsBinding getBinding() { diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUI$1.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUI$1.java index 800c1b4edc..6bd622996c 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUI$1.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUI$1.java @@ -39,6 +39,6 @@ public final class WidgetGuildRoleSubscriptionTierBenefit$configureUI$1 implemen public final void onClick(View view) { WidgetChannelPickerBottomSheet.Companion companion = WidgetChannelPickerBottomSheet.Companion; WidgetGuildRoleSubscriptionTierBenefit widgetGuildRoleSubscriptionTierBenefit = this.this$0; - companion.launch(widgetGuildRoleSubscriptionTierBenefit, "REQUEST_KEY_CHANNEL_PICKER", WidgetGuildRoleSubscriptionTierBenefit.access$getGuildId$p(widgetGuildRoleSubscriptionTierBenefit), this.$viewState.getChannelId(), new AnonymousClass1(this)); + companion.launch(widgetGuildRoleSubscriptionTierBenefit, "REQUEST_KEY_CHANNEL_PICKER", WidgetGuildRoleSubscriptionTierBenefit.access$getGuildId$p(widgetGuildRoleSubscriptionTierBenefit), this.$viewState.getChannelId(), new AnonymousClass1(this), true); } } diff --git a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUIForChannelBenefit$2.java b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUIForChannelBenefit$2.java index 497e201a49..f9fdf9317e 100644 --- a/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUIForChannelBenefit$2.java +++ b/app/src/main/java/com/discord/widgets/guild_role_subscriptions/tier/create/benefits/WidgetGuildRoleSubscriptionTierBenefit$configureUIForChannelBenefit$2.java @@ -17,6 +17,6 @@ public final class WidgetGuildRoleSubscriptionTierBenefit$configureUIForChannelB @Override // kotlin.jvm.functions.Function0 /* renamed from: invoke */ public final void mo17invoke() { - WidgetCreateChannel.Companion.launch$default(WidgetCreateChannel.Companion, this.this$0.requireContext(), WidgetGuildRoleSubscriptionTierBenefit.access$getCreateChannelLauncher$p(this.this$0), WidgetGuildRoleSubscriptionTierBenefit.access$getGuildId$p(this.this$0), 0, null, true, true, true, 24, null); + WidgetCreateChannel.Companion.launch$default(WidgetCreateChannel.Companion, this.this$0.requireContext(), WidgetGuildRoleSubscriptionTierBenefit.access$getCreateChannelLauncher$p(this.this$0), WidgetGuildRoleSubscriptionTierBenefit.access$getGuildId$p(this.this$0), 0, null, true, true, true, true, 24, null); } } diff --git a/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1.java b/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1.java index 9e7603e5a2..745d9e8806 100644 --- a/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1.java +++ b/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1.java @@ -4,16 +4,21 @@ import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; import c0.z.d.m; import c0.z.d.o; +import com.discord.stores.StoreNotices; import com.discord.widgets.guildscheduledevent.WidgetGuildScheduledEventDetailsBottomSheet; import kotlin.jvm.functions.Function1; /* compiled from: WidgetGuildScheduledEventDetailsBottomSheet.kt */ public final class WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1 extends o implements Function1 { public final /* synthetic */ long $guildScheduledEventId; + public final /* synthetic */ String $noticeName; + public final /* synthetic */ StoreNotices $storeNotices; /* JADX INFO: super call moved to the top of the method (can break code semantics) */ - public WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1(long j) { + public WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1(long j, StoreNotices storeNotices, String str) { super(1); this.$guildScheduledEventId = j; + this.$storeNotices = storeNotices; + this.$noticeName = str; } /* Return type fixed from 'java.lang.Object' to match base method */ @@ -29,6 +34,7 @@ public final class WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue FragmentManager supportFragmentManager = fragmentActivity.getSupportFragmentManager(); m.checkNotNullExpressionValue(supportFragmentManager, "appActivity.supportFragmentManager"); companion.show(supportFragmentManager, this.$guildScheduledEventId); + StoreNotices.markSeen$default(this.$storeNotices, this.$noticeName, 0, 2, null); return true; } } diff --git a/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet.java b/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet.java index c911e72629..857999d9a5 100644 --- a/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet.java +++ b/app/src/main/java/com/discord/widgets/guildscheduledevent/WidgetGuildScheduledEventDetailsBottomSheet.java @@ -61,7 +61,14 @@ public final class WidgetGuildScheduledEventDetailsBottomSheet extends AppBottom } public final void enqueue(long j) { - StoreStream.Companion.getNotices().requestToShow(new StoreNotices.Notice(a.q("EVENTDETAILS-", j), null, 0, 0, false, m.listOf(a0.getOrCreateKotlinClass(WidgetHome.class)), 0, false, 0, new WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1(j), FontUtils.MAX_FONT_SCALING, null)); + StoreNotices notices = StoreStream.Companion.getNotices(); + String q = a.q("EVENTDETAILS-", j); + notices.requestToShow(new StoreNotices.Notice(q, null, 0, 0, false, m.listOf(a0.getOrCreateKotlinClass(WidgetHome.class)), 0, false, 0, new WidgetGuildScheduledEventDetailsBottomSheet$Companion$enqueue$guildScheduledEventDetailsNotice$1(j, notices, q), FontUtils.MAX_FONT_SCALING, null)); + } + + public final void handleInvalidEvent(Context context) { + c0.z.d.m.checkNotNullParameter(context, "context"); + c.a.d.m.g(context, R.string.inaccessible_channel_link_title, 0, null, 12); } public final void show(FragmentManager fragmentManager, long j) { diff --git a/app/src/main/java/com/discord/widgets/media/WidgetQRScanner.java b/app/src/main/java/com/discord/widgets/media/WidgetQRScanner.java index 9c93e8afce..7460c31d74 100644 --- a/app/src/main/java/com/discord/widgets/media/WidgetQRScanner.java +++ b/app/src/main/java/com/discord/widgets/media/WidgetQRScanner.java @@ -90,7 +90,7 @@ public final class WidgetQRScanner extends AppFragment implements ZXingScannerVi if (result != null && (str = result.a) != null) { Uri parse = Uri.parse(str); if (URLUtil.isValidUrl(str)) { - c.a.d.l0.a aVar = c.a.d.l0.a.E; + c.a.d.l0.a aVar = c.a.d.l0.a.F; m.checkNotNullExpressionValue(parse, NotificationCompat.MessagingStyle.Message.KEY_DATA_URI); } IntentUtils intentUtils = IntentUtils.INSTANCE; @@ -101,7 +101,7 @@ public final class WidgetQRScanner extends AppFragment implements ZXingScannerVi } String path = parse.getPath(); if (path != null) { - c.a.d.l0.a aVar2 = c.a.d.l0.a.E; + c.a.d.l0.a aVar2 = c.a.d.l0.a.F; Regex regex = c.a.d.l0.a.C; m.checkNotNullExpressionValue(path, "it"); matchResult = regex.matchEntire(path); diff --git a/app/src/main/java/com/discord/widgets/roles/RoleIconView.java b/app/src/main/java/com/discord/widgets/roles/RoleIconView.java index 30bd96e86e..e55dad3392 100644 --- a/app/src/main/java/com/discord/widgets/roles/RoleIconView.java +++ b/app/src/main/java/com/discord/widgets/roles/RoleIconView.java @@ -75,6 +75,20 @@ public final class RoleIconView extends FrameLayout { return false; } + private final void setIcon(GuildRole guildRole) { + if (hasIcon(guildRole)) { + SimpleDraweeView simpleDraweeView = this.binding.b; + m.checkNotNullExpressionValue(simpleDraweeView, "binding.roleIconIv"); + IconUtils.setIcon$default(simpleDraweeView, guildRole, (int) R.dimen.role_icon_size, (MGImages.ChangeDetector) null, 8, (Object) null); + } else if (hasUnicodeEmoji(guildRole)) { + ModelEmojiUnicode modelEmojiUnicode = StoreStream.Companion.getEmojis().getUnicodeEmojiSurrogateMap().get(guildRole.k()); + String imageUri = ModelEmojiUnicode.getImageUri(modelEmojiUnicode != null ? modelEmojiUnicode.getCodePoints() : null, getContext()); + SimpleDraweeView simpleDraweeView2 = this.binding.b; + m.checkNotNullExpressionValue(simpleDraweeView2, "binding.roleIconIv"); + IconUtils.setIcon$default(simpleDraweeView2, imageUri, 0, (Function1) null, (MGImages.ChangeDetector) null, 28, (Object) null); + } + } + private final void showRoleIconToast(Context context, GuildRole guildRole) { ModelEmojiUnicode modelEmojiUnicode; EmojiNode emojiNode = hasIcon(guildRole) ? new EmojiNode(guildRole.g(), new RoleIconView$showRoleIconToast$1(guildRole), new EmojiNode.EmojiIdAndType.Unicode(""), DimenUtils.dpToPixels(24), DimenUtils.dpToPixels(24)) : (!hasUnicodeEmoji(guildRole) || (modelEmojiUnicode = StoreStream.Companion.getEmojis().getUnicodeEmojiSurrogateMap().get(guildRole.k())) == null) ? null : EmojiNode.Companion.from(modelEmojiUnicode, DimenUtils.dpToPixels(24)); @@ -93,17 +107,7 @@ public final class RoleIconView extends FrameLayout { return; } setVisibility(0); - if (hasIcon(guildRole)) { - SimpleDraweeView simpleDraweeView = this.binding.b; - m.checkNotNullExpressionValue(simpleDraweeView, "binding.roleIconIv"); - IconUtils.setIcon$default(simpleDraweeView, guildRole, (int) R.dimen.role_icon_size, (MGImages.ChangeDetector) null, 8, (Object) null); - } else if (hasUnicodeEmoji(guildRole)) { - ModelEmojiUnicode modelEmojiUnicode = StoreStream.Companion.getEmojis().getUnicodeEmojiSurrogateMap().get(guildRole.k()); - String imageUri = ModelEmojiUnicode.getImageUri(modelEmojiUnicode != null ? modelEmojiUnicode.getCodePoints() : null, getContext()); - SimpleDraweeView simpleDraweeView2 = this.binding.b; - m.checkNotNullExpressionValue(simpleDraweeView2, "binding.roleIconIv"); - IconUtils.setIcon$default(simpleDraweeView2, imageUri, 0, (Function1) null, (MGImages.ChangeDetector) null, 28, (Object) null); - } + setIcon(guildRole); Context context = getContext(); m.checkNotNullExpressionValue(context, "context"); setContentDescription(b.h(context, R.string.role_icon_alt_text, new Object[]{guildRole.g()}, null, 4)); @@ -120,9 +124,7 @@ public final class RoleIconView extends FrameLayout { return; } setVisibility(0); - SimpleDraweeView simpleDraweeView = this.binding.b; - m.checkNotNullExpressionValue(simpleDraweeView, "binding.roleIconIv"); - IconUtils.setIcon$default(simpleDraweeView, guildRole, (int) R.dimen.role_icon_size, (MGImages.ChangeDetector) null, 8, (Object) null); + setIcon(guildRole); } public final void setRoleIconPreview(String str) { diff --git a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/ServerSettingsGuildRoleSubscriptionViewModel.java b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/ServerSettingsGuildRoleSubscriptionViewModel.java index a5ef51a23e..ad156ce0ac 100644 --- a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/ServerSettingsGuildRoleSubscriptionViewModel.java +++ b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/ServerSettingsGuildRoleSubscriptionViewModel.java @@ -517,8 +517,14 @@ public final class ServerSettingsGuildRoleSubscriptionViewModel extends AppViewM return publishSubject; } + /* JADX WARNING: Removed duplicated region for block: B:24:0x0042 */ + /* JADX WARNING: Removed duplicated region for block: B:25:0x0046 */ + /* JADX WARNING: Removed duplicated region for block: B:28:0x004d */ + /* JADX WARNING: Removed duplicated region for block: B:34:0x0066 */ + /* JADX WARNING: Removed duplicated region for block: B:35:0x006e */ public final void onGuildRoleSubscriptionGroupUpdated(String str, String str2, boolean z2) { boolean z3; + Boolean bool; boolean z4; ViewState requireViewState = requireViewState(); if (!(requireViewState instanceof ViewState.Loaded)) { @@ -529,32 +535,42 @@ public final class ServerSettingsGuildRoleSubscriptionViewModel extends AppViewM GuildRoleSubscriptionGroupListing guildRoleSubscriptionGroupListing = this.guildRoleSubscriptionGroupListing; boolean z5 = false; if (!m.areEqual(guildRoleSubscriptionGroupListing != null ? guildRoleSubscriptionGroupListing.c() : null, str)) { - this.editedGroupDescription = str; - z3 = true; - } else { - this.editedGroupDescription = null; - z3 = false; + if (!(str == null || t.isBlank(str))) { + this.editedGroupDescription = str; + z3 = true; + if (str2 == null || t.isBlank(str2)) { + z5 = true; + } + if (z5) { + this.editedGroupCoverImage = str2; + z3 = true; + } else { + this.editedGroupCoverImage = null; + } + bool = this.fullServerGatingOverwrite; + if (bool == null) { + GuildRoleSubscriptionGroupListing guildRoleSubscriptionGroupListing2 = this.guildRoleSubscriptionGroupListing; + bool = guildRoleSubscriptionGroupListing2 != null ? Boolean.valueOf(guildRoleSubscriptionGroupListing2.d()) : null; + } + if (!(!m.areEqual(bool, Boolean.valueOf(z2)))) { + this.editedIsFullServerGating = Boolean.valueOf(z2); + z4 = true; + } else { + this.editedIsFullServerGating = null; + z4 = z3; + } + updateViewState(ViewState.Loaded.copy$default(loaded, z4, false, 0, 6, null)); + } } - if (str2 == null || t.isBlank(str2)) { - z5 = true; + this.editedGroupDescription = null; + z3 = false; + z5 = true; + if (z5) { } - if (!z5) { - this.editedGroupCoverImage = str2; - z3 = true; - } else { - this.editedGroupCoverImage = null; - } - Boolean bool = this.fullServerGatingOverwrite; + bool = this.fullServerGatingOverwrite; if (bool == null) { - GuildRoleSubscriptionGroupListing guildRoleSubscriptionGroupListing2 = this.guildRoleSubscriptionGroupListing; - bool = guildRoleSubscriptionGroupListing2 != null ? Boolean.valueOf(guildRoleSubscriptionGroupListing2.d()) : null; } - if (!m.areEqual(bool, Boolean.valueOf(z2))) { - this.editedIsFullServerGating = Boolean.valueOf(z2); - z4 = true; - } else { - this.editedIsFullServerGating = null; - z4 = z3; + if (!(!m.areEqual(bool, Boolean.valueOf(z2)))) { } updateViewState(ViewState.Loaded.copy$default(loaded, z4, false, 0, 6, null)); } diff --git a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/WidgetServerSettingsEmptyGuildRoleSubscriptions$onViewBound$1.java b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/WidgetServerSettingsEmptyGuildRoleSubscriptions$onViewBound$1.java index a85572e6b6..2c1b65e73f 100644 --- a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/WidgetServerSettingsEmptyGuildRoleSubscriptions$onViewBound$1.java +++ b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/WidgetServerSettingsEmptyGuildRoleSubscriptions$onViewBound$1.java @@ -13,5 +13,6 @@ public final class WidgetServerSettingsEmptyGuildRoleSubscriptions$onViewBound$1 @Override // android.view.View.OnClickListener public final void onClick(View view) { WidgetGuildRoleSubscriptionPlanSetup.Companion.launch(this.this$0.requireContext(), WidgetServerSettingsEmptyGuildRoleSubscriptions.access$getGuildId$p(this.this$0)); + this.this$0.requireActivity().finish(); } } diff --git a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$deleteTier$2.java b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$deleteTier$2.java index 25aba03b19..76b13593c0 100644 --- a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$deleteTier$2.java +++ b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$deleteTier$2.java @@ -27,8 +27,8 @@ public final class ServerSettingsGuildRoleSubscriptionEditTierViewModel$deleteTi } public final void invoke(Error error) { - m.checkNotNullParameter(error, "it"); + m.checkNotNullParameter(error, "error"); ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$updateViewState(this.this$0, ServerSettingsGuildRoleSubscriptionEditTierViewModel.ViewState.Loaded.copy$default(this.$viewState, false, false, null, false, 7, null)); - ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$emitEvent(this.this$0, ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.DeleteFailure.INSTANCE); + ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$emitEvent(this.this$0, new ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.DeleteFailure(error)); } } diff --git a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$publishTier$2.java b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$publishTier$2.java index 04e299d2d3..8854c18d03 100644 --- a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$publishTier$2.java +++ b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$publishTier$2.java @@ -27,8 +27,8 @@ public final class ServerSettingsGuildRoleSubscriptionEditTierViewModel$publishT } public final void invoke(Error error) { - m.checkNotNullParameter(error, "it"); + m.checkNotNullParameter(error, "error"); ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$updateViewState(this.this$0, ServerSettingsGuildRoleSubscriptionEditTierViewModel.ViewState.Loaded.copy$default(this.$viewState, false, false, null, false, 7, null)); - ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$emitEvent(this.this$0, ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitFailure.INSTANCE); + ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$emitEvent(this.this$0, new ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitFailure(error)); } } diff --git a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$submitChanges$3.java b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$submitChanges$3.java index 507e2bcbf3..360a10109a 100644 --- a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$submitChanges$3.java +++ b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel$submitChanges$3.java @@ -27,8 +27,8 @@ public final class ServerSettingsGuildRoleSubscriptionEditTierViewModel$submitCh } public final void invoke(Error error) { - m.checkNotNullParameter(error, "it"); + m.checkNotNullParameter(error, "error"); ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$updateViewState(this.this$0, ServerSettingsGuildRoleSubscriptionEditTierViewModel.ViewState.Loaded.copy$default(this.$viewState, false, false, null, false, 7, null)); - ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$emitEvent(this.this$0, ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitFailure.INSTANCE); + ServerSettingsGuildRoleSubscriptionEditTierViewModel.access$emitEvent(this.this$0, new ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitFailure(error)); } } diff --git a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel.java b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel.java index bed20b4ec6..a184a42047 100644 --- a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel.java +++ b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/ServerSettingsGuildRoleSubscriptionEditTierViewModel.java @@ -3,6 +3,7 @@ package com.discord.widgets.servers.guild_role_subscription.edit_tier; import android.content.Context; import androidx.annotation.MainThread; import c.d.b.a.a; +import c0.g0.t; import c0.t.u; import c0.z.d.m; import c0.z.d.o; @@ -27,6 +28,7 @@ import com.discord.stores.updates.ObservationDeck; import com.discord.stores.updates.ObservationDeckProvider; import com.discord.utilities.channel.GuildChannelIconUtilsKt; import com.discord.utilities.color.ColorCompat; +import com.discord.utilities.error.Error; import com.discord.utilities.guilds.RoleUtils; import com.discord.utilities.rest.RestAPI; import com.discord.utilities.rx.ObservableExtensionsKt; @@ -113,10 +115,55 @@ public final class ServerSettingsGuildRoleSubscriptionEditTierViewModel extends /* compiled from: ServerSettingsGuildRoleSubscriptionEditTierViewModel.kt */ public static final class DeleteFailure extends Event { - public static final DeleteFailure INSTANCE = new DeleteFailure(); + private final Error error; - private DeleteFailure() { + /* JADX INFO: super call moved to the top of the method (can break code semantics) */ + public DeleteFailure(Error error) { super(null); + m.checkNotNullParameter(error, "error"); + this.error = error; + } + + public static /* synthetic */ DeleteFailure copy$default(DeleteFailure deleteFailure, Error error, int i, Object obj) { + if ((i & 1) != 0) { + error = deleteFailure.error; + } + return deleteFailure.copy(error); + } + + public final Error component1() { + return this.error; + } + + public final DeleteFailure copy(Error error) { + m.checkNotNullParameter(error, "error"); + return new DeleteFailure(error); + } + + public boolean equals(Object obj) { + if (this != obj) { + return (obj instanceof DeleteFailure) && m.areEqual(this.error, ((DeleteFailure) obj).error); + } + return true; + } + + public final Error getError() { + return this.error; + } + + public int hashCode() { + Error error = this.error; + if (error != null) { + return error.hashCode(); + } + return 0; + } + + public String toString() { + StringBuilder O = a.O("DeleteFailure(error="); + O.append(this.error); + O.append(")"); + return O.toString(); } } @@ -185,10 +232,55 @@ public final class ServerSettingsGuildRoleSubscriptionEditTierViewModel extends /* compiled from: ServerSettingsGuildRoleSubscriptionEditTierViewModel.kt */ public static final class SubmitFailure extends Event { - public static final SubmitFailure INSTANCE = new SubmitFailure(); + private final Error error; - private SubmitFailure() { + /* JADX INFO: super call moved to the top of the method (can break code semantics) */ + public SubmitFailure(Error error) { super(null); + m.checkNotNullParameter(error, "error"); + this.error = error; + } + + public static /* synthetic */ SubmitFailure copy$default(SubmitFailure submitFailure, Error error, int i, Object obj) { + if ((i & 1) != 0) { + error = submitFailure.error; + } + return submitFailure.copy(error); + } + + public final Error component1() { + return this.error; + } + + public final SubmitFailure copy(Error error) { + m.checkNotNullParameter(error, "error"); + return new SubmitFailure(error); + } + + public boolean equals(Object obj) { + if (this != obj) { + return (obj instanceof SubmitFailure) && m.areEqual(this.error, ((SubmitFailure) obj).error); + } + return true; + } + + public final Error getError() { + return this.error; + } + + public int hashCode() { + Error error = this.error; + if (error != null) { + return error.hashCode(); + } + return 0; + } + + public String toString() { + StringBuilder O = a.O("SubmitFailure(error="); + O.append(this.error); + O.append(")"); + return O.toString(); } } @@ -648,90 +740,188 @@ public final class ServerSettingsGuildRoleSubscriptionEditTierViewModel extends return publishSubject; } + /* JADX WARNING: Removed duplicated region for block: B:22:0x0050 */ + /* JADX WARNING: Removed duplicated region for block: B:23:0x0055 */ + /* JADX WARNING: Removed duplicated region for block: B:26:0x005d */ + /* JADX WARNING: Removed duplicated region for block: B:36:0x007c */ + /* JADX WARNING: Removed duplicated region for block: B:37:0x0084 */ + /* JADX WARNING: Removed duplicated region for block: B:40:0x008e */ + /* JADX WARNING: Removed duplicated region for block: B:41:0x0093 */ + /* JADX WARNING: Removed duplicated region for block: B:44:0x009b */ + /* JADX WARNING: Removed duplicated region for block: B:45:0x00a3 */ + /* JADX WARNING: Removed duplicated region for block: B:48:0x00ad */ + /* JADX WARNING: Removed duplicated region for block: B:49:0x00b2 */ + /* JADX WARNING: Removed duplicated region for block: B:52:0x00ba */ + /* JADX WARNING: Removed duplicated region for block: B:53:0x00c2 */ + /* JADX WARNING: Removed duplicated region for block: B:56:0x00ca */ + /* JADX WARNING: Removed duplicated region for block: B:57:0x00d2 */ + /* JADX WARNING: Removed duplicated region for block: B:60:0x00dc */ + /* JADX WARNING: Removed duplicated region for block: B:61:0x00e1 */ + /* JADX WARNING: Removed duplicated region for block: B:64:0x00e9 */ + /* JADX WARNING: Removed duplicated region for block: B:65:0x00f1 */ + /* JADX WARNING: Removed duplicated region for block: B:68:0x00fb */ + /* JADX WARNING: Removed duplicated region for block: B:69:0x0100 */ + /* JADX WARNING: Removed duplicated region for block: B:72:0x0108 */ + /* JADX WARNING: Removed duplicated region for block: B:73:0x0110 */ + /* JADX WARNING: Removed duplicated region for block: B:76:0x0118 */ + /* JADX WARNING: Removed duplicated region for block: B:77:0x011a */ public final void onTierUpdated(GuildRoleSubscriptionTier guildRoleSubscriptionTier) { + boolean z2; + String description; + GuildRoleSubscriptionTier guildRoleSubscriptionTier2; + Integer priceTier; + GuildRoleSubscriptionTier guildRoleSubscriptionTier3; + Integer memberColor; + GuildRoleSubscriptionTier guildRoleSubscriptionTier4; + List channelBenefits; + GuildRoleSubscriptionTier guildRoleSubscriptionTier5; + List intangibleBenefits; + GuildRoleSubscriptionTier guildRoleSubscriptionTier6; + boolean z3; String str; + String str2; m.checkNotNullParameter(guildRoleSubscriptionTier, "guildRoleSubscriptionTier"); ViewState requireViewState = requireViewState(); - String str2 = null; + String str3 = null; if (!(requireViewState instanceof ViewState.Loaded)) { requireViewState = null; } ViewState.Loaded loaded = (ViewState.Loaded) requireViewState; if (loaded != null) { - boolean z2 = false; String name = guildRoleSubscriptionTier.getName(); - GuildRoleSubscriptionTier guildRoleSubscriptionTier2 = this.storedGuildRoleSubscriptionTier; - boolean areEqual = m.areEqual(name, guildRoleSubscriptionTier2 != null ? guildRoleSubscriptionTier2.getName() : null); - boolean z3 = true; - if (!areEqual) { - this.editedTierName = guildRoleSubscriptionTier.getName(); - z2 = true; - } else { - this.editedTierName = null; + GuildRoleSubscriptionTier guildRoleSubscriptionTier7 = this.storedGuildRoleSubscriptionTier; + boolean z4 = false; + if (!m.areEqual(name, guildRoleSubscriptionTier7 != null ? guildRoleSubscriptionTier7.getName() : null)) { + String name2 = guildRoleSubscriptionTier.getName(); + if (!(name2 == null || t.isBlank(name2))) { + this.editedTierName = guildRoleSubscriptionTier.getName(); + z2 = true; + description = guildRoleSubscriptionTier.getDescription(); + guildRoleSubscriptionTier2 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(description, guildRoleSubscriptionTier2 == null ? guildRoleSubscriptionTier2.getDescription() : null)) { + String description2 = guildRoleSubscriptionTier.getDescription(); + if (description2 == null || t.isBlank(description2)) { + z4 = true; + } + if (!z4) { + this.editedTierDescription = guildRoleSubscriptionTier.getDescription(); + z2 = true; + if (guildRoleSubscriptionTier.getImage() != null) { + this.editedTierImage = guildRoleSubscriptionTier.getImage(); + z2 = true; + } else { + this.editedTierImage = null; + } + priceTier = guildRoleSubscriptionTier.getPriceTier(); + guildRoleSubscriptionTier3 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(priceTier, guildRoleSubscriptionTier3 != null ? guildRoleSubscriptionTier3.getPriceTier() : null)) { + this.editedTierPrice = guildRoleSubscriptionTier.getPriceTier(); + z2 = true; + } else { + this.editedTierPrice = null; + } + memberColor = guildRoleSubscriptionTier.getMemberColor(); + guildRoleSubscriptionTier4 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(memberColor, guildRoleSubscriptionTier4 != null ? guildRoleSubscriptionTier4.getMemberColor() : null)) { + this.editedMemberColor = guildRoleSubscriptionTier.getMemberColor(); + z2 = true; + } else { + this.editedMemberColor = null; + } + if (guildRoleSubscriptionTier.getMemberIcon() != null) { + this.editedMemberIcon = guildRoleSubscriptionTier.getMemberIcon(); + z2 = true; + } else { + this.editedMemberIcon = null; + } + channelBenefits = guildRoleSubscriptionTier.getChannelBenefits(); + guildRoleSubscriptionTier5 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(channelBenefits, guildRoleSubscriptionTier5 != null ? guildRoleSubscriptionTier5.getChannelBenefits() : null)) { + this.editedChannelBenefits = guildRoleSubscriptionTier.getChannelBenefits(); + z2 = true; + } else { + this.editedChannelBenefits = null; + } + intangibleBenefits = guildRoleSubscriptionTier.getIntangibleBenefits(); + guildRoleSubscriptionTier6 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(intangibleBenefits, guildRoleSubscriptionTier6 != null ? guildRoleSubscriptionTier6.getIntangibleBenefits() : null)) { + this.editedIntangibleBenefits = guildRoleSubscriptionTier.getIntangibleBenefits(); + z3 = true; + } else { + this.editedIntangibleBenefits = null; + z3 = z2; + } + str = this.editedTierName; + if (str != null) { + str2 = str; + } else { + GuildRoleSubscriptionTier guildRoleSubscriptionTier8 = this.storedGuildRoleSubscriptionTier; + if (guildRoleSubscriptionTier8 != null) { + str3 = guildRoleSubscriptionTier8.getName(); + } + str2 = str3; + } + updateViewState(ViewState.Loaded.copy$default(loaded, z3, false, str2, false, 10, null)); + } + } + this.editedTierDescription = null; + if (guildRoleSubscriptionTier.getImage() != null) { + } + priceTier = guildRoleSubscriptionTier.getPriceTier(); + guildRoleSubscriptionTier3 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(priceTier, guildRoleSubscriptionTier3 != null ? guildRoleSubscriptionTier3.getPriceTier() : null)) { + } + memberColor = guildRoleSubscriptionTier.getMemberColor(); + guildRoleSubscriptionTier4 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(memberColor, guildRoleSubscriptionTier4 != null ? guildRoleSubscriptionTier4.getMemberColor() : null)) { + } + if (guildRoleSubscriptionTier.getMemberIcon() != null) { + } + channelBenefits = guildRoleSubscriptionTier.getChannelBenefits(); + guildRoleSubscriptionTier5 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(channelBenefits, guildRoleSubscriptionTier5 != null ? guildRoleSubscriptionTier5.getChannelBenefits() : null)) { + } + intangibleBenefits = guildRoleSubscriptionTier.getIntangibleBenefits(); + guildRoleSubscriptionTier6 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(intangibleBenefits, guildRoleSubscriptionTier6 != null ? guildRoleSubscriptionTier6.getIntangibleBenefits() : null)) { + } + str = this.editedTierName; + if (str != null) { + } + updateViewState(ViewState.Loaded.copy$default(loaded, z3, false, str2, false, 10, null)); + } } - String description = guildRoleSubscriptionTier.getDescription(); - GuildRoleSubscriptionTier guildRoleSubscriptionTier3 = this.storedGuildRoleSubscriptionTier; - if (!m.areEqual(description, guildRoleSubscriptionTier3 != null ? guildRoleSubscriptionTier3.getDescription() : null)) { - this.editedTierDescription = guildRoleSubscriptionTier.getDescription(); - z2 = true; - } else { - this.editedTierDescription = null; + this.editedTierName = null; + z2 = false; + description = guildRoleSubscriptionTier.getDescription(); + guildRoleSubscriptionTier2 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(description, guildRoleSubscriptionTier2 == null ? guildRoleSubscriptionTier2.getDescription() : null)) { } + this.editedTierDescription = null; if (guildRoleSubscriptionTier.getImage() != null) { - this.editedTierImage = guildRoleSubscriptionTier.getImage(); - z2 = true; - } else { - this.editedTierImage = null; } - Integer priceTier = guildRoleSubscriptionTier.getPriceTier(); - GuildRoleSubscriptionTier guildRoleSubscriptionTier4 = this.storedGuildRoleSubscriptionTier; - if (!m.areEqual(priceTier, guildRoleSubscriptionTier4 != null ? guildRoleSubscriptionTier4.getPriceTier() : null)) { - this.editedTierPrice = guildRoleSubscriptionTier.getPriceTier(); - z2 = true; - } else { - this.editedTierPrice = null; + priceTier = guildRoleSubscriptionTier.getPriceTier(); + guildRoleSubscriptionTier3 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(priceTier, guildRoleSubscriptionTier3 != null ? guildRoleSubscriptionTier3.getPriceTier() : null)) { } - Integer memberColor = guildRoleSubscriptionTier.getMemberColor(); - GuildRoleSubscriptionTier guildRoleSubscriptionTier5 = this.storedGuildRoleSubscriptionTier; - if (!m.areEqual(memberColor, guildRoleSubscriptionTier5 != null ? guildRoleSubscriptionTier5.getMemberColor() : null)) { - this.editedMemberColor = guildRoleSubscriptionTier.getMemberColor(); - z2 = true; - } else { - this.editedMemberColor = null; + memberColor = guildRoleSubscriptionTier.getMemberColor(); + guildRoleSubscriptionTier4 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(memberColor, guildRoleSubscriptionTier4 != null ? guildRoleSubscriptionTier4.getMemberColor() : null)) { } if (guildRoleSubscriptionTier.getMemberIcon() != null) { - this.editedMemberIcon = guildRoleSubscriptionTier.getMemberIcon(); - z2 = true; - } else { - this.editedMemberIcon = null; } - List channelBenefits = guildRoleSubscriptionTier.getChannelBenefits(); - GuildRoleSubscriptionTier guildRoleSubscriptionTier6 = this.storedGuildRoleSubscriptionTier; - if (!m.areEqual(channelBenefits, guildRoleSubscriptionTier6 != null ? guildRoleSubscriptionTier6.getChannelBenefits() : null)) { - this.editedChannelBenefits = guildRoleSubscriptionTier.getChannelBenefits(); - z2 = true; - } else { - this.editedChannelBenefits = null; + channelBenefits = guildRoleSubscriptionTier.getChannelBenefits(); + guildRoleSubscriptionTier5 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(channelBenefits, guildRoleSubscriptionTier5 != null ? guildRoleSubscriptionTier5.getChannelBenefits() : null)) { } - List intangibleBenefits = guildRoleSubscriptionTier.getIntangibleBenefits(); - GuildRoleSubscriptionTier guildRoleSubscriptionTier7 = this.storedGuildRoleSubscriptionTier; - if (!m.areEqual(intangibleBenefits, guildRoleSubscriptionTier7 != null ? guildRoleSubscriptionTier7.getIntangibleBenefits() : null)) { - this.editedIntangibleBenefits = guildRoleSubscriptionTier.getIntangibleBenefits(); - } else { - this.editedIntangibleBenefits = null; - z3 = z2; + intangibleBenefits = guildRoleSubscriptionTier.getIntangibleBenefits(); + guildRoleSubscriptionTier6 = this.storedGuildRoleSubscriptionTier; + if (!m.areEqual(intangibleBenefits, guildRoleSubscriptionTier6 != null ? guildRoleSubscriptionTier6.getIntangibleBenefits() : null)) { } - String str3 = this.editedTierName; - if (str3 != null) { - str = str3; - } else { - GuildRoleSubscriptionTier guildRoleSubscriptionTier8 = this.storedGuildRoleSubscriptionTier; - if (guildRoleSubscriptionTier8 != null) { - str2 = guildRoleSubscriptionTier8.getName(); - } - str = str2; + str = this.editedTierName; + if (str != null) { } - updateViewState(ViewState.Loaded.copy$default(loaded, z3, false, str, false, 10, null)); + updateViewState(ViewState.Loaded.copy$default(loaded, z3, false, str2, false, 10, null)); } } diff --git a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/WidgetServerSettingsGuildRoleSubscriptionEditTier.java b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/WidgetServerSettingsGuildRoleSubscriptionEditTier.java index fff3a118e9..eb9e29dcf2 100644 --- a/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/WidgetServerSettingsGuildRoleSubscriptionEditTier.java +++ b/app/src/main/java/com/discord/widgets/servers/guild_role_subscription/edit_tier/WidgetServerSettingsGuildRoleSubscriptionEditTier.java @@ -19,6 +19,7 @@ import com.discord.R; import com.discord.app.AppFragment; import com.discord.app.AppViewFlipper; import com.discord.databinding.WidgetServerSettingsGuildRoleSubscriptionEditTierBinding; +import com.discord.utilities.error.Error; import com.discord.utilities.rx.ObservableExtensionsKt; import com.discord.utilities.view.recycler.ViewPager2ExtensionsKt; import com.discord.utilities.viewbinding.FragmentViewBindingDelegate; @@ -168,14 +169,20 @@ public final class WidgetServerSettingsGuildRoleSubscriptionEditTier extends App return (ServerSettingsGuildRoleSubscriptionEditTierViewModel) this.viewModel$delegate.getValue(); } + private final void handleError(Error error) { + AppFragment.hideKeyboard$default(this, null, 1, null); + error.showToasts(requireContext()); + } + private final void handleEvents(ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event event) { if (event instanceof ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.StoredStateUpdate) { getTierViewModel().setTier(((ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.StoredStateUpdate) event).getGuildRoleSubscriptionTier()); } else if (event instanceof ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitSuccess) { AppFragment.hideKeyboard$default(this, null, 1, null); - } else if (m.areEqual(event, ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitFailure.INSTANCE) || m.areEqual(event, ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.DeleteFailure.INSTANCE)) { - AppFragment.hideKeyboard$default(this, null, 1, null); - c.a.d.m.i(this, R.string.default_failure_to_perform_action_message, 0, 4); + } else if (event instanceof ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitFailure) { + handleError(((ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.SubmitFailure) event).getError()); + } else if (event instanceof ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.DeleteFailure) { + handleError(((ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.DeleteFailure) event).getError()); } else if (m.areEqual(event, ServerSettingsGuildRoleSubscriptionEditTierViewModel.Event.DeleteSuccess.INSTANCE)) { AppFragment.hideKeyboard$default(this, null, 1, null); requireActivity().finish(); diff --git a/app/src/main/java/com/discord/widgets/settings/WidgetSettings.java b/app/src/main/java/com/discord/widgets/settings/WidgetSettings.java index 50cadbda53..40d2d72f0e 100644 --- a/app/src/main/java/com/discord/widgets/settings/WidgetSettings.java +++ b/app/src/main/java/com/discord/widgets/settings/WidgetSettings.java @@ -313,7 +313,7 @@ public final class WidgetSettings extends AppFragment implements OnTabSelectedLi TextView textView = binding.f; m.checkNotNullExpressionValue(textView, "appInfoHeader"); String string = getString(R.string.app_information); - textView.setText(string + " - 100.4 - Alpha (100204)"); + textView.setText(string + " - 100.6 - Alpha (100206)"); binding.A.setOnClickListener(new WidgetSettings$onViewBound$$inlined$with$lambda$3(this)); binding.u.setOnClickListener(WidgetSettings$onViewBound$1$5.INSTANCE); binding.q.setOnClickListener(WidgetSettings$onViewBound$1$6.INSTANCE); diff --git a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnections.java b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnections.java index bba167bf28..11d7425309 100644 --- a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnections.java +++ b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnections.java @@ -33,6 +33,7 @@ import com.discord.models.domain.ModelConnectedAccountIntegration; import com.discord.stores.StoreStream; import com.discord.stores.StoreUserConnections; import com.discord.stores.StoreUserPresence; +import com.discord.utilities.drawable.DrawableCompat; import com.discord.utilities.mg_recycler.MGRecyclerAdapter; import com.discord.utilities.mg_recycler.MGRecyclerAdapterSimple; import com.discord.utilities.mg_recycler.MGRecyclerDataPayload; @@ -164,8 +165,10 @@ public final class WidgetSettingsUserConnections extends AppFragment { m.checkNotNullExpressionValue(id2, "connectedAccount.id"); this.binding.a.setOnClickListener(new WidgetSettingsUserConnections$Adapter$ViewHolder$onConfigure$$inlined$apply$lambda$1(from, this, userConnectionItem)); ImageView imageView = this.binding.f2426c; - Integer platformImage = from.getPlatformImage(); - imageView.setImageResource(platformImage != null ? platformImage.intValue() : 0); + View view = this.itemView; + m.checkNotNullExpressionValue(view, "itemView"); + Integer themedPlatformImage = from.getThemedPlatformImage(); + imageView.setImageResource(DrawableCompat.getThemedDrawableRes$default(view, themedPlatformImage != null ? themedPlatformImage.intValue() : 0, 0, 2, (Object) null)); ImageView imageView2 = this.binding.f2426c; m.checkNotNullExpressionValue(imageView2, "binding.connectedAccountImg"); imageView2.setContentDescription(from.name()); diff --git a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd$Adapter$ViewHolder$onConfigure$1.java b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd$Adapter$ViewHolder$onConfigure$1.java index d6526910f0..f8fa46c3a2 100644 --- a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd$Adapter$ViewHolder$onConfigure$1.java +++ b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd$Adapter$ViewHolder$onConfigure$1.java @@ -20,7 +20,7 @@ public final class WidgetSettingsUserConnectionsAdd$Adapter$ViewHolder$onConfigu @Override // android.view.View.OnClickListener public final void onClick(View view) { this.this$0.getDialogDismissCallback().mo17invoke(); - if (this.$data.getPlatform().ordinal() != 0) { + if (this.$data.getPlatform().ordinal() != 11) { StoreUserConnections userConnections = StoreStream.Companion.getUserConnections(); String platformId = this.$data.getPlatform().getPlatformId(); m.checkNotNullExpressionValue(view, "v"); diff --git a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd.java b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd.java index 6eb47d8436..a2baba5b00 100644 --- a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd.java +++ b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsAdd.java @@ -18,6 +18,7 @@ import com.discord.R; import com.discord.app.AppBottomSheet; import com.discord.databinding.WidgetSettingsConnectionsAddBinding; import com.discord.databinding.WidgetSettingsItemAddConnectedAccountBinding; +import com.discord.utilities.drawable.DrawableCompat; import com.discord.utilities.mg_recycler.MGRecyclerAdapter; import com.discord.utilities.mg_recycler.MGRecyclerAdapterSimple; import com.discord.utilities.mg_recycler.MGRecyclerDataPayload; @@ -51,7 +52,7 @@ public final class WidgetSettingsUserConnectionsAdd extends AppBottomSheet { static { Platform.values(); - int[] iArr = new int[18]; + int[] iArr = new int[14]; $EnumSwitchMapping$0 = iArr; iArr[Platform.XBOX.ordinal()] = 1; } @@ -90,8 +91,10 @@ public final class WidgetSettingsUserConnectionsAdd extends AppBottomSheet { m.checkNotNullExpressionValue(textView, "binding.addConnectedAccountText"); textView.setText(platformItem.getPlatform().getProperName()); ImageView imageView = this.binding.b; - Integer platformImage = platformItem.getPlatform().getPlatformImage(); - imageView.setImageResource(platformImage != null ? platformImage.intValue() : 0); + View view = this.itemView; + m.checkNotNullExpressionValue(view, "itemView"); + Integer themedPlatformImage = platformItem.getPlatform().getThemedPlatformImage(); + imageView.setImageResource(DrawableCompat.getThemedDrawableRes$default(view, themedPlatformImage != null ? themedPlatformImage.intValue() : 0, 0, 2, (Object) null)); this.itemView.setOnClickListener(new WidgetSettingsUserConnectionsAdd$Adapter$ViewHolder$onConfigure$1(this, platformItem)); } } @@ -227,7 +230,7 @@ public final class WidgetSettingsUserConnectionsAdd extends AppBottomSheet { super.onViewCreated(view, bundle); Platform[] values = Platform.values(); ArrayList arrayList = new ArrayList(); - for (int i = 0; i < 18; i++) { + for (int i = 0; i < 14; i++) { Platform platform = values[i]; if (platform.getEnabled()) { arrayList.add(platform); diff --git a/app/src/main/java/com/discord/widgets/status/WidgetGlobalStatusIndicator.java b/app/src/main/java/com/discord/widgets/status/WidgetGlobalStatusIndicator.java index 52a1c12c4b..2965caac6d 100644 --- a/app/src/main/java/com/discord/widgets/status/WidgetGlobalStatusIndicator.java +++ b/app/src/main/java/com/discord/widgets/status/WidgetGlobalStatusIndicator.java @@ -2,6 +2,7 @@ package com.discord.widgets.status; import android.content.Context; import android.graphics.drawable.Drawable; +import android.os.Build; import android.text.SpannableStringBuilder; import android.view.View; import android.widget.ImageView; @@ -166,18 +167,22 @@ public final class WidgetGlobalStatusIndicator extends AppFragment { m.checkNotNullExpressionValue(textView, "binding.indicatorText"); textView.setText(getString(R.string.connecting)); AnimatedVectorDrawableCompat animatedVectorDrawableCompat = null; - if (this.connectingVector == null) { + if (this.connectingVector == null && Build.VERSION.SDK_INT != 28) { this.connectingVector = AnimatedVectorDrawableCompat.create(requireContext(), DrawableCompat.getThemedDrawableRes$default(requireContext(), (int) R.attr.ic_network_connecting_animated_vector, 0, 2, (Object) null)); } ImageView imageView = getBinding().h; imageView.setVisibility(0); - AnimatedVectorDrawableCompat animatedVectorDrawableCompat2 = this.connectingVector; - if (animatedVectorDrawableCompat2 != null) { - animatedVectorDrawableCompat2.registerAnimationCallback(this.connectingVectorReplayCallback); - animatedVectorDrawableCompat2.start(); - animatedVectorDrawableCompat = animatedVectorDrawableCompat2; + if (Build.VERSION.SDK_INT != 28) { + AnimatedVectorDrawableCompat animatedVectorDrawableCompat2 = this.connectingVector; + if (animatedVectorDrawableCompat2 != null) { + animatedVectorDrawableCompat2.registerAnimationCallback(this.connectingVectorReplayCallback); + animatedVectorDrawableCompat2.start(); + animatedVectorDrawableCompat = animatedVectorDrawableCompat2; + } + imageView.setImageDrawable(animatedVectorDrawableCompat); + return; } - imageView.setImageDrawable(animatedVectorDrawableCompat); + imageView.setImageResource(DrawableCompat.getThemedDrawableRes$default(requireContext(), (int) R.attr.ic_network_connecting, 0, 2, (Object) null)); } private final void setupContainerClicks(WidgetGlobalStatusIndicatorViewModel.ViewState.CallOngoing callOngoing) { diff --git a/app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify$autofillCode$2.java b/app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify$autofillCode$2.java new file mode 100644 index 0000000000..49cf5ecd13 --- /dev/null +++ b/app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify$autofillCode$2.java @@ -0,0 +1,29 @@ +package com.discord.widgets.user.phone; + +import c0.z.d.o; +import kotlin.Unit; +import kotlin.jvm.functions.Function1; +/* compiled from: WidgetUserPhoneVerify.kt */ +public final class WidgetUserPhoneVerify$autofillCode$2 extends o implements Function1 { + public final /* synthetic */ String $verificationCode; + public final /* synthetic */ WidgetUserPhoneVerify this$0; + + /* JADX INFO: super call moved to the top of the method (can break code semantics) */ + public WidgetUserPhoneVerify$autofillCode$2(WidgetUserPhoneVerify widgetUserPhoneVerify, String str) { + super(1); + this.this$0 = widgetUserPhoneVerify; + this.$verificationCode = str; + } + + /* Return type fixed from 'java.lang.Object' to match base method */ + /* JADX DEBUG: Method arguments types fixed to match base method, original types: [java.lang.Object] */ + @Override // kotlin.jvm.functions.Function1 + public /* bridge */ /* synthetic */ Unit invoke(Long l) { + invoke(l); + return Unit.a; + } + + public final void invoke(Long l) { + WidgetUserPhoneVerify.access$handleCodeEntered(this.this$0, this.$verificationCode); + } +} diff --git a/app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify.java b/app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify.java index c0b824e444..81d9942b9a 100644 --- a/app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify.java +++ b/app/src/main/java/com/discord/widgets/user/phone/WidgetUserPhoneVerify.java @@ -29,8 +29,10 @@ import com.discord.widgets.user.account.WidgetUserAccountVerifyBase; import java.util.concurrent.TimeUnit; import kotlin.Unit; import kotlin.jvm.functions.Function0; +import kotlin.jvm.functions.Function1; import kotlin.jvm.internal.DefaultConstructorMarker; import kotlin.reflect.KProperty; +import rx.Observable; /* compiled from: WidgetUserPhoneVerify.kt */ public final class WidgetUserPhoneVerify extends WidgetUserAccountVerifyBase { public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.Z(WidgetUserPhoneVerify.class, "binding", "getBinding()Lcom/discord/databinding/WidgetUserPhoneVerifyBinding;", 0)}; @@ -99,12 +101,15 @@ public final class WidgetUserPhoneVerify extends WidgetUserAccountVerifyBase { } private final void autofillCode(String str) { - WidgetUserPhoneVerifyBinding binding = getBinding(); - binding.d.setOnCodeEntered(WidgetUserPhoneVerify$autofillCode$1$1.INSTANCE); - binding.d.setCode(str); - binding.d.setOnCodeEntered(new WidgetUserPhoneVerify$autofillCode$1$2(this)); - Thread.sleep(TimeUnit.SECONDS.toMillis(5)); - handleCodeEntered(str); + if (getView() != null) { + WidgetUserPhoneVerifyBinding binding = getBinding(); + binding.d.setOnCodeEntered(WidgetUserPhoneVerify$autofillCode$1$1.INSTANCE); + binding.d.setCode(str); + binding.d.setOnCodeEntered(new WidgetUserPhoneVerify$autofillCode$1$2(this)); + Observable d02 = Observable.d0(500, TimeUnit.MILLISECONDS); + m.checkNotNullExpressionValue(d02, "Observable\n .time…L, TimeUnit.MILLISECONDS)"); + ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(d02, this, null, 2, null), WidgetUserPhoneVerify.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetUserPhoneVerify$autofillCode$2(this, str), 62, (Object) null); + } } private final WidgetUserPhoneVerifyBinding getBinding() { @@ -139,7 +144,7 @@ public final class WidgetUserPhoneVerify extends WidgetUserAccountVerifyBase { imageView.setVisibility(isForced() ? 8 : 0); binding.b.setOnClickListener(new WidgetUserPhoneVerify$onViewBound$$inlined$with$lambda$1(this)); if (GrowthTeamFeatures.INSTANCE.isAndroidSmsAutofillEnabled()) { - SmsListener.Companion.startSmsListener(requireContext(), new WidgetUserPhoneVerify$onViewBound$2(this)); + SmsListener.Companion.startSmsListener(new WidgetUserPhoneVerify$onViewBound$2(this)); } } } diff --git a/app/src/main/java/com/discord/widgets/user/presence/ViewHolderPlatformRichPresence.java b/app/src/main/java/com/discord/widgets/user/presence/ViewHolderPlatformRichPresence.java index 2681cabf78..3a898cce9f 100644 --- a/app/src/main/java/com/discord/widgets/user/presence/ViewHolderPlatformRichPresence.java +++ b/app/src/main/java/com/discord/widgets/user/presence/ViewHolderPlatformRichPresence.java @@ -21,6 +21,7 @@ import com.discord.models.user.User; import com.discord.stores.StoreStream; import com.discord.stores.StoreUserConnections; import com.discord.utilities.color.ColorCompat; +import com.discord.utilities.drawable.DrawableCompat; import com.discord.utilities.icon.IconUtils; import com.discord.utilities.images.MGImages; import com.discord.utilities.platform.Platform; @@ -67,8 +68,8 @@ public final class ViewHolderPlatformRichPresence extends ViewHolderUserRichPres richPresenceImageSmall3.setImageDrawable(drawable); } } - if (platform == Platform.XBOX && platform.getPlatformImage() != null) { - MGImages.setImage$default(MGImages.INSTANCE, getRichPresenceImageLarge(), platform.getPlatformImage().intValue(), (MGImages.ChangeDetector) null, 4, (Object) null); + if (platform == Platform.XBOX && platform.getThemedPlatformImage() != null) { + MGImages.setImage$default(MGImages.INSTANCE, getRichPresenceImageLarge(), DrawableCompat.getThemedDrawableRes$default(getRichPresenceImageLarge(), platform.getThemedPlatformImage().intValue(), 0, 2, (Object) null), (MGImages.ChangeDetector) null, 4, (Object) null); } else if (getRichPresenceImageLarge().getVisibility() != 0) { if (!(modelRichPresence == null || (primaryApplication = modelRichPresence.getPrimaryApplication()) == null)) { long f = primaryApplication.f(); diff --git a/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView$ViewHolder$onConfigure$1.java b/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView$ViewHolder$onConfigure$1.java index 98b46bcf7f..56222be2de 100644 --- a/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView$ViewHolder$onConfigure$1.java +++ b/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView$ViewHolder$onConfigure$1.java @@ -10,8 +10,8 @@ import kotlin.jvm.functions.Function3; /* compiled from: UserProfileConnectionsView.kt */ public final class UserProfileConnectionsView$ViewHolder$onConfigure$1 implements View.OnClickListener { public final /* synthetic */ Platform $platform; - public final /* synthetic */ int $platformImageRes; public final /* synthetic */ String $profileUrl; + public final /* synthetic */ int $themedPlatformImageRes; public final /* synthetic */ String $username; public final /* synthetic */ UserProfileConnectionsView.ViewHolder this$0; @@ -19,7 +19,7 @@ public final class UserProfileConnectionsView$ViewHolder$onConfigure$1 implement this.this$0 = viewHolder; this.$platform = platform; this.$username = str; - this.$platformImageRes = i; + this.$themedPlatformImageRes = i; this.$profileUrl = str2; } @@ -29,6 +29,6 @@ public final class UserProfileConnectionsView$ViewHolder$onConfigure$1 implement Function3 onConnectedAccountClick = UserProfileConnectionsView.ViewHolder.access$getAdapter$p(this.this$0).getOnConnectedAccountClick(); String str = this.$username; m.checkNotNullExpressionValue(str, "username"); - onConnectedAccountClick.invoke(str, Integer.valueOf(this.$platformImageRes), this.$profileUrl); + onConnectedAccountClick.invoke(str, Integer.valueOf(this.$themedPlatformImageRes), this.$profileUrl); } } diff --git a/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView.java b/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView.java index 3bc272d44c..a5464f5a0c 100644 --- a/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView.java +++ b/app/src/main/java/com/discord/widgets/user/profile/UserProfileConnectionsView.java @@ -15,6 +15,7 @@ import c0.z.d.m; import com.discord.R; import com.discord.databinding.UserProfileConnectionsViewBinding; import com.discord.models.domain.ModelConnectedAccount; +import com.discord.utilities.drawable.DrawableCompat; import com.discord.utilities.mg_recycler.MGRecyclerAdapter; import com.discord.utilities.mg_recycler.MGRecyclerAdapterSimple; import com.discord.utilities.mg_recycler.MGRecyclerDataPayload; @@ -149,15 +150,17 @@ public final class UserProfileConnectionsView extends LinearLayout { ModelConnectedAccount connectedAccount = connectedAccountItem.getConnectedAccount(); String username = connectedAccount.getUsername(); Platform from = Platform.Companion.from(connectedAccount); - Integer platformImage = from.getPlatformImage(); - int intValue = platformImage != null ? platformImage.intValue() : 0; + Integer themedPlatformImage = from.getThemedPlatformImage(); + int intValue = themedPlatformImage != null ? themedPlatformImage.intValue() : 0; String profileUrl = from.getProfileUrl(connectedAccount); - ViewExtensions.setCompoundDrawableWithIntrinsicBounds$default(this.listItemTextView, intValue, 0, 0, 0, 14, null); - this.listItemTextView.setText(connectedAccount.getUsername()); TextView textView = this.listItemTextView; + Integer themedPlatformImage2 = from.getThemedPlatformImage(); + ViewExtensions.setCompoundDrawableWithIntrinsicBounds$default(textView, DrawableCompat.getThemedDrawableRes$default(textView, themedPlatformImage2 != null ? themedPlatformImage2.intValue() : 0, 0, 2, (Object) null), 0, 0, 0, 14, null); + this.listItemTextView.setText(connectedAccount.getUsername()); + TextView textView2 = this.listItemTextView; String format = String.format("%s, %s", Arrays.copyOf(new Object[]{connectedAccount.getType(), connectedAccount.getUsername()}, 2)); m.checkNotNullExpressionValue(format, "java.lang.String.format(format, *args)"); - textView.setContentDescription(format); + textView2.setContentDescription(format); this.itemView.setOnClickListener(new UserProfileConnectionsView$ViewHolder$onConfigure$1(this, from, username, intValue, profileUrl)); } } diff --git a/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet$configureConnectionsSection$onConnectedAccountClick$1.java b/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet$configureConnectionsSection$onConnectedAccountClick$1.java index f3cf3d8904..238e1ef29b 100644 --- a/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet$configureConnectionsSection$onConnectedAccountClick$1.java +++ b/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet$configureConnectionsSection$onConnectedAccountClick$1.java @@ -37,7 +37,7 @@ public final class WidgetUserSheet$configureConnectionsSection$onConnectedAccoun i iVar = new i(); Bundle bundle = new Bundle(); bundle.putString("ARG_USERNAME", str); - bundle.putInt("ARG_PLATFORM_IMAGE_RES", i); + bundle.putInt("ARG_THEMED_PLATFORM_IMAGE_RES", i); bundle.putString("ARG_PROFILE_URL", str2); iVar.setArguments(bundle); iVar.show(parentFragmentManager, i.class.getName()); diff --git a/app/src/main/res/color/guild_role_subscription_price_tier_text_color.xml b/app/src/main/res/color/guild_role_subscription_price_tier_text_color.xml new file mode 100644 index 0000000000..45219c417a --- /dev/null +++ b/app/src/main/res/color/guild_role_subscription_price_tier_text_color.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_bnet.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_bnet.xml deleted file mode 100644 index b2d066ab8c..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_bnet.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_facebook.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_facebook.xml deleted file mode 100644 index 99b0fdfe8c..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_facebook.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_github.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_github.xml deleted file mode 100644 index e6daafb524..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_github.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_github_light_24dp.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_github_light_24dp.xml new file mode 100644 index 0000000000..ae354eeb39 --- /dev/null +++ b/app/src/main/res/drawable-anydpi-v24/ic_account_github_light_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_github_white_24dp.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_github_white_24dp.xml new file mode 100644 index 0000000000..11db2be5b5 --- /dev/null +++ b/app/src/main/res/drawable-anydpi-v24/ic_account_github_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_lol.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_lol.xml deleted file mode 100644 index 8669c9b1d2..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_lol.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_obs.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_obs.xml deleted file mode 100644 index 64945cc905..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_obs.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_patreon.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_patreon.xml deleted file mode 100644 index 2c00706861..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_patreon.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_reddit.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_reddit.xml deleted file mode 100644 index 4c42a95311..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_reddit.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_skype.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_skype.xml deleted file mode 100644 index e0e0fd3a6c..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_skype.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_spotify.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_spotify.xml deleted file mode 100644 index 3e34027ed2..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_spotify.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_steam.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_steam.xml deleted file mode 100644 index 3b4cd387b1..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_steam.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_twitch.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_twitch.xml deleted file mode 100644 index e98e5df186..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_twitch.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_twitter.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_twitter.xml deleted file mode 100644 index f14380efa2..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_twitter.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_xbox.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_xbox.xml deleted file mode 100644 index 306ba81ae1..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_xbox.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_xsplit.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_xsplit.xml deleted file mode 100644 index fa1167d85a..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_account_xsplit.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_account_youtube_light_and_dark_24dp.xml b/app/src/main/res/drawable-anydpi-v24/ic_account_youtube_light_and_dark_24dp.xml new file mode 100644 index 0000000000..91aca64bfd --- /dev/null +++ b/app/src/main/res/drawable-anydpi-v24/ic_account_youtube_light_and_dark_24dp.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable-anydpi-v24/ic_facebook_white_24dp.xml b/app/src/main/res/drawable-anydpi-v24/ic_facebook_white_24dp.xml deleted file mode 100644 index a6abe4c0e3..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_facebook_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_github_white.xml b/app/src/main/res/drawable-anydpi-v24/ic_github_white.xml deleted file mode 100644 index 11e772d648..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_github_white.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_network_connecting.xml b/app/src/main/res/drawable-anydpi-v24/ic_network_connecting.xml new file mode 100644 index 0000000000..fb8bafdf62 --- /dev/null +++ b/app/src/main/res/drawable-anydpi-v24/ic_network_connecting.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/app/src/main/res/drawable-anydpi-v24/ic_network_connecting_light.xml b/app/src/main/res/drawable-anydpi-v24/ic_network_connecting_light.xml new file mode 100644 index 0000000000..c224f4d058 --- /dev/null +++ b/app/src/main/res/drawable-anydpi-v24/ic_network_connecting_light.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/app/src/main/res/drawable-anydpi-v24/ic_reddit_white_24dp.xml b/app/src/main/res/drawable-anydpi-v24/ic_reddit_white_24dp.xml deleted file mode 100644 index c176e44db1..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_reddit_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_twitch_white_24dp.xml b/app/src/main/res/drawable-anydpi-v24/ic_twitch_white_24dp.xml deleted file mode 100644 index 323ec410cb..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_twitch_white_24dp.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable-anydpi-v24/ic_twitter_white_24dp.xml b/app/src/main/res/drawable-anydpi-v24/ic_twitter_white_24dp.xml deleted file mode 100644 index a98e869b21..0000000000 --- a/app/src/main/res/drawable-anydpi-v24/ic_twitter_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable-hdpi/ic_account_bnet.png b/app/src/main/res/drawable-hdpi/ic_account_bnet.png deleted file mode 100644 index 61dbae3cf641fdb3751677b31f2c0a9b804a2e72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 941 zcmV;e15*5nP)6-*~ht}_u86%`dH z5D|!oh>D5|L`6jIE=&;-5fLZCzVE%=+dD2lcexA|-I<*89-$0JFfFV))ZC4%r@J15~Az??*7->DB?I1RrlsT(iEsfK@4JY}4sNP;-Gg87j; zq$e0c_E2WmW*zj*+#MFgmyRYJh-oPkAkxw5UEACo8t1+j- zddiz3NzDN+NJQt0c-Wiy#ylg%6;N4Zh)Db(b=g50bO{AzjI=gOmE>c*=NkNq_t-7s zLmg~D!4Z;VeDnMUPD~0jq@J*80xj3PFH}B|8t`b#3bK#GW(#8-0WjBwDa6i;JN5D1 zGlAH%%&pEFD_@z05P1?!Myn?_kPK>;N@wy&8=mF?DTGn0WFo^PA3@%{wqt5ovKU|F z4~W#l8;qbHQVNrOgj=VB;ou{aVzz{umF{k;Kv!}E1OJF{W9`}`{kU$8j7`9)1xbAf zrz=XxJKjgnP9B9Fiae|G-opW;4k`h7rp%D7AWE#|^{oVo+-;_9p`FKrSRI5^Oz<9e z0E*C@PS1k>z(RLJc=AmOa9zG@r)yw%IX_)gDCLWGyTGLF%jUz(Zjq6=%`nKJln)Os zpG#%he{`NHEx0Mmsi9 zXHXbg6{Mmjsf?Cu;Ai$k|M1{i`l2xiOl$ZD;8&w|Ik8aBQMVc46>@u?hG2E|zLMW%s-3hKfsNMS&kZ$ZBM#9ov7+s_0^+5ceKDgz+mQlS5PRHmNwwTb*F;HyS)Q;OhCe03X zcaTxb{1NG(-_h~&4^EqT@ch05H{p2hf@4SYOj_R3)j=kf?YFO9dw%;r4q#x`_L!ay z`hD}(%e(*a0J=ITC4KRp{{#SC9kgll#RKRL=$WwlvZwFlb9RnB=Rp{#?mOKa^x(mp ztH_Q4Mc;ttvPX~JK1OyBC|3{UArc@Si__e(`%OkmU~_ zxpR@G4g!V1e-gl;a}f4KK7bCYs9wLHrVeuVo_wOXe9e9s{`m3x2V@6axcKA-vb=?D z=e5ynKkA@S2aP&t)IpRu2-K$sHPq?rpyqV^eS3oze~_!m!H*xmn*wyld>CH5^kfG< n^*YAQ#R?7$9HYZKLmB`8)9`?LHdN>r00000NkvXXu0mjf6xX|7 diff --git a/app/src/main/res/drawable-hdpi/ic_account_github.png b/app/src/main/res/drawable-hdpi/ic_account_github.png deleted file mode 100644 index f873b0da2dec9615907ad5c06be9e932631edce4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 816 zcmV-01JC@4P)gI!|8$Y6)T4!?e%$M22re(!C*-+NnL_JPl7?|pxt-}nEU%hf~^ z7X-#wJ7<71#5pJUiqp?|`G1LM;hf++X6NIObBxp7C^5KshMrg`6j(Z)X7PAjV>X** z#bQwwcEaharw})1Shrp(l~^_I-C(78a_Pm@VC6 zEEZ#TdwUHcs?k3*#FEJ*6}9YCP(-)%VR6y25ZPm2HaDGnN+hI)_X`WQ#87_S-ln2_ zs$x8xzwjmu=|*pMb+H%I)7q_T9gf^W9z|AHD?CNQccN5%{Na~)3l(##ySr@kj@MhR zE+qEHr6nz|^eRJW;LTJjRdxlUKt+&N-Z+rn{9a!lQ^kXUfeIU>`u44g@m4d2 zaH&GBN`#WYV?|I9Pi9U}4b_s%<&*{O@9i1vpqB|ev?54rf`@_V@ey4PKIlWlenB*)d!STLMA5)d{bS4chwO%+6}J z!&pE+LP+!Zyg>vi2+i;5__*mi^qXB<3EdeDT5pevkzsN3NkY=_7#w1C$$Gp3DFu1-2|aUlVWrWVzSACz|?ls>#x z3kaE+pik@T^fABPZLu71ebB;F$d4zZqm~50Gg5ViootMkIDgQ&M4Q}sf{-(bM1uaj z<@hT^h$?#uJw)Go%z)p~dr)a4ftgr`-SzzP2XP)Vy>U=+b1Oi)lz zFeq$bFf2@%u)%`D&#?2|z4QLOGw!``Ki=xUfPz#NsFtGM*z!ahNj$%y{lbfttn`;fu}i+>Ap8G-!vs z{!EpcipvL;Kf?I{jM2$ z%Grtq^;PV}@6xpMEIP*m7{-D=l(j)tcO7|pBo_->@uc6^QO^l7q-W_+Kbl*}8za!G zvT{1eN~jvIo-%15cjS#gbN+?@f@YQVt%EwsF>ioLVJo|%gC0DauEc^WznKBQX6|Te z6D?de15dQC>oSZSaS((a+aYyKQF9{4^Y(AZ34*YP%^QNyrAgUyge*1AwY>H;@4^}G*I@4!(-5ZYKQ@QBd!)W-E28z$nmu zT&tZqdfeunrBG1Cr2WgPHo>4b)=lsB90&CEzl76>T^gj42}R0tG2LEDDmRlbegJ_5 VG*9o!Z2bTL002ovPDHLkV1ia!_Y?pC literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-hdpi/ic_account_github_white_24dp.png b/app/src/main/res/drawable-hdpi/ic_account_github_white_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..ea616f98e3976d4f9a05a4ec92770bd4988a76fa GIT binary patch literal 544 zcmV+*0^j|KP)7{~uNPEs@C*5IFKa9DoT>R1{>-1bj@FT z&Mmn#v0L-56-LH+>I98V?D6B=v-r6crzJ^u&Mx_5MsFzF|Ja}Dk*ae=uV%_`cNACt z6`HHkCp)!dBfoo{qiZv&+MsYr)kr`qHYl;07pO8n@xP!|Gx}?T2F9`GQR;#s^D?kO zKaxe$a*|q)m62p?CT}gZStwjYOlG3(uA{^>76*V4yM)?|Gf1%UTN+yF47 zM-!6*WjY*LYXR6vgDOmc2@y4OfP0pDUZmAKJNGsKeL|jd35UFLbM?dnlb-=w3dk90YdMBDd}M z97Ol116hpEK|uC>sMz^)3tXpzqI$462pNMM=R6<|I={f(`}{)Jd|-N;4aBce)B!_m z|9l4yx;h9`y}Lh9{x(9L`{Apr9C)bVka%(&1Oof_JFq}P46b%F#f~|*$aO!t4noSI z&2T-7+>6O`3@{r54R}ut2SF44YN(#ir{;S}ke_C#tVVKB0z#pdtSp zqR%y-oHFM+x#bXUv)vDa^(}DgC&d@-$O)RtAq38CXBW87Cnto?Q{6#8Pa#lHURdoOCBDZRanjj!YQ8SlOuf+%~S+P0j>;kv- zpkjhle0GtGJK2swZaPp2|0bz&#fUawF;7Lu0CTQeG6fw(R}-o_2AJC@PSl_fq6P*P gvLrRkM!`@30O17_STot#jsO4v07*qoM6N<$g5!|vY5)KL diff --git a/app/src/main/res/drawable-hdpi/ic_account_obs.png b/app/src/main/res/drawable-hdpi/ic_account_obs.png deleted file mode 100644 index eefb491341b43d6932bd8955d44a86483260c102..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 854 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 diff --git a/app/src/main/res/drawable-hdpi/ic_account_steam.png b/app/src/main/res/drawable-hdpi/ic_account_steam.png deleted file mode 100644 index f763d7a1b14cf50f87d77c426e9b816b419b61b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 744 zcmVP)s2Tkubif z{IyFCF`FZ5lRzL$nqis>6;t7ytSG7E&gj@nN~dW^+B-{>kP9Mom}QF*PwNzsL+lP} zM?3Ule2%D~)I)7KR|K77N!RrYNbr~cXwT=H-~Iq>+45DKt_)4BX6fE3z+!nF(MF!{ zKe_|hs4EC!5Zunn*JO~0=wpnN$3Ce<%KbMraYadGii(z3`Fz))z?&q$U(l4fEkNPd zxmaT`Arm>o;+%_RAUZ=t^mwLaMqiTk5mhbKPd4ZFdqS#8bY0ZVGJra@>Cxq0fs;Y} zvfUSmk-_ARC$n~6S=0uQO+Q^x-2QAXI1!%LkA~yBLMAG98nQ#{#@z$4HpwAsPs7ue zoM}3Y-RbPz@j0rnPH|8mN@b4t7+LjK7EBMQHg;7^W%MAozd5j$;a8c>#H0i8Sjd0V zJ)RQirl)o4(FZ0*DIJV2f_~!$#sOF-x@Hzv)}m@_{dD%hfzP`gi_HEtjEwnG$}rKy&QyUw|kFO>p}kKGE&}e>&iLq8tQNxP8z#Xp-lD8DvdMGyfmn z*7AQpweZ@~{|88N5J(ZSgYF*tfBrue!TYEGACu~!`-9Cv|3@7}Ee9Q*_5c5_p8x;P zti+T9iG%Q!?R0d|{8)&ZwI!HxF#RA$jXG%5L8A^L*Fmd`AdcGJhTX9s3@RE%OKMWU zo(cc=4;lyUpN!J<_&>?@fBJwq2;DKjR%t)6twpLkh-}ATa}cf;BeI1z_WeJNtA)5S z@Bcxv9fQq5xG)S{-1Pq#kpG()JtRAZR0q-AF{C(%E{-9^L3D8pJ^<=z;<5PpRImRM zbnRZ_aS;6-gU3Mw;}{U=ariGX!TtYy7@p|A8fIuJ+i2DgA5r~Qt zO{gHd+kiMxX12X>X|CMPc8`RllT4Z>?dJ8($9rwHnrNble;BTpEq1(g(+9ZyvluQ`~0!upf@`d$7^?dr3A>OfWbZ@HD||TTQd$FK`HxiJ;&a$ ze6ddibf%65Xk5L2UxJ=EA(uflLw-u!C0xK)JjfEw0g&?k(VQ4^;>Z&L@!lK(#ai-F zG_7$!C?Q&au(5v`{~8U=y4oTOJ7=RPUu1?IHmIfgz>sH{p}m?mL~h{N$f#4db2TWw zKF!|{b6A#}+73`|?!3tpA{b$LV#mBM1xdk`kG6pV#tHehVSk*q3tgki$dJ5|r?P;a zSWXvvfku4Q=$8?yIqorItYFO%5D`d%4iJZ6Zoe~~+fNG(87hClmKf`i6kxEo=)2Jy h>;9!Q(L@t}9p7n8oGgf?cjo{A002ovPDHLkV1gS6?|T3M diff --git a/app/src/main/res/drawable-hdpi/ic_account_xbox.png b/app/src/main/res/drawable-hdpi/ic_account_xbox.png deleted file mode 100644 index d255682732a7eb58fbbd83b155c1bc815f864309..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 965 zcmV;$13LVPP)8*oJj7B*ic=H+iI$a2td)EH2Y zM3dnp;-FC67uEaa?Zn5ToWoR&9w~dHyW?(Dm!YqV&ydP9h$4v)B}gFVLE`0h)T)1g zV1C0?sitCd|LL57oD=8eR}2?_BnHYJ)nms}aE`Dk1!4@UQH!n`RgN4$6!YWdlH%Ge z!6>lagR}k#54`PTyhd0zfHXlEl_|gAr&Bm)qzT+gBD+ zDNYx_RNvp1pQSCJpfRkwixJ2XF-NHuLXg+1u2Am6u%k2eI}}MOsJ4YCv_M*)bb+n@ zPzvH9`$3TYdR(3{uYc)1C6vxTPHEQ^RQq@Xc~mvv&q+5t9HadzXINKJf=~uP$Z8kR_yLbrYSk-3Q0WN*w1GLqwL@(-*wf-p(*O z?(9Z<)M0#)v0i9?m6>JEuJ4RMP(9PrJl$BAr3LX7gaDlMqzyQ7(!+wa4h`7aPLh)a z#)fr6O`7XyvjR8O%Fe9Yf;I$1oON+tXBpW8f$t&Hwj$^fNT3gfy3}_HSN{)AKw`U~ z6sjv}0D?0YBI6NWl-Fqwn)XVhq|al?)tmrXLvtyhr<0eE+}+p6t3gxw#6`s70WNI> zAHmsHBP(g%R8M_Pyt`0fd_JE`pyuhDpSRTL4_VvxIl^XlE?|gcQRM2TT0j^RF}1ZU z9cE(AFKf#AWf2P*PY_3mGP#ym;|LO83`~79g|vIO`)+LPF^~=dIRYDa4aDbxcs&qL2I6ucj)tmN7zhUu10DnM zaUfm|#Qi{A48*}eYyreF)Ns&kAl?t9fB&ZrxDUjKfp|F(w*zrD$ic)qXg->p1k|^| zP~Z1Mqwq8|O34ND$#M`8q00fy1kTV*Q4cZ$h<8In`8!=5M5LoZp=<)g+Xsb%knEX1 z>Yz~vjXG%5K||3&*U{QW3P8*9@nvXz zH60qtpvIgHtT9KlgRnF;!lA9h=}-$ULoNJI1xHgatpW`Zf!5lvwh^dVyBX@>_f%^S zQ85<@K+}{z5H}CFgU}r3jOKu5sJIL?Ss2jULGe(BfZFBpgQ2fi4^70*gQfEcN<$i> e-SAN`VgUe$$NBRZew+&c0000LX&q*=t_p4X`U(`1Izonr|iGz;g z3n7vW`~UwR82`9=^Z(yTvE~(Z5;%T z!fV(5KMai=cn5(Kc~vc`iJbZl`uF4e|F=`8ky{Mlb-|)dX9Nw^j6H=+J8X4N4yO6$}K3ZdZdGc3nl=9n??RA$0033bY>(2?o5R`%l`)t*v#;MkbzML4YY%v1MzAg?grv|D4q<&^PzHdbI@xb zjt62E1{?tDD7rZ4F%Ziz5CHUakOcz~fL;zd%s?cdmxJYz~v tQPDy72a$sggEaV4(NUB*2sDys0|0{!{grP1D^LIc002ovPDHLkV1gAUc546t diff --git a/app/src/main/res/drawable-hdpi/ic_github_white.png b/app/src/main/res/drawable-hdpi/ic_github_white.png deleted file mode 100644 index 6da166aae07e52cca4ceba37c5d8b5ae73d5e97f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 478 zcmV<40U`d0P)>Krmdh5C{f032wL%382aS;D#IFW4Pnp!QH)g6cgX{?%wZxe(%rkeV@oiCM9&8WMyBnk`a*)`I5WD z&)R&pXfR?~GlrDc!&G@DO7|4vK~nV4Yfd8$=9W0>nn0JtRb7XvyFoXcgwE`V8a88h zfl+&f#iu)rTJz!2zBzTLsTEcWp zR(lOhX_6tmd?rio*^A@a-SDhFP&@8(RB}rp3^ZnMy$7h($07*qoM6N<$f&rh=H~;_u diff --git a/app/src/main/res/drawable-hdpi/ic_network_connecting.png b/app/src/main/res/drawable-hdpi/ic_network_connecting.png new file mode 100644 index 0000000000000000000000000000000000000000..1e2cf93b921379e9c2d9bfcd71956275b910c18c GIT binary patch literal 280 zcmV+z0q6dSP)k3@qO7U`><=~H^~eTnq{ zFN>xBAMa9rIKM%GgJgrY)TyoewM^q83^4waJQ~$ubCC@za@dzX#SJP|8JCe0!?GH<03O4Qkua z4O&y9IRR?Wdo+XIGwf5zra8MT(DW$6$3SY eh8hB-?a~3f$&gVSHsfdj0000pu%*2LK((V%Br z;+K3|rSk`*@bhZ3@6WcSRgq;7C~A=ve^_h%nJk0Q6@Oi&|9fB!0;ODJ#h=%he*-Cg zxhZNJMuOayH~}Pg;>^YO$cBLUKnl_v4(GD+@0*VXF&%cU@ z3O%9=%rjrc+hDtCbF{=gp-rF9?1q=g0Qq%R(RF2)tpnZY2HP60vb2ouwo2O5jCbG)~04^_R5DtB+ROkb6hBJ=9V_Wn|S)6L` z9?tZ8i-GKW5c(dGsi=4QsC~UucY*EdmG*V4JA+3|#_erR%8*}ROB1$k@OUd6+$H+4 z;c&WhBQA&^BqP?Po-YNuGjT~O?Q;pH>xTjB-+E+q&0laSN+bhGG)YMmxDFP78meRL zjgFzeJURx;i&<}vwra7VL^tYK;+)6Z6+Im!m!cJ14^q(lpMjbTjpiu{nI*7Us3I-Vf!$hb# zJX)8L>7edG;~=0t{TNNyfpQQQ$AH>p!E|>J&}4&GLf~=x3lO7*viS;GlAbfdDuhlTQn~0Aut0 U#}4eUp8x;=07*qoM6N<$f)Fx>761SM diff --git a/app/src/main/res/drawable-hdpi/ic_twitter_white_24dp.png b/app/src/main/res/drawable-hdpi/ic_twitter_white_24dp.png deleted file mode 100644 index d87cd15ea540d8343c7b309cf74e644ddedc6c7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 486 zcmV@P)^7MLr^0b83QjjYKgr)MGoGStw&0mGCq7Edf_-vcQDI zs#7%crPSy-Lc31UlyQtmRFv1E9%J8r!C7Jt=8%)*Yfq1QPPoC&tM~LNI+s+)q>(O% zCnJ(hhUsPCI3)63w2@hK7_Ht-ve2`9R8*ZMV5e?vTa;)nK3B)n;b~(6Qw>d~)lF4nhyKmlmGh3p6iP-FtvIo>2HGU7G>^dov`+TA# zovEC;cv%Vqv`2HK^fF&Q=X|C3d5t3dzzbJZ=1>>`*c+vNS2_a9ND%EHd#f|x4+kv@VPS%2jj?`=Si$aF=n z=p>&Cm~2{naL)tZdEXkIP2Zb;%j<3aW{^JKBbFi69B5kdLBN&mFv!pYwkDVjpp3t( z@I$;QK)__vjRwmSFflzKtqVVt8Td=5@J>9#XqW_^#^%_uvNwSlGViQ=#WUyuP`V_) z0hr|~^9I&pft;;A32Cvf;sA2^QFM%fgIy{CaR;1{89FA_F+*4nz^Zo0oBFJZSplYP)mgsQI<7QS*Ni@n-{r1_cy@$S?$qbxfKaNHWOMuJiWfsr#?pz5n{j@ssy1lV^}| z^W*P7f4}*U1jsTdFm&cNm;p8QoAw)+wLK=wpyKj1`$2{rK62+GSz%;k-u56QV%Fg` zYtNqm8Fcg3%ex@Hr~i~=BpC$K^dAejdhPjbk_>Wm>p#8kz|HfI9=&}GGT`IK?;k+? zhL$b+DGDQyArz&fk!jFxJ(E@))ZA~}>aAzo5|0gc_3jA=niGHY#GMFaaed$yW Y0Gra+*?Ssx5dZ)H07*qoM6N<$f`?>$-~a#s diff --git a/app/src/main/res/drawable-ldpi/ic_account_github.png b/app/src/main/res/drawable-ldpi/ic_account_github.png deleted file mode 100644 index 0bac5143db4fd5af0f5218b9cdb67bf7d1f7611c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 423 zcmV;Y0a*TtP)%a<=e zssHPNSb`Wsp08ZF^1r&8+J8xLaTIK3V)Fm!(W4;4uH!WfD0v>_3I#d2|Js_G7zWu| zTZ3t+Ve4@j;{WK;qyH*ON?@CR{P+RZaN)v*|7Xse0n;F_!CVIQrU5pCR?nU_3#>3W zFz`Pvps%Y7RwgeR R=llQw002ovPDHLkV1l!?y*~f| diff --git a/app/src/main/res/drawable-ldpi/ic_account_github_light_24dp.png b/app/src/main/res/drawable-ldpi/ic_account_github_light_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..91e29ee578e2e1065ef0f292b4372fddb50067e2 GIT binary patch literal 302 zcmV+}0nz@6P)NklOugc+JTjN^kcz1=E@%v4l9d-i=oD7D6T%)PG{92J=l!1QJJnN52PMdZ3W+9O zow#(oa@1#MzE-byYiN&0C7JMfB%mOUITG8K?8vb6oB~gf5PB25R2gR%4MiR zT!#II8Uh0QvAPT>I2)?qJCqL!lXM_VuIbnvo>ji7+S|NqsmjiDn`UT8*UM1X)4_EsDc& z7{CIGDYOL2g05&iG#$l54ZDr(O{n;Dv~*RED^-7n2D~>kD+nOTJD?eI7?f;q`P~MH z-$V0SIUa+q1F-}#`E4`QdooDkCeVyL8`%P)N&zfl95gS#0M08Q4bAc1p#T5?07*qo IM6N<$f`qbjfB*mh literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-ldpi/ic_account_lol.png b/app/src/main/res/drawable-ldpi/ic_account_lol.png deleted file mode 100644 index 40b95f64eec7f20be3b56bc4dd0bf9f8e27c8c70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 323 zcmV-J0lfZ+P)3*G+1@cH>34rCj4cA?v4WP{EvaxXr+$i;pCd3<9b%!I0R$-+=`v`5PRV1Pp>$>h>FFx&pdrHlbL9x%lh?_xX6!5GY#l83g1j z04=Kr(RkAm$hn|Ehv&CNZree&W5ZZu4Ogbcg+Z>u>!R}u-Tgt~gcmPxi>6ue0{{bc VFb};!Q-%Nl002ovPDHLkV1g*Yi1Yve diff --git a/app/src/main/res/drawable-ldpi/ic_account_obs.png b/app/src/main/res/drawable-ldpi/ic_account_obs.png deleted file mode 100644 index 9a97ddb86e3aba7ed3a101c4c2cc37a11d0cccd8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 421 zcmV;W0b2fvP)3pl!&+t4D{|8}xJ;UpU`i7H@w2V}UGQ>dFz~9Kg_@R}h%{7=I$QWqg zcLP0xe7uGj>KP`36vsrz9R$+9u^EKG2K87C0XZ3_dC%@WXYm^Xb)CMk4W^g$3}?d> z+`4(|uBDmP4eZ`RxD?3Wj?JLgFa^y`&HE1@K625}!007R%uwIx3rOtg)2GiCFJ5vK z#0MFwt*y<2ZV-y?hWf^DD=Vt^gEXyOv-SkYaG1d+hNh3FO`UcK>_Q;GYY+_2pF95u z$R+6F#)c-(tgUP=1I=+jHwbGiIoLU#4-O1If-5P2(j1yW2Agpi$x9@|Fi0P%||xiXJ$zE z&y0}YK>QzyKmW)GDaL6aHiLkMY)3Kx1p^J6O_V{u(nFJR8GUX5qcbtL7RzBM+E@_ zKhr}NV+-W}S)n{c8w3O2Qi5cF2KxWV4E6q>7AZn<$|f(bQOh6}UC(lmA*?zc$qd5+ Z008n;75pGj;9md$002ovPDHLkV1n8tZ&v^S diff --git a/app/src/main/res/drawable-ldpi/ic_account_reddit.png b/app/src/main/res/drawable-ldpi/ic_account_reddit.png deleted file mode 100644 index d1b8a251047077d0d791dcc56c161fd226133606..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 426 zcmV;b0agBqP)QXi?#8ek zn?bKJ4DjK+{XftA;Q#*A{r|n#?_%|`0|O7bK@iC}*fTfDA(fx&^vHkbw4Jc??$k;{N~tt9uXzEp7S#|J!E> z+n@Iu+#q0@Ly!91aLG#tuYomOJO2Owhu07TF6@UGvUS!8ByU~E3~Uz$f4Blr?0~}K z=lB2rPi*=B|G)}}f!B`R0J|6wYsuKtk}JbE)!giwZM0XZ3{_%Rj(KxwTQr%UkUJsqG6gTWYEcAy0S08pUA UEVpywB>(^b07*qoM6N<$f_&G;^Z)<= diff --git a/app/src/main/res/drawable-ldpi/ic_account_skype.png b/app/src/main/res/drawable-ldpi/ic_account_skype.png deleted file mode 100644 index 87275b48aab1a7ea9e03053d6930c4602cba8c4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 448 zcmV;x0YCnUP)E0@#^c|A|NREx=oQcQ=WKj&;QQ}?-$4dL!w+Iu*)Ggo-PjD8kEH1P(~rMjf(-lg^Y52gCqJBUob~7c$S}09+D^zIu=i5eJ>L&< z6)c=UhBH@Pe}<%PKbGhRrx&mS#)|7-kOLOvl5ID>Tm%_rGyTBz2Q&&VzV1+wd$NBco+ED828?i5~i)c}&u@MaYluE(G68t!v|GbtnkKL#6I qe&an#p2M1khy@VW24fEwDggjp2)$!foPiDi0000w* diff --git a/app/src/main/res/drawable-ldpi/ic_account_spotify.png b/app/src/main/res/drawable-ldpi/ic_account_spotify.png deleted file mode 100644 index 1226a8672c877bb702c552ecaf9edf6905fdd464..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 426 zcmV;b0agBqP)`2h$-#R=p|=x#5F z3gig{q5=UkyIVfmZ8?Krlb7^k_sx56W`p2gtSG~tP;e$SJP_V2P|F-ImL8MksYt>c z_UTYbc=v-yb3E!KkvfKUf}apMoOnrCva?WCezw-glE%VM)?aI?QFvv3QZ@_O;anrP z0%s$I>$K;btiABwP~)A)7EGLyltUF7hfYbs&qBi`TQ`IRr?hMo{buQvs|pqGMH)9{ z23tgMU=}R`mYxSU0CbEE$ zo2Ms3`Wb^!)T+l!r148C> UF`_19LjV8(07*qoM6N<$f=0-*=l}o! diff --git a/app/src/main/res/drawable-ldpi/ic_account_steam.png b/app/src/main/res/drawable-ldpi/ic_account_steam.png deleted file mode 100644 index fc9cf9826fad4e415a11f9c1f69d494711eb3438..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 355 zcmV-p0i6DcP)WmiJPy%^ghU@l$o@u(2tefqC?-is1+#;! zrTZWXD#<}cWUn?7$4$>)Zeon32$dtEiGjOX?^<(~=Oe%g0O$aKeB?JD(dH@xdzcXBPI4m(O~f-}S3OT*czo3&V_rrJ~$Og|Rx^S8#ULN4Ns zr%;VeAc!*<$;B8b!Bw&-o6{0>4GRFC@cidL^aW>zwE7jblpp{A002ovPDHLkV1iFI Bm(&0N diff --git a/app/src/main/res/drawable-ldpi/ic_account_twitch.png b/app/src/main/res/drawable-ldpi/ic_account_twitch.png deleted file mode 100644 index a8d5832f8797a7a05fdfe4dbf2451c8ea0e8c013..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 292 zcmV+<0o(qGP)tHHe@G)9;!RLN#hJZB7F8uT#3BL#8 z`*Mpu*Tff)3;9%sw|4Vw&9^qUxir00LM zz-`c?4<^6>JWtS|MW6N)OiQv0Kkg=A(0A$iUkr#!o4^>0$Kl1_ps>WN8RTbBx&Ruo z7>6N`LCJxjD-`B`k$@)3(?|wA2YFRy(Whk5Rj+s$MkW9NN#&li4Axt{$$_K+MH zCmdG#pLN^-&aXV{`v2m){r}It*|iC)A?xq=3jl5Z{T~XpKAs6S1ZDsTcU_MC|NYMw zn3Df{Uo6bUFzDo~&FlUnfyZBN{7*fqiDJ;^M^llN{D1cK_D2kZ9)G$138nyKE65AT z-hgj>+g?Xu^rFmrJxve{lm$Jpa2FLvgB^Ve_Y_&hvQ&18y-#qdl3}d zC$;py*EW3 zt3eL?8CZ_L+<29cLC?P3{gJR=L4#n1J^yyksxQAk{6RP1&%fXQZ+do4Gjf+_`ZSy2TlWSscHw`RMmP7#Q%xJk8i4J+n^g_0F?Mmf*~;c`KFqh z2;3l`$=TQx-qO$|XxMcX9S4L#Dq8i}6n$8>{Qujj)BfMqH^FU~nsz)vgFdcZ_y7O@ zfB%2KdiDQ#StaEL{rmI#|NF&Du)B;{gTCzB|Nowg2XS7zp`w|LP0?K|JA#1?N;b%` zW{vGn;@v+oPWje`ba> z-@E`!36Y_!4S>S!c&7T6T5hDu%rxekv(I!Fd}V^eS$Dmk5q z2sw|_dr0APn+StoYFA^ET#w{r2O_=Jj7>o>RPs60>Fz+xgCs8l#Kk~-pJ1dw4QPf& z@o!LcBgxH1OG}#xCCJCnC}u&Ei$_b45~O4i2P_8dCuj(kOp6>wBKQ*O-~#|@b+w=; SL*HQl0000}W9n diff --git a/app/src/main/res/drawable-ldpi/ic_network_connecting.png b/app/src/main/res/drawable-ldpi/ic_network_connecting.png new file mode 100644 index 0000000000000000000000000000000000000000..d099a0967f25b3df400f4d24390637073d83a31b GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V)t)YnAr-fh6Amz*Su6ARtj^p0 zv!idlKen{(;F&|~1|%O$WD@{VRh}-6Ar-fh6Am!?&Dr;){?D1C z?~k94yVL8<%N(#tZp90Gj>+p@Ts`(6*naxSfAt$J(`5Zz-(SDA|NmB>SN~`C+HLm? z|5Ca2=J)s7q5o`e&zjp5Ea)N7GC$XMPH*tV?V_*h9s6o`8Sj1amTi8uf~&rHs~nrx eF=x?Oc7}Q0^QUN^DKh}Ng2B_(&t;ucLK6U5#Y$oT literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-ldpi/ic_reddit_white_24dp.png b/app/src/main/res/drawable-ldpi/ic_reddit_white_24dp.png deleted file mode 100644 index 8328e5b7693eabe4778551cd88c146e364064219..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 303 zcmV+~0nq-5P)6^}6h$utSy6#lS%E+x5Ou5|K_Ds+@CP+b5GyMXd;kK0=qDf$hzbNDh)TrDMUb>f z1p?fXAhyXt>@eMg1p?2!m;27l+}wBlK@>+RMeBUT4|+O=I5sWbpSxLE|BX$i0S|U002ovPDHLkV1kRz BhF$;w diff --git a/app/src/main/res/drawable-ldpi/ic_twitch_white_24dp.png b/app/src/main/res/drawable-ldpi/ic_twitch_white_24dp.png deleted file mode 100644 index 76a4923d12c4e7cf7117d34e79ac908f71126deb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^LLkh+1|-AI^@RheWu7jMAr-fhfBgS%&n~e4zrW;; z^9(AF7S1{EU^AcRk4)Nyx*aQ17*^D6aQvT{ClGLkp+k1U4<-dW0q+S}0yl1Z)UdC( z^&_zPL6<}38oAE(43Ci05V3)w z(4Mbyg5tpw%N{eGb=WgY!+C;}tmJ)nE#8C&CbOj2lm5i_r&ZfC&)g|_b3szlS4M_Z Xv1MC!@BNbsbTNactDnm{r-UW|wOCgy diff --git a/app/src/main/res/drawable-ldpi/ic_twitter_white_24dp.png b/app/src/main/res/drawable-ldpi/ic_twitter_white_24dp.png deleted file mode 100644 index 1226c33b1eb633407666c5f4cd00ba688df06d77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 278 zcmV+x0qOpUP)z}lmOfFU)!^wour#$aq0LqCiv%C&!FF1PK|Ea#K+@#e#FC=csn8)RVGs;k-6x?byR|NC05WIj3~kvEq%F c;G6&C2d#HJGuo2#fB*mh07*qoM6N<$f)&4bFaQ7m diff --git a/app/src/main/res/drawable-mdpi/ic_account_bnet.png b/app/src/main/res/drawable-mdpi/ic_account_bnet.png deleted file mode 100644 index 64dbcb4a6fa43786af11cfaa506164cec3d148db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 600 zcmV-e0;m0nP)ZS%0qI``-87_omdpS=VnX%F|2J0e6G4a!r@E zqmMJsUw+KlgV+3d0FDQ?qYuWOcY>Tcjb|(*d0$hWDFXXl0`<(3x(b&m1Iz^94=)7v z%waY-9}I*x|;AWb=E{qI3GED;2n*esgfr4$Sg`;oaz6Cp?tXxxr=lh`h zA_cb69Mfd2^9(>46ye?M7#W*Fq6y>{Cb2HTK1+1QV!Ea+Qr#14*VH*H$cP#MeyhO- zJb#q;emV#;>u)W*M^G+m0j|HO*a(POQ4I(TNj!6%^t!6*Eg^G}EfwmE;K+s~0R4v> zfjg`%5{9rJ;JQIsS(xjH4%0PAhaacA=A52mMn7HGvNIa%A5(3dU=^-A0|sJu`!qh> z;EsRIt6dOwZ$vGL8j~FGanGfwF*3%$T%(f6y4UCSe3m@E$Ws?%mFYR_+)09At=KP> zKAB>w&-egTxQ4VZ6xqCp!6IRv6UG(puw+g}B+sN-B>`e$iOhSzy|F<>1;#8*J7qo# zC!+^GQxg|D-*$H=YS%(q>`U^wJ( mf=+c|Jr9 diff --git a/app/src/main/res/drawable-mdpi/ic_account_facebook.png b/app/src/main/res/drawable-mdpi/ic_account_facebook.png deleted file mode 100644 index 3a406c4198d87f58a75e36aaa038afb7e9fdeea1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmV-M0lEH(P)INQVS$cOb3L^z&^2t{ zPq77hCM|D$f~FlUE?=`BgdN@bPgBhTYy0kt@7{fR`yUDHJ8<(n)hu}Q=~(Q^*jIrf}4v+lS-6$?Oy!7Mm_^4?{tM>4VnD8WLh1tAf$4uew5 z%sGb-!z=*B1=Ug!$hH6Rfb87m`)O(cC{Ivi0VoJS!BkVfX+O-+o3~!x1&M*MzH!UT z!5zt?77Q&5^o*J}V_2YP(y9ZL+zzrGANKH>v;=52D5>s0c!>2I; Y09zJ+a=^YO4ch(eHle`~AAQ{_ztKQ8(ipW0bK#A9!XAGrE4_ z+|HPVw{p2mmlqdwcyK@`$H#OPk5jEy6JmFa)=r&!80*Dik(PWu>NA;II5;psyMX{z zDiw&lGLE#=vwwhzkNT8ST1)GWaJ_-g28KJg~Mne<8 zKIol8jPC_*SGR20W`q;WIHqcUZ?CC5xKVoN{8ZF&Alto1YN>EC&_raT2gVmQUt3)j zqpYB^onBOA@`Bg;@(Ae8HNtm%_nXkmv$^L{3ZNWGe!F^p^XoPU{;lu&JI{SgI>mlH QMF0Q*07*qoM6N<$f`^#~^8f$< diff --git a/app/src/main/res/drawable-mdpi/ic_account_github_light_24dp.png b/app/src/main/res/drawable-mdpi/ic_account_github_light_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..f9bfb23f2833c35ca4f288155f9cf24d5b8ee265 GIT binary patch literal 380 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 diff --git a/app/src/main/res/drawable-mdpi/ic_account_twitch.png b/app/src/main/res/drawable-mdpi/ic_account_twitch.png deleted file mode 100644 index dc90486fe9cdb6ed769c7c701651c068648cd34d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 338 zcmV-Y0j>UtP)BVg5ZM; z2dM?oqZZJ|g2S`^|39-5!GC)B|NmV*5SlK@^w+olU#58de?SupK!(o@{(ljy-~In# zs#<_<_*94gJOnM6=J)@`(#-#dVfg;Z{}(}qUD@{k1hO~?gVYi<9NhwR3@XSjZu)-= z$o`F04I#q`SpX_sDKZ=c`rQAkV5vN=qZ#;og4_ROWHm$?jtfk3{l6dC@X2ofHKM*#R~I3X~4u4=D!zU*#DmeyQW1S-Q^a2vcYGt=&DydK*Ns% z@qZ-z8>qKgZsDidKucHScGZH9(}9XV%PsigjK}5OXoe%>`*I6E=F2YnV1mPfPxE0e z0(l?gS}Yd)#$&;M*#)2bar!`J!N+Jc4X+{LjBpWN!xw%!%s@o=9>$^hGZ0_K@A^;k z@mc_kq{Rdc!Gl4*#cKhUAR-CNFZk$9IDI1`npFH9TcW@k55S;`2Wogvk_CjqACVKk zNI)Z$B-hI<{-{E9F(9+xb1+B~u@-X?bLq7Y$HAJ>Eked~ zZk7K3_4fx@{i83}-_F0^z=6~7y^j}4fBW}_mgu_bz?|r_Aq4w+VPyaUFn;?$Wf_Fck|3cRQ3|pMRQ+Ub> z9O3BT(DN0OF$~}SV1^gE!rPzDfn5qS5EQvxmt#>Z0i`5#aOM5sn-~`Ce7c|nS<#<= zzyDXC^?)0cf71N_v#)o+a_b)Sp;&U}%?=a`?ti}c9>apeFILaM6*Qno{_yh^iXor~ zMz$O|sGfei^9{p-9na<$z!ZG?_4a?#5mk5^2c;xzVC&{_zCl4HjIbC(D87OP_%h;|h0N z08~bS%Bn*zSJ&b#i^@(o$dsJ6ef6J204lfAj_cGDRhrJYUSRp<_lG~ESOClm`$?(~ zKt(SwKCTlo`17xKzs|kg(?oWycK!WvhwJZ;ZF%|a;p-1SUw;4o=gaSRKVN*g^XdGR jOYaXg0qx)z-i-wS)(k2x39~f+00000NkvXXu0mjfTqkRW diff --git a/app/src/main/res/drawable-mdpi/ic_account_xsplit.png b/app/src/main/res/drawable-mdpi/ic_account_xsplit.png deleted file mode 100644 index 3251e0a548d18f17c1899aed65c4cf346287df48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 287 zcmV+)0pR|LP)rQD*!PIEi9=2j|!dx@o^wt4aEIGTnxnFKx_lVGL%^G7-~2%;64x^ z2IA#F+zrI}KX!&!VsG@>`i0y_NdKel4GFS^c3M>GX lq>E`%hd?dxAFZw_0swiFa*8yh)FuD`002ovPDHLkV1hWya2)^u diff --git a/app/src/main/res/drawable-mdpi/ic_account_youtube_light_and_dark_24dp.png b/app/src/main/res/drawable-mdpi/ic_account_youtube_light_and_dark_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..3a66660794a7b10b7f3d02264bb2e38ecfc00bc0 GIT binary patch literal 309 zcmV-50m}Y~P)TvOK6xuvSze^W(k{Vi3^{Wn#$ZUgas0{A*e?JZTU)i>3&+OKP9C}1`Gwu+_& zQ1Ndd{!bzPjMWmb3n(`njBluFbz@in@+!3~00z}|Y!-aRr|Ip~Y5#BQn-FCIFf=Y> zvjDHA|NsB}|NZLK|L0|u#8`5lEDK=x$F*z!AIHSg&Vs)mKmLE+-AjE7{{8v=|HHE7 z|L}1|M>rZKd(UjKmXbf zG99K887UTbgxda_uuX~jAl;$Q{IO2u&)g_69kwJvHWP-eElJ#A#t#^-Y;tIuCKlsv z9Ka?O^L^orM;15w(;Tg~1`F8isThND6mVjK!5H61>)ofJEhuE5lwqkf(J zNK}I3I@a5bHyFEkFYtsqOj<3!b7jVrCdIsi`BG6IB$p`6aPjWg%5WuWBO^oP`q}4y T?p`hlbS{IZtDnm{r-UW|yJ%7& diff --git a/app/src/main/res/drawable-mdpi/ic_github_white.png b/app/src/main/res/drawable-mdpi/ic_github_white.png deleted file mode 100644 index 923354f8e50a561a1b7a1a3bff7ddbbea9f404b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 353 zcmV-n0iOPeP)QusAmC;&5ZEjP0-JLNBf)4i7>q_gfuDe2Fc=M1HzE-?0s$Rvh8u7* z;6}J^Kf}FVeBss1)6RL%bN)T&g-wTLPrP+%>cX)-+y95R9J-3W^}oWqE{tIotz*Yj zO;&>E4%K8?rId$P7_kfNP^Zf$uWVD}oon_O0*|G`F#ma;v9eaVmcN8;+0O=yv|9B| z)n4dMRXvC<<5Ja0W^Lu(G5{~p^*sSl3kezG8?ORT2?<{S>_-V50G`7>2daKpi>RN? zcNeF1rV00000NkvXXu0mjfJiC^d diff --git a/app/src/main/res/drawable-mdpi/ic_network_connecting.png b/app/src/main/res/drawable-mdpi/ic_network_connecting.png new file mode 100644 index 0000000000000000000000000000000000000000..65f2317e3f1eda2477f308bd5fc8673170c50339 GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a)4DV{ElAr-fh6BHPHd}US6=)PS) zJMz|lv#ncRt1p>%@XR4SxfMU`dH5UJOhaE?zNb6k=l7z%H}{`TjZ$SXjhVIJ$G_`F zEB`ChYzcn)jUmJ0>e@dNDwVmL9zFlb%ErWEdO*do!gXmG<5$x=bJl!dRry)d_h!E3 z(Y8;~(pSuD7Fi*Ar-fh6BHQy=I+ue{B!2$ zYllC-kG$;u+j7O2LG&2&$9f4l244T|D*nIs1wFlgeQH$w{C7V3iYp%ejr#q4|1{6P z><`VQYxDRU+P1&GE8nbQzh>*dn)=#i21i~4Pl38kx|Y4Bw(Pf zvWn|jS*0aOJJ!o$d5*Ru5u<>IkE3M?H7OfwfT^EgwA^Nh6EFvtI_YKmS7@zLmn0|j z_~I8sT2zV6%L=qOB}bcROsJEgMh90C4c0-~!c%OGZa!@2Eo8V*UN-@|R$iAOe_ZSu z2YzBpII~81I1)A^Ls6B)(74{FL~6#Sq$Cnd0)I=gC5?jv9rfvIf5vP*ai={64b+EU z)~l6krD%@Yx#8$>jLR7VV;hgk{D2fgf-vsc zjvna}x1p-TfCgDp74bw#XiK)FZ@pXNKYtBBA5h0zD`ODF00000NkvXXu0mjf8nLM; diff --git a/app/src/main/res/drawable-mdpi/ic_twitch_white_24dp.png b/app/src/main/res/drawable-mdpi/ic_twitch_white_24dp.png deleted file mode 100644 index 47317d77448885fe34183588c3b1641d06aebebc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 259 zcmV+e0sQ`nP)kpBn$R4PyqnVaX_}<|M0f}D6Rp- z^FbJgcsHdMz%=~FY0#(zL*4?~rXn)(K{(AU0GeR~#Gj$&U8br9(4c`C{u~s9RI>o6 zHyDV2L(RDkDpg?;$lyK55;RIe|b^g%J$s%Z{E97rEnQ>%L{j$upvqKG$k=+%Yu7E{A$W6A(O?g zPhxz-a86kvyYwXikT5LZO-#*+X-gtrez<2RH}ouqCpuC?()E(sQ$)luU0ivVEnGRX z#V$NTV_IT)VJJxrxe7HirrBQj$ns99r%q-V)WV-vmv~mgFfLwopNF-0N_*ANV*bbc zpj?E}TKtVovuua?#mzXqsyZK8qNN9(PVRR?q(w^MO o^2^t@T5|QJcfIP-`PRSH4^hYykX~+N4*&oF07*qoM6N<$g79jQPyhe` diff --git a/app/src/main/res/drawable-xhdpi/ic_account_bnet.png b/app/src/main/res/drawable-xhdpi/ic_account_bnet.png deleted file mode 100644 index 36e5211fa0bc3f3acf5079cd141f853441a97496..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1238 zcmV;{1S$K8P){Wvo>tp=4zYm1bEwM&y`N0V~w(>_cyc#oJujq0vC*a;%|IOlz z_oHW%jn|p@KKt{7_g>}Z$pWJv9o^~xIq_k(=!Z4;#R^eZu&9O?%+Ol+%c}*CrE|OD zTr9sEP8~^b8ZzLpSRV;PI?~V^#3mSQ97w(MKhHA|dyU4^JwHmntKPdW?&;#+1r}>6 zR$_hrnR{O?+_EyXRT7%};`&o}#se(4;iqCXGmLXo;Cx+P*SVFIAnK6eY&PdC)?F)# zdpS;xG+w~~KiI^E2CxArfI)Vh05kc)0YWSb6F)e_zT)(#g`cGXv3?;GCC|VDK2{H?@PfPQ8HEhW9 z{Y($|XgS$NI6+48oWg!0cwS|T^i+r@=SQ$AFkr^qFi17Gp} ztYg}75fr-S9U4p!Y)UzDC9}9G2_qdNjaz9F9#l&6NPNPBA&SPx3w=ElI6#Vuc#w~C z%<6>|ggWcOtU-$6cF@RT77>UPomchIE}RvJq2h^p$yS|kkL|b5!F7kq(%l)U-If%89iDiT!lKEOCuY4d`Hbv=D4`FxcNuQIfUOeCQJ*d~UHiE{HCDbQGRbYu<}!y3I3DwAs`VydR0 za@Nq)wTG@CG-UEw)q*YTCQ%-BbRJdc_5eTIKBvZmg-t)8&uzx>>Rz?uVAn$4=$eHQKyJoaSh7P@VT#h|o`#HQo8ZC*dKzME z<4Nh>UniCC-&W0^wQEYrvx<=biBJ}BS%}1BN>2Bp~QfU0{hKT zybX&zDr4Uhj}I*=ZNI#!Bd-}t5BYHpWhT<0CcX=u=zb$va4xhzt)pg7n10Q$A1_1f0N-LdA!KV|xor${@YwEzGB07*qoM6N<$f`1T6 AFaQ7m diff --git a/app/src/main/res/drawable-xhdpi/ic_account_facebook.png b/app/src/main/res/drawable-xhdpi/ic_account_facebook.png deleted file mode 100644 index e8eaeebe42979ebd6a2b3a33b91850d74b0b9d43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 462 zcmV;<0WtoGP){~u)dHz;6<^}zQ*=z;&h z*eEB~1OEpj)-h_XAN2qY@OJ~#)@MV>1HVHeW*y$W=i1pHKYxG!j|Seo`|>s^ZP9^2 z=>Y??w#OGPKDqIq04OeBvwzTeK+m}4!`*wYAN(f*3`!5Qb#6cKpGYw1JOB*+FWA!i zknw<{TmNZXjy-q&(ffjuRhK~-8-~rSJ8ldr4@Ae$KZwooA3l7$1uB&WeLVn564*R2 zYtE6aL!u(XH&A}$tPycIeZuyNdIqw~k3U=&~i0QE=|fnYTr{Qv*}07*qoM6N<$ Eg6amzd;kCd diff --git a/app/src/main/res/drawable-xhdpi/ic_account_github.png b/app/src/main/res/drawable-xhdpi/ic_account_github.png deleted file mode 100644 index a8f56491f73155afe016ef8f90ae8acdca5dfb9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1080 zcmV-81jqY{P)VVZB*J?7?ScW-C+^n(51_i}eT^L;zNzjGds3l}b2 zh(HL*pyq}BFJyhx`l-!R+a-zErWT^sL#-lRh@V#pMTm8TsdZ4xJgYa3&G(HM9vvN# zXf$dj1SivUn&fk+E%Ge(_V&oPsVVZ-9>c`ut;@aFC}G)NQY?L}7?A1h(U+(`}C71q~pmX|w5 zUb9CnExd@JQvzPHZc|@Z=Qw%IUUhf#?$l(L`~_;q+G;pzcEjtXrDS1YfqWVnQL;?3 zMDY@kv3||YCImkh6Wg}x1bsLVOAl*n37g^A+0*$vKCYzE4?{x=k)Ja&#l7M?)zxupUM()>vr~sG`AjzJJZx@Gc$07X`iNbKToT!h4QN>bP1*_@ z>+3>SKw+{Ak?WyOaK)}dM!=Z%^!q?SDB$Dpux$Yk8XJXc!~Gca$Os5)Pv5JpP1pdw zn?#>u3RH4YG2~7+B;)@vh&DiAIt5XD-S+w7vXM;Xja6OI5ic(u+y#vo!Tfc5$zq*E=JaT=%t_>4Ub7-j=KJZWt;ofWX&&d!d#K8Q=FQBf>t zrT+KQl9G`i4*ii)Oy~uyL4Db`JsYz_4g8$#9`)Qs518JJ$Ukjs;~(j8VkSmS*kA+j zZcUA{A>O*q{f=b;NYz{-Sd{jCfrt`zI)ey|lPrO2B_&F1pgp!K06Cu{k6Ad!>ARtN zHXg7c0+!DxRs`r=Y#pZT_8PMddlFiWK-z;4+)^016Gl^zhGCw@9h2ZzF11(hsyl7) zJA-&Kv49k*bGf^6YJY~PfgNC7$_9?r%d-s6X+y0OV{FB?fJ5~qTu7IHYW!*g7%}-* yW=y@Z$@HWvR2R!vC%YSP@YXac~hU4kE6wBH~0vL_}r8iHL}b6BQK|5fznJh&WMk zGKCb<(n1SIIdLN50-;d2!X2cLLc|_yMK*govoqP5jVP3Rqh|M?|DSpD_Pw`oZ~xjJ z7@;0hr%Ht)0Jlt-@P$wO+I#~=o^wf{8J}sA%T8XP$3jcK8dtQ~%0hp@bt?I4e5GPX zzQr43^5vM*G^fuqu%us(L(|=lGSM4L9A~Bv2=LPATQP8t4nzDD-}gD>G@8#SucI$9 zi=aMv0Lq+%Pp%m=V#JhrNPfgN0B%fjXzHGE?0Jm_1p(=B5ZmjvaH@um-Vxk!ZWY*p z$;#K#7iyDG#G9$BK)IOzm!n`TurICbt3Y)L)U$HYK#DCzc6ud1W?_7onj?jCZS~?| z1lbW5yydr*z=V&&d^aiJ2!IdP+4sG4qJ%(60Q|5PxDjUMq=0C*8&<-6nn2N-QWF$9 zfkzptcijFY1w}OJ7A^@IPHwZN;Y!d?Cq$p@w33R1z_j?lJNvUFLanULxqBXJeLQzy3x`QrXzaz)fsO_3@LK{~) zbODbp17*d&)OUKT;@t&Y!DVOCqGFMt0z?JB-+JG0^-+lty(a@i-?^HWc!OR1D zoDtwNRNRECr1z<&^>u@oo7P!bDe%lB501mVc-8_v)3kLFO7!t?aFks_IV=706hmoo znt-3`Qbl%I7z<1@WM9CEHMM$y1ur-GPpfjwT+`6D8FQ4O_TAh6W`6;fBrplPOLa*A O0000cBgDE~!v~#}2 zE9@}gz}&q88X~oHH zI`hk_tqkP7+ISch@D$;lb@_d(R$f#fuL$3)1%9ekAu6D8yJ0JI(ga*RqP0`=(*Jup2P^lPVe9`QL z#+zx(v_y8%Mgkpyypj77qmbqK>UJ~n>*|;WPD-JE7SmMgNe7+d4Ot%hW7n878dUV5 z$x)+8C$?i>Cr)~P^KObzQ7OC7M!1pgvBY8Wfs6iSHAJWd;@gXGj}zQquAEeTvk{I6 zyIcS>y3w0ZlLUcTq?9(-b(U#b$t=VQJTaL}`-@m=)&gd27MH7qM4K8OUfh%rBVgXe zap-E>RDoGqN}~>%!OuTMV2FM76~S8$wJQXsJm2JhT8UF8@dGUl`kdg(9sYOx0e~&D Uq^g^iEdT%j07*qoM6N<$g4Oytu>b%7 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_account_lol.png b/app/src/main/res/drawable-xhdpi/ic_account_lol.png deleted file mode 100644 index 3064d46d283b7938b26c6afa41877d8a0a73bfe5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 678 zcmV;X0$KfuP)D}e-yKp-j*B+&1L z5EP=a0)ePNAmH}f|1J*=O@Hs&55LKowzt{2o86tg=5m>3mf8QYy5t9Sk2m^RBMIR7 z(wXo*{-gu^{A-QuEj&uTpaX2B766zk^Q}|^2=bv%0CkTY>)g4nd*alWY*)E#F$7VrB!qJya^d`?U#j1 z4FEOAh*Hq)NfTRhwh%Zr1RzXyOeZL_G`z1mV^FtE189Tb`#2x&-Sug*)3*TtXruQw zNpC?rxlFw-u<;R1Ec2jq+J#xUbXSwMwtmAX$=CN$C_Xb%s}q{54zW!M3H~ zKVdE)rcNL&nl^$bFQc8rJ+yTCH;E<0@7xzfkl3czQ2+SIEVGo^7dZdBVo+c2=>Px# M07*qoM6N<$f^oz(J^%m! diff --git a/app/src/main/res/drawable-xhdpi/ic_account_obs.png b/app/src/main/res/drawable-xhdpi/ic_account_obs.png deleted file mode 100644 index edbb9b066df76796cd85e8a487f6f6fa3ced8fc9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1145 zcmV-<1cv*GP)?Z>3!#Bo)EY}om+W#+sw*VLeA2S{s6E`f6z`BXV^;`km;O>M9@)(2yI@}8YjE0zz z?5jC~67T`$0Hj4L4mUZ>L?K%2P&4`_Jb(9_)9V%LrU>w}W3-uo2$ z@~@3)Zh7_hs;BxzwM9z;$mZep6@#Z~J|Wn~@o@=XeQ50h0mz4sYP|0VwrQsMY!?s^ z1i_&_0c5DdD@j~)s11`&Cw~C~Yiny>mgZ+QCxE1gd;+3&3BKXU_ym{FzjCs#ecp{* zfHE$}`v;{?8>0Pt!23X8YHI3-(p$Khe@kd=Y_wH8sc46=-04gt63b;IFLycI;ZQ=Q zTToI?6B81hk`tsgGd(kXyWoxxj0kdCH#Pyp_Gvf(>1i3=i;Ig3(&06)YC7R&aKI-g zrPxbR0ar zRl!1Uf!u;{0>_A<$#B!#&N{&wa0!eliD{74PN(x5gaU}XqI*RG7=Qw=LdXE{a5n`` zsjGWq9r`{r0>n1L2!%E-fnSQ-KRU3jwXH8OETD7yZwGs?^2g=Eqlcwiq&ky}OJGTr zhCv>jn3$N{N+9n>Ub~XLAmlcy96o_DwRJn|+o2kR1jL6pf#w6r z3IsL*C^MwJ2K+KsL^e!lrrABe&L^vxeEo+7PPhwhO)EN)U zBETKzj;c+*UVE?jas%O}iU7^kD0`8iKPo-clz7S^^?|BqRUK-)56)CG$eLGDG5Y)a z-O{UVqmC;ZuT-j4fl=npUu2>t+rfnYEg zj0OUMU@#bPWOoVcJ%~8MIItgQftmBpyfY*?&+fhFi$sD%B9TZKN@etFO4A!dUdfgG ze2;gYO|~V=IwrePzH=mda-`94C9A2=Ra@}V=W%{HdH_wYDSLxXW;V~p3cOI5hv00< z-c+F8C*3^%-A_P$Pg5N_Dhy}or{4vVl`w;3#q64T4YhVQ5a}zQeDu8XW2Sfny z0UCf;++Pfxbw>LZ4Itvo^PgLI046KP0N}x!Mgef8aUBPMBX=`14d7aQ73T;^ei{eB zhsBp>`4YF$E-^G+=m2VtK(53%ZAAb43x0$O&}*S_00esv)Rp=HfQ}J*cnkoT>SF0e zJ4L<`c}t-lN}xtA=s*K!H9~;bP*YjZk+RoXgnbiD-<3DYq24z67F@nyQy8oHE?OvS z6_q*EpmPaDXw2a2Fc?kEUZ@XZ@pQLZ3s(8A7u|IW%+B@ha!araNB~o}*qZ!mkpKvQ x00@8p!YHZf<&>7Y8T6c%+ou1oNF);JM_<6*972Q(njioG002ovPDHLkV1gwp?@a&z diff --git a/app/src/main/res/drawable-xhdpi/ic_account_reddit.png b/app/src/main/res/drawable-xhdpi/ic_account_reddit.png deleted file mode 100644 index ed3c398c13496183a88bc7e8f6690c19e9ebf352..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1083 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 d@Epzzl z1Y!b#Kr~^ZySoL%#CUHl(2R|=cWsv@_mY_amM zTQV(HG_B5PEUkD{IJ`}-w51P$42E733PX@f< zuv01OixIyKc-aYju7?>bOawwo*q&tJ@y7cUoha&d`5TLq+zo6AgP%TU6IkMrzThw} z9m^ugE5iTbD*PQ9L3p$?H-hka@n-8E7RpLv6|Mms?hes_N9hI(Szu@e5PBfrLIS@- zFY=VT1ny;{pry^y09UN~4y*@2r~V+437u*V-%ogwVnw{tU?_P=*#J+PeFjWZom_f9 zM5$Ti!5ijWY6E$2DPXtECe z1zmT2iyp;>5R=6^0F=zEB4gyQ!nmL9C(uv!&sm+dp`%G(|6Ij|=N74NoTxK!4e?u( z;bqieJ%VPU11PtV-6S-82a?~WRuh)B_Fh9Uf zPTtT=cvJN57krf<(~*KYVD749)6F%YDC>X5R&4R{4%NcXhDY8=<*2-vLBg)75grVg zzd1!@^XUys?Ed?z2&~WxK{>B78SWJ|OsNK{D2E{9BDqIxd8!lZ{~FhygXcN+U>BC) zKo&^jVm3B>u`B{a%1z-evbr8bCyjfs4c1RD;s?7lkyd;P6Or4^xC?-*JoosZBK0}@ z=sm>dXlxSPi77K^2WfQTPJU(io3ae}$A#nA1eTJsK}7_lJP%*@)p#KYb~pe}r4QcN zfhGJufh&h`CI#Ou7trJk8~*1!9Ttf(;?`GK1Pq}&zvE2UX8BlBxF2jyg~$pCpH#or z*#n}npcGS)zQ3^u%*5^)_sf#!S7tqk|f|DO@2)XTy&f&J3vX1fK*%x9?FtXO~95ghzbwF;lL8ti;{ps zM+{FWOB64Giw@0+O#%j|#vRI?1k?=>7=-{Ei$!2M(l4k7P*IhelnDWLTbT_Fj$;uR z33jrnjE3Zk$Y2&LoAroDovFiQNuRt(Te~tEBKA+BU;Ip0DT?yE|!Z;i9Le)|}3>IS*}Z-^$lYJ634> z-TX#wLyh1teuY{va3AZp?WLYSwb;FuiIPeLr?Uy#M=$=lZGwxC*-bF+b59x9P$=bD zA~TUNoh1|SjIcgefLR(2(9Sk^DOi1 zl6nDU%{~8>Y?K|U}ABPTMf-|#v04s%r405gb!{gHD6j$Y*5ftXB z-D2CPU+Dg`LX5I0#vH&Lf?6!SulZ!R45WyNVGfvVO_6c9wJDqdQ)K5yU}xuf z2LKx7fR>nU!&R=K4)s+tEp_Qvmvurir|)_S8tG6+I;hWm;wArY8=F(Z1NZ6f0T}-K z@#Ftj?Ol}SkAd?54F7uY;Qy1<%%ST6P?GwvYSsVS`X)oq17A;^{Qtl&Xy_#&P_lWN zlRxw_F_khd$sTx2sRzL6eA)8w&>-kW z;>PodiGlfp)dQeG1;QQxwz&sye?U8)m?Y#qSUmt5DIw^A`w9viK*g^Io8v+K6rx8Z zZm4J`555k)mNQ9XL(tCs_d($J_czrv!^s+*yQ-iq0UG85b@ZXd>vc*iIy@K@Sofh_ z+TAx*v?ha6!hHn;0h*1Qf;@O#Lqh?EZ>wlpTvyR?z=!WBYpEdX+3(=MGCBf13P!;w e7zLwX!~y^`Nss~wJF_ML0000LbXa}A!{{PQFQ^3T)FlqsQz(S$^8w`6G zt}uLon#02&!r;STLM;mpFf=kAKo|VaKrIUz7+M+s&@PCkFgDUMlJ77S(l!-!5ED3* zSg@A1$@Bu_2b6Tf!jR7p12548D7WAN8o!#Mfx1ET0gWF)>!Lz}))oki7T0tst~(fZ z!r3p-{^{ZRCqM@p1qF002ovPDHLkV1mDkh2H=G diff --git a/app/src/main/res/drawable-xhdpi/ic_github_white.png b/app/src/main/res/drawable-xhdpi/ic_github_white.png deleted file mode 100644 index d3eac70b459ed8b074c8ca9997133fd2ff68d7bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 661 zcmV;G0&4w)WCp6>oR%BbMQj&rMA~KX;axNd`L+1Ox@HpfG8@lYWy7=a+yyTL3=&`lf_66Fw;@JBf zR8j(ygf<1A?W_F37iZ2C6dfX;gqBmF29KpripO_7G{GKY8T* zTluDjMGFB1(UQ(!+iUxMW-h%I7%Wy44rk~Y!AcwC0%WLBYyTI9*%J-pDc$!nIDrv@-lTtE9Gd)n0 zXIg_^x<9XCvl{i7Y{Ur%Y-(+bP@qnj*mvxw6Xat(w8*ldlJ{@3r1RKPLX=x2rm43yHb3L5gj5r?93tP;G2udsfH?{S1<^U?ZH{GR;gj;sXUXPb3HkiCz%)4 v{OM3__vq55n9!{BY4Q94e?XR4;(x(kRG{(Cw!fVx00000NkvXXu0mjf{2xA3 diff --git a/app/src/main/res/drawable-xhdpi/ic_network_connecting.png b/app/src/main/res/drawable-xhdpi/ic_network_connecting.png new file mode 100644 index 0000000000000000000000000000000000000000..08db5eed424e7d4dbe51ede89a9e90fc3ff9a90a GIT binary patch literal 323 zcmV-J0lfZ+P)8?~U|qH5?3a2S3wPv-CZ0s{ex zEdaS5-EbIQQK?-pYQd-l{}~pSYNwp(Q+feQijQW>|JvH1zKLoU+@7lN4V&g=W!hO( zu>hCmT}|ryM=hX_1)x-eO*5>tTu`Lvj7|RILYaSaiVfw#7FgP4V>8^;(tbY!$e?@E z6uu*CJkX|k5jijHXwcaGa*pg@n3|_E<$kZP(O7`gY~cVkQ$WoXxCIvW$IY!BEC8z- V$oh-y4-)_Y002ovPDHLkV1jc(kJl*|pwgBXMbi-lz$+pabQ42;b_zyH7JLT3Z;Mdwie5S)SNhbDI2>5m-aJ& z4Ens<>^ri?SDOMaBIkvdnhM6uw{}7z_l1!C)X531(WTI%mzDw_ z5LRA~5>XwNco#g((-6Lj&96iL-zGYf{~Ic?V_Sg%Hm(?2N{6LYKY&xpdp|Q=f4f3~ zC)=lgf{nX|>x=Le6&9+<_1_BIVe@@XzK|y!5Pl*T?%{nBx(|kLM+z%vlfc07m+>O zdkVBfc5&h)=#1%DL1Y_KC#G}CXyu|{8*okzJjX;=F=TjmVmNR^5zU$gd|d^f8&QTk z2ML6WH%%_l`P6sVWC6*Hi>k+b&tx2G6wtlvMZ?!)%FqkWVMYw*SB)SOU8dFWak6|j zN-L)}AO9{lLuN)CM?TUu-lq6Q65Io|@XVxmll9I%O7FU+g$zSQr9eAF@qb&_e6Ks^ zVNSGVcm>kN&}4qO&Nx`r&n}oR?D%?L)=5T)e2*qw88S zCUBKr{bogYtf39;qgZPrNEChR8VsLX_}g34FC?72u*3w;^(+$d-aX9!C(L}~Ms4!X zBbK^Tj0VT}oyB-hDek1=ka=QBjamkY&WzyP9~Ojvv_ diff --git a/app/src/main/res/drawable-xhdpi/ic_twitch_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_twitch_white_24dp.png deleted file mode 100644 index 748ac134c4d1cc8e5a7c77628ce5b2d9d8362541..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 416 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezr3(Fs6IDIEGZ*dOLHy5M!W7`*%hb zM*$ED6gb1tq`~zYNK~-&ZwM4&brf)M6maEN;5bxT_N;B|w|~aRt)dAh7fY_3kxTws2WuT?tw3TwkczMT?3!j`bk`LL^VNkiP!Hy=V+AC%voFuO5x zV!oQ{gNFH{wFkr0_kP=TY3l(U=EwZ+6(2+w9^4_z?c-sq7<^mPS-jzV?eTfp9Dk0O zJ`Z5^YCSG?;s2t91Iv?nYS&kZG=9l=xwwt-K7ZskgRIZu6}lVv&zKkAOusWX)AHE9 zix1*ERPSp#FFS0pD9nEL=@yn3hpIX5cpSE73HniX(?)-f5Z_7%i)vk9$TN7l`njxg HN@xNAe=4hu diff --git a/app/src/main/res/drawable-xhdpi/ic_twitter_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_twitter_white_24dp.png deleted file mode 100644 index 9e10ca04d49a82a282eb7fd5a7982912a3cad5b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 656 zcmV;B0&o3^P)_LE)Sxf%ii>f~40E*EB-x%#n@>re zsz$+WIt<3py*ez;U0Ni`&ni(cH=_v0-o$$1G!6L79S9SsDUc6Y<_7oKa#zLk>Vj4% zy&0OGDgL@sKAgIF;jls@P+*VhIGMX$NUu7x4JHe`RHmaS{wm+UKzGStbedZo9oO1Jd7m(a7$@-j1;~5IE({qVC;?g_d{m|dV zo5cA)^3zLg5<3agGh{YNLlTYM=%(aR0{Yi#ZB<#Z=F4a+_lC@~#*rrdh#Pv%t;rG( z*j1#z;Tm=vd5Si>fY$SKd|8ZYol z+(f6Ns=a4O@-6e~Y00swoO9A)GtRCtX|owoDjYUxb5(~|$TGMG3+pH#57X^&diaAL qdiafo7^K=9(9r$+Tw;kO7U3TyA3GI_#~ zI|sza&6l;&A>2Z>J#CKxa_4~D_dg=aByVQNXUFy@nFTTyc3{*tkUI+$Ozm8`4*B!{DR)# z>bJNBR;r1qsHB(Z4dPKuC{bSbTH?fSyuqOCGUa7rJ&CswZ~PQVNYt$_0Q}%xr{P9z zvA=RSLY@(3@h>2v?R{0s<$XSea!xI5W&QxF8`L%oUCrKlM_Vvfv`x+sgHLj+`{JJg$ z&8g{93eou!oL30P>nh7u>%yz*9`BT)P#mX zX`{*KFCBeTAwZ1xI75Tn@E(>NUK8umV+AP`NxUIDj`Y2Y(%P()UEdJz2`Kar_@ zbjk43TS(K>UP4i*sk!=vVpxCD$^gN{Int<`lu4!B;UE=TR*Ho`7&{}Dg>yPmbd2=- zD)rh#tu6EgvKQYijoZd*9rB#8AI?>EdNQ9@8Dh|ffUA;IoiUw6{7W8fN*!EEPN&ZW zOEiEHk{Vl&mpLh>$j7ukJ^MAUTMI zx@rK49ZW_ct1p2MmuReF*uG6?a&61oVvd*+noUTr-)*?n0E1N|^IMl4~BCG$a3V%R~lyFqi++_eqyM<&fHj##*YJc;g9L;4WmA#JEQIg`-I0OG5yWI z=3U3cHM15E49Uk+`YW8%6|!_2kqB>M8WktDXrx9XIH8TW4kuo!F8 J8WXpee*uHs!?*wd diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_facebook.png b/app/src/main/res/drawable-xxhdpi/ic_account_facebook.png deleted file mode 100644 index 21b57e4ab2bf8da5dd9c941707dc21176c06c53d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 569 zcmV-90>=G`P)l`=K8mcZ&nq>6E;EEaL5!lL$*{B0Gc$lLF@#A^lwxM0@$vVDiMNW4x<5pY z$jRR9%_K0v4nmD*;99*>w4eqUTgt~nDiL| zLq>&C49F-^9Ejf!9I8xpo4}wAW6C+PldUtz6ucrW1|0+;l|eHs zh)C#XP*#1^W6&yCXnqM1`lb>VRKS8ZSkM9s8e&0LEXY8Ds=^PO=zAm~2}wvoe+*er zDAVR4Ck=#B;eUTp13`)9%Oql#|1fcg$AT1o-J8p?Pn4k>1jSey6337!jzhK>86hMp zm%QAx!!@-CnF|f`)jqN`AxxWY3NNTbn%pAp{;iyx+-5AP_`GM5H7qV_jVvA3i+j@1K^MDwD~& zxZM1_yi+Gn9tjQ}9UZ-rkRXvrTAn_QzjSGBZEXh(CK8D{+S>yT9qR4rF)=bKFDny^ z#b&0a%S%gpkVqddufl=?TWjkBzP@vFbC%}j<6~pj6BFwmJXl#-86FT zm6?&TiBwWjg4nf-&*vWt39008Ja9N>aj}EF{rQ*}gDqPeF_`M=>bC;}u{0Ww$7^nC zIzy$7vHGQ(dk_~%{sA3b=?h6Sw|6!#B)o!7YNMYF1F1k?n*@tCB zfG)D@Mlx3X`)tTW6M}&6-+qca8v>wB))7rzZ7$jrqO8B3bYaB3WoxOC( zI6{R^@!#EBr$L*1hlieN%Nm_fv(0>@8*XV8 zkVK}>5Rtjn`ZotDA0`~{UUqx4b~L=wYM+nxr_UlAASTtKZotOnSf(n7PHiF!*i))$ z@k4Wn46qCtRFwicj(uV337!3g<%F?~wHMHs3txlS46{&_x01B$$I|=KD_uaI`YhNB z3Rb%Yg=x7?B|L89jLL_AQnWbUlVjqL-eE;ZVg0^c)c`ve(&uj0P);(g$u~|dk8G8Y z_fQCAcYNnA0@$PE6oO{*uh0(JFJ)Jn&2Fa@T^9lwUYX&?|0$94O$#kLxb$Vk-!4Kns9rbXgyj? z*qQ)mAFCc!2}^y|tFSaYiVP{c@m!*BdD(aJIoi>^tuIP9N12fiEc~c)BK?h5&8M7q zmuihGwm0?#peoX*6n-vJhA-*-h6};0?E4s}x#I6XrhxjXB#J3CU|F`e@rvC+x53qZ zNZNEUbZ+{-s!L1P2!ge!vHV0jfuo#$i#D1!>ttm*ZxbrX^}dyP)6`Kg+gi#3k$t0$ zI#EVKBN{K_xxHBA=K;R3!Mp8@NdcrVK@r;T!M-*<_3o@@jV1hpSWDln1^WoT;;j{0 zd*bQ{0s6EHLIhUrZwl}J)6bl9^;es48WG~uIUN||rJ0CXzqXU8b1*wLTC#k;bhZMn zxzduQdJ-h1zrPXRUG-N3_l_l#g5nbJeDyD^0$Y_Ts+~D3j=7QPoc-)^Xtc2$#+mBa zS1vE+3^zL7TdlXd{={_O>ByFa+Sy0lBY1h*6njz2(88SGeG=fk|9Rw{YI5;?1$dJLop@W4E3LP?7kdnc{!9pn! z94t6U5wVa$23taLNTG$a7%EspiXfci+E@Q{HW-?|r|!d-vYEr_h(a z^rg3Q$F-)9VIC4AMihU0?vyGOe)5&-Z7w3jEO{EV6yu0@jN|J)%qW{Ql_;I#4-15Q z2~)6*ax)q%6YRw?ZMuN@KhAir7bnG;2b`->AgTw($C_uDt8qfoJ5GRoO*k!DG@18? z6Q-;Y=W1lUII?~m4@i0s%Q)uT0Ofjy)1t|!(_EHjy=!J2h%@YXVHbR+N|9~99tAP>d0f$2AgJ& zoV1HGDOl@F*YCv1l4ek#?I*!JO9Z;+&EfUXZZ%L60F8MLu^E9?L6{sc%}kNFwaRMI zyhmoB7edv$o-2S(Q>m za$qxBTzExjdq<@*Es3{!BrJTXoT+?hL}=)(CZJu-t6c6K~#3`+0yyHFF zJr10`4h}gmRKg9iRx2`jj=EVoYp20^(=>?yK{8$Cd7cG^EeZt8}#Xi}CW%Sqe)5u3fVl;Of(wU*`t=CTgDC!$faA8-#0fh#8bNL^trp}Vn{ zFnCSAeRcB&bK6P_WgCrjNAk*`9KTL2MVho|P_SswY*^sboxX*A>~*N;3{D@larRa% z(<$fSENIwvrv}tOOK!`BTE`ZTX#-mIQo+n-l(R(MIO7es!GlghdVS*9wn#uLB6+4MTkK0CUM}?(<#uD>r4RC+#2E zw#z!oR=7-4Y=352`I~cXugN*>db|10hB!$o>?-{#z+-~!azS7E(wDxd$tnN< literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_github_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_account_github_white_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..77147068103372575e309bebf250993e1af379cb GIT binary patch literal 1027 zcmV+e1pNDnP)41s3IkRd~)5rkT5L9j)^!NI|Tg$xc39V~QEC?$ghDH$9bER+(# z!Gc3uL@cC`!In@QQmBv?0|r`1Kp{ee6e4^b4EDX3bMO1R&ne${lXLRjbI(2ZoR1Lo z(MKQtLUU_~01eR{N>GC06zndZQjMx~NME(uHSPfs%%OlbWH`nfj3MAZnGtNE1H1T* zMMV81Q-pK0v4XH4$Fv3aXyS=lI$P-X~?dM>e9#w$}MZ}b>WQTp0itEJu; z^$?<`tm#e9KhCuvQJS&}Y*KJvRy`kCne|(+iqNdUU)+}n5j{Z6%|1@N_c9m}w7zpP zqnO~pW|VYRtE}%GnaMO?Zx!{OQFc;k%5rF!_4HcN2-u)^Ty7yDCd5~ukIL%KCwBF= zm=Kq`4XvS!&^LB9CMLvP!K%W!y=GlfjD&*B*Drj3K*I8;!;H}Nsvp*bA_@o2xC%ls zzYfPOp@2fE;1;`jCMLw+f^lVpCfL=6n9xrLZrtDjyIK_!;%m+Xf=W_4NlEsDUt*Jt z;I)6Igb=SVwdC`dNO1C;*ccZ0-jkahiOjqSm=YajQEs>_oIqy> zVW~P=7Ze0_0j^xe17kgE2+%==e=IR+TOYBfrRib>G%uwk%rowC4%8D4b=w6O2l~R* zjgt9CT4Hz7tKml2L)wrvh3?fY7~H*=da#yDi_WgS-yV1E7tfT%f_G1)Y|| zSr`HA>CE$nq>o#ly`^M2<-DAQ4Pkfaz=F`S%XR^EU5H1O5nA)m!RRP;u!gh(LR+4m zX~a$UrH*~yth?h({;C1Wm!UP8!wmj)S;be4{1rk{92{E+FKQ45D{sw zXpp{mAag-4X+Zm~W^%oxbg12@$1a734>X{?(Ej=`cO!rdO5Kc@mVR@-n>BejRJ~pN xvjHg@rz-7g7qX_6?opU_wR7sDk3Ra4;~$K~KWd)A$p`=d002ovPDHLkV1k+L=Mw+` literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_lol.png b/app/src/main/res/drawable-xxhdpi/ic_account_lol.png deleted file mode 100644 index fb6653b0e827aa447451a1e30ca190c53c22867f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 826 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAk#_5hy{*K-Tq&M$O7x5(}6Vs{|p z>>`lJ*@dp>=X;!A=yqh?#EZ7r32U;0`naC<`>|?0k^ki$IGO0L^zhKOdy*)O;@>``jYeGxLEW9$=NO zKrYM*_cO~JfG!1!pIzV%G!Wz@u=(`~U#o! zJ{X(bsNlxDh&^e|X2mLnV^ya`E*N~cwf3{aVLu*6lil~XUS9GnQ=#Mf-NF-zK9NOR&bi;7##A(uYZ3E3*}A6}P6axD>Fw8FdZ9;AA*!wL z{xpZ;wk8gHwo*=$!;V*;l)ASF_;9ew=66gIsIpo*Rp9^0xdK{kH>b5WzTgPTX57;D zWZI$yP9?e112`w?@vZvQrqm$y{H0Q!patVThEIoLT9p*9n+r1V`LC+rvE3|Uu?gN&eaQ9Pg(_6#AWl<#&l}j@An83ZdqF=VzRHr#`B5D zg_ehpT2CxwytFd(skgG-xyTt^wy%`cLjrQjwzd{CT@BX0zyIRK3l<06jytt=ay|Z^ eKi|FKA49F5gPh#0Od()OV(@hJb6Mw<&;$V2t9|7F diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_obs.png b/app/src/main/res/drawable-xxhdpi/ic_account_obs.png deleted file mode 100644 index af3376587097ca0bb16d182a37303bb7ae4b25c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1491 zcmX9-3pf*M7#>EH)k5hhWlr@Rh25#)XjgLIOfGF560m7lgLoUuPC=~Y1&>Mn-BL=nPP9{<8@eTrkfX({-Co(cJ5*)+=7QQ}o z5|KPRJBzkMV^CO>9flRme(~Z34uj7>eTIl2cC>e3&{!Y{2#E=ac#M5YataEG0pyzM z8Z;WMR;xYSJ*kwXP61v~Ua{*pVqxKVkx2BjcMKBi@8=&E8!wYJf?|N_@$BOu=eK@3idYkPL9sw1+kik?y7gs4rFu+wZ#C{~9^<>H1;?of+H_EtWq>QLv4 zy4{BRFV=SqwMdf6My2QE?K8fbT+!f!*sxC($P$i<=4KQKm7R9xY^&q%BBa0#AbsuEiGwH$8IGW(T~PjgaJTHSQPqS}IK8FMbe= z2l0!lremgyb`AHZrB!P?ImeokEG#Gi>`i&P-b%t*m{Xr1H9%jp zxzv1t;boemw+$Y#!VJImVGT?gi@0@%mxwUy)sebDlEvmwZ%5Ls*#3hT?62%dytpkz?LpG`3h%nilA8%gw`dTggg8V%9sb`i+ z>*rx%CL@Wjx!tmccAfdV-?~T{QnIYk8dx^z~$VmdtwlpS7u8n~oylIz-!CZ9`vAZr97FB63SC3f)9d&UBlIcuyWJZG<%^7lM^NLDd$QYzoYCY6lx)k6Is>P`82XNCVO8&YtWk;;dV;zHJ=CbzeR7 zl==EDmfD4EfYlut96PPi-SFww%O8HTwE4TR2W6)y0aapi!{+vb(Aew5Onei3)kTlB zG5ZrZ&=37pYX&L|1XjaU<+)r1eq)i+FnSbLhD%_o4xG3UF1WVlJr3S?=-hz{@2@E? zAvXWKi}Fjb%pA9wsx``!J#Q0*JH3b9D0!}(DLVXP3vA2*uS%|Br?Jbsa2q=~j|1y& zR*p0n43-)VnU1}??qRp?7ApGYnqzEnO=N4i0LQX#B}^PVN=wSzr;cI|cxa>cjO-Lq m`<=ro5r(BbA+bKcOj^#6b_7ADLjDC`9^y{(q248jX8#YTSF4Hu diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_patreon.png b/app/src/main/res/drawable-xxhdpi/ic_account_patreon.png deleted file mode 100644 index fc00f4c3b0099f29028be809bcb5d32e27253ca4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 622 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 Gl>Y#(+@Li8 diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_spotify.png b/app/src/main/res/drawable-xxhdpi/ic_account_spotify.png deleted file mode 100644 index 3660566b8cead19996453585d456717b1c085b0a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1061 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAk#fdHQnSGjBPvNz&ouLDtn+|49; zAoqF#kShm7SL5X&j2l2kg2L4Vx$6m{SF_}<0U01Eh4Tq=H$Z~2Hxgy9#RJ(2_Y;67 z0L=y(3o-#{CP)F0kq9IefZXc|4Eq~^rb*vU0c%VG8FeE;=1MX|Jy4Cp%>=2NX|mUn z6@V69gV+l)9B497jV#Eh1lene@;5-{FEMX30orF@666=WxVrnejrab^ubqo8&)#lu zou_Luj|_n_B-7BU1-~Ue-mHZGaHtoE8A_4e37bhb$lix zWIE-Hl7jy&=ULw_HHfn8Ql7E2cs{SnwuE^s6B$#=686n<)LRkQt}|<=<$}v{n_j+2 zYq}$ta#iI71FzMDSoT&fru+>ZHCiuN#e(NEMe%Sqr720K99R@33J70!q3 zEvQo8yWH{Y3rQX~{w>n0rZUakm~X0Ne6wg(?(eq58)e@&9WLK3Q~5LQh~xS4+eWuv z6;3lc*1SGf@RDBCDq+5=)RnV$U0{f~s#|zr=0>*Hbx;1)6-~@jxHNyw$BX`=ZypzF?T~n47@k>Ia(BAk&XzBgyW+22=Bs>v?d*|r9y{J}_X)k2S8J-x zaBEh{ni~H!lgz7!Zd_(kc%gaw&9Y6`H<;_yoa)>3VVUIj{+qj0y6t}nG0s`FFX~V2+MiPw@K0fM)nPv4 SGYObi7(8A5T-G@yGywqWjP|_% diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_steam.png b/app/src/main/res/drawable-xxhdpi/ic_account_steam.png deleted file mode 100644 index 7ca2f5ef54de6fc355209a5215caf351a20e1d73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1455 zcmV;g1yK5lP))mG*X}m@gvv=5;Q#2j~E3W8ZCyP4{C@uaZL;o!m9#_ zBq%(zh6FT_&_qBhsk__hwp({$?Z?)w1GL!h(l6Qx6PdQ#)adSV3g903OjMU;Bvwt z5av;97tT(M=8PkkGj{0HyO3HP=(x@a7G`ugpNA zJP(po(g|7-=OPNix$m8KKqtcTuV8Olt7>yN&$7?Y#*jSVK0nBv5a&~MXY6<9utQK5 zZdEGMcjkaju>&3Dh=}H99RkECuijzjf}occmvpy3Rqx<2#wo-MJCMA;&W1p1d$l%w zes|F#=E=6SmOl0H&J3Ve(qd$jQo0fVF5d^X&1u~)8xuDyMlwZdH})9=Rk7o^`yN{Z z01sS1(I1+RJe1Wv6&nFnviq)Uix;aO01?ec`qw+B<*Nxbuwf+0tU(9-il)SGfgpAb zsWs@^c2Iend|l&LwLhqj<6*@q>6B7jMDZ`6lDL%SG{&d$MnH`*`BzD2Mii+l)r{^` z;0IF&kM}tQkUPUhZMh`(ML>|=bJY-wXy_dzMy(}z6v=65TsSVRfNi$ zSHwY}brEIGyd4^cBt4of?vS%qe$Hgf&lXMnJNB9rbqT zhak?Wq#svHlz%U<+h5~96%|FL?rNt)$N`9m=;mm(-#MNQ=wur)$my^qjv>$|>W)O| zSSVv>5NIoB9%f)SBN&!W_#w6n#u=`gU=pu5IM(?T6r z#Dko}r+?B|-rMd3gK;&Atm%?jRXq`QPJzz!q}SGQjHg|rVCSQ^u6CM5>KcORyf-Z* zz1F%2qc7x5#9EMwcwf+X7ZDM?&VdfKFsgBCIcz4rxgfjEsz7FRtd_<;*&;EiacWHM zH3O95@k?XJLV6oL+%J2y#+ao%h{mbIsR7i4A?0$i^26;bre6)*8P#TQngAXbft!C? zO80ze_CcTeT^{bzwl_sQ=u(vExt}e}55vi|F!Su1m>@b5sN<5#J}+)*2YH%_M9G3W z6Lzso<_>l9%@HC=boV%fZ7sfFL&x4=!4SwbIzCMF#tjQN=ULacKI3#6B@)G#o0G0` zOLRmax^mk>9&*OanN@9%?y5KG2Qea|>B%ozj|4t%85kiVs=t{f&e1RLSW9_ky!j)1 z<8aana5I~GEat22ObX}CtxG(~ukXvBU5YI15~QvS^VB(}&JWs()15000PMxQO*r*- z-~hk|#Bzoat?jJrw)<30IJ||diV5rOw*<4KpE+5fmJ}vwFpq;b@dfb$_Ort{a!~YY zJdX-^RD+IT3_qX=t=7KV+wsqaVtC*IFpJ4#XtylOvMm2q`3vayV$ccioLT??002ov JPDHLkV1g%B#O441 diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_twitch.png b/app/src/main/res/drawable-xxhdpi/ic_account_twitch.png deleted file mode 100644 index 045381b56067479ae676e2d785eedf94e5ff39fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 489 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAjKdw@@fYrn()3GV+Vy8nND@Bc)% z|7TYIpWp^!0MTT(|L>pvpXB;~lE?oW`~F|t^na53|7|TG5~5(D>;L%<|0lWp2QvCS zK!QM1CwqbzQyu=ly7T|qE|7t1Oa4E<_J4cZ|Bo;JKfd_?-J}0N@Zh|E}KV$-)~WrBUqVeCVT> zQ{{1>0?wW|8yb!Pf2>R#_Y<4dM(8X94{LLt~DxbVRookF7fK|+@uwK zZu(xdBV_7K6aLAhL#L0h>x4vy(cIyK7bB=kY Ul{bO{fZk{DboFyt=akR{0J^gDtN;K2 diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_twitter.png b/app/src/main/res/drawable-xxhdpi/ic_account_twitter.png deleted file mode 100644 index 02b629d118c2a22f634b3b012d598f66e5d819ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 852 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAk#fdHQnSJ?$0+Mng1E29wZ1-29^bL z7krjm_)&hrM~40XWfy&tUh++J)hnI*r?6rfg$MlE_H|Y5E2o?6UwRfG!oi%Z;Ge27zQpMt0%9XxXQt=qhoWKrD@R43cVN1=VWduF~8qswXyP+48szq>fDOY3&UT9@%7$k z2w-t6YWz^T)npFy1fF+wyv3{qJwK*a?6Kur&OF!sMuyEZOBLoOnSFhU+)W~W9_
    pAe6wm9u#$<72 zUS5!J*^l`Nl3} z@in6H*svmmVA7F;>qeJ6M^KY<2ZDQ?aBh#CaW(9D)@0B&Nvq8ZSJhaI3?8W1_^{&% zbYS!|)X%iYA_cn=YV$Xv-2?BSciSF8V%M)R8!y+G7HBU%y>7Z^&T5PCh^XO3#wT4* zp|dxCK=HJAc!E`T(6OmBDbq)EjoDbI8FFe(i{{s~7>DGLlRsecN3U;zpgTnjxDc!s z(rf-d_Ep{Gu5(vEA7ZWipSKR6&D}3kP3Y~`2X4m{T4HKj?n4bjYj4Lr2WRs-*q+C$ zLe4N_{TKpfJ_cDU`r^uqv`?ORK)?>AJcU^<#ifD|Rg@fOw0~tbm&u7`8Hg?LBr8P> z#IsU?Kg4@D{AFH6$nhqfi*R5~m&-g5M<8pdP0se-HxVa<%4Wh_iBU&IN(OIY%q>Ih zqOJBpI>#2^>AIL`G1E$RgAF{XPV zE;O^G>Q^a}AhvY{&l4;0o3SCMDg-$qwkxz{0_YtYazHcDkTZ$CiGM#*l$;Llg~f7w zT?{Ze8iGEsE}fRfN#Kq1(ajVj|_fwT3r#_a5`RXmG9yMqRh(M+CW^x|=d?R3!?0_j){ z4Fv8=+hc0?H}9erhNP(-;ED~XT5>?$M-z{*t{bKz$n0)>i}dCo5S5HOVgvd`qzLm~ zfr_AZ|EVU@n;*LNrR>R`7~6)v?Ri7?|Jg$qiAlQPI=GmaAbaT2Rg#-R+e2t@^Z+T zgeQJY5=qef4<^SeLy%M#gO+Dq`w~ejhep^*B?%sabb?y@hzar~Z}3uX0%A>Rw-N(n zJSi~=q=xE2`Wn|=Hj4TZ&a&xv)0O8HAxBQ&hIl9`&HH~pOiWO3*xXa@2B1G^QaLGL zg_L_RwuwK>UZ*8+l3XZS{il!8tR9F<5I59<$$PwPF{UJh;?H2i0Ps>|H&=%E!W_g&BZP*W)N)?OO56nv{4EHBG}HD=ugh#Yuz17Gugs4 zE2d(>&}uR~ z4ATN2-V`f)KoaEb(Rmf$dd4YxDrXlnpqj2VP21p#zR*7CQYyY_cttNWK>M}uAx^GvXS8=vz2h%z>kjbqLP4md)g!iwKo9ZRMApp>t9u-8JT^3vUnoL6 z(jq`=bCuFe=Uu*iEu|y`iQjJ$I z%OTABpnrb9VI}}tBrG5J2FE7V8$(ec9w5y&j0`b07*qoM6N<$g4$?al>h($ diff --git a/app/src/main/res/drawable-xxhdpi/ic_account_xsplit.png b/app/src/main/res/drawable-xxhdpi/ic_account_xsplit.png deleted file mode 100644 index 8e811c393d37479c4c9dded5d6228ead64d17670..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 612 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 IM6N<$g4MCfc>n+a literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/ic_reddit_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_reddit_white_24dp.png deleted file mode 100644 index 6e747fb83a5bd131b692a24d5565cd42b5063e69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1168 zcmV;B1aJF^P)Z!V@%1_lNO1_lOu493_o zmnN5IE^~-@UgMJ1eQ^ygPh9F;3JRaU;<8}gm~qMLOwep?L1M835Lfim0REcAWyON= z!R1^>a!Qhmv$?dml(`(?v!?-?vyO?51UIW4G`NXM|R zA3FNmicDyCrNgwUk>-BXm?7JZ70_4Lz@R z6N>D-AA<(Xhz|<=YD!JNFR%y*`V(X?P?HW@SSv^n^b*;v2Yf+`NJYCb7}E*!??=3$ zn0T0TsmNQ6t<{Oe-?**{(OP%DrTW<+a`B5Gf~qkDj6-P5m?&yrAwuusk+P2U8br`p z!gH^lj3-zon4r5b$G=HLRfZrdq2$b%LBlG5RKPRIesRouWYezQEK2Kp)L_8r$efSN)p$J$oCS7agdg-;8jH>F~8+}{Wap; zL^U;9A0$!5QPiT(e4Ij#{cj++!geg9keBw!yP_U_FTCaymY_6IrEUeSDJjlFMEOm& z`2#yuqg+Z+0tRtK=rwxm^TZ<$Ey{w3GHN?_(BKK7ffr-t;_4f!Fuj``o)}T@b&#st znh~>5a^(?;sEl`(@3D}c ioTLm43=9km9Q*|)`jJFMf}BkN0000t?~K*B%3 zU?PKwB)Z990?BibXes^WmG)lZy@@s#`1Jbj?zM-&A}Eg`)W>7$=i@0@!~#TVoUj7n z046U`6<`D+3k5D9!y}e_y{n*y+h48SRes$di;+Qbek z5SJPH7j(!Cl;#G425Hb5)-t&%KVvUh#5l0cT)e~z!Zj+kBN5nUj4ho*8l*uQq(K^_ zK^mk%|EYvU|Br3n!&S!5}NsxQCaG!%0hIA?UrRyhiLhzvAw<~TXU zrJ;;-kA26<2})vMFya)&NJ$QniIx{fK@O3Lhn0NAU;>FJRj)Uz>Q;@1?Zz}=XkI7{*iNDISolBdSu2hF;W)Yl`9WdPwk57+E;sN zPRETC8AKL(Qk*u*Zk&j>j4X7KmEs(U`PvIKY0j-TC&DPB0=-I&tcF~X9{{2PeZ<0% z1RYCq>hh04{xOr{)WTK#?GSs?l~7}|k0-xrP~5F=Q4A9;O0IHX#t8vxQnGbb tD0z-As19%f)c{T)RUB8)jAHuF$QL3k$*VJk>mL9B002ovPDHLkV1hMV^2PuF diff --git a/app/src/main/res/drawable-xxhdpi/ic_twitter_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_twitter_white_24dp.png deleted file mode 100644 index 3070d88999d551cac123d262e5eea5651b3ff73c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 944 zcmV;h15f;kP)gB=U}=UH95Og$$Ph@O6e$i;92`<`$Y4u`4h{|$92`V4IJA(# z!7jx?iWG&mI9O0fAcYPJ3MnKIMN0w-5hDCMRBi5Z&)mIt$u0R$$>rX6zkK(-?|tuk z0$mg17(o;v1OS|4AG`P>_Th!-=PXZXr5%n+#)OzQ8}Ye>Gr=lv(-tG95rfRK!3pEV z43}Mi@iEKJI^)RI{R5ofI-4ZR^cxM8NzQBItka&F%y5PqY}{NKGnz_XUCw9$y{D>H z&8Gf4S{aEcWt?pen2qhU{Jfxq6X+1i9dQ`s6eq9E)eN_+IG=HxRm90Lz!<0bl}#3J zp4)a?o`Vj6uFg2zYS3CM4A}%)(#DA!4em)@`qoZ7 zam!U4fUCFMz9(CMTE-t};2iLAyTQqhgVKi7ZXSQ8jFV@;%3!c1iOW>wJfjkzhBA9s z!w4vs2&Wc6^fLsAOT5I7p4Yp_RvrqW#3jbXIi4$fNmaj%U&X(r5lsL<9R*bI6yY8M z-52L=Kmbn=^kjo_A?{fR^*4B>QP_}~G~so0fy2v{_y zs2<27a&LgdDPDOWLFUzLfxT7d0@>Ei+%4tpmFsDZV#}FEZN69zX_oBvRCKlvO>kAC zPPU_z^^-*#${7BjjsWf=iq~CRW)Ja1T-x(Zt|#%6l0CoOLs1mFo_~(;P+VC5bf=B* zCq8x^=$#Bl)(<`D>g!r_-h4{jv`E}nnJT3q$GU{nWJ0xLn9$g3$u+0bQw?*?Wt?s8 z<~$QFLe=cF355-)Ad-k9j0lFba?cAEhQygJ@J&52DqKF{@{r^?KoA!N|ogVx)ODwVE zYG$r6t(*kuV@CNTNA{wE`Z41c)DC0rP4IDUYfbMN^YN}5SP{-J?;VPeZ`B5oa!&s@>lBx SA4Eg|0000w z7sAQCr(<>ojdo`-<{)!wH>P)T#w5s`23b=(@e}7DoccdgPRp5Q>>^prpD#H?%H$3` zedZ_faBQc|W`cXH9R~r&M#Ht zhi*r`6MC)q!o_uE`&O?!6b6I2m0!75aqK8gE8{CxB`tw$F(%XwEQ4(M~+AV6pbWprp{)?Cj!44qpW+#}rO{(i6D7y7EA=>C)B>)i$0%#kWk zeZsWQeS@SOu)@VpD^1p~UEv$zyRmH}v=llX!$3xyS&qG7Qx~gF%uJC!slALgqmU;d z34zv8mp9T7t#1#&t-RNg(A_Q0B`NTd+e8)QacV1}Gm^Mf8mcc_m%kEtd4t4`r55ru zLW`#{JqITelA;|RorCq#V_Kg_?ulJege*siizTbph>)gR>~H*Cgx39|Bx$rjDqJup zTVEFM$0h0#Z3$3YZ(CxZy)bL~@!&(aBlA_@v2ofPz!yDa4O3=a%ID8?Ba5^`O=OW9 z!)DAy-t(J5L`tf8Kn((s*XZme;rx85jnG8nHNh}GrlZ1iQ)wmlguOp0r4isH4+;L# zxhub(vYAY->s;kp&|bNVefHNf-yK^61EafhXEaRK>cmK^nD688C423(d3GcrdW-sT z!M1o#66A0B=c8_8Ln|lCSxVRt-z18)KiP7}j<9n+o-!74cIS>%QJu$O=y< z&X>FZWnxM&@p$n#L~%C6q?UVqCD z;`TCNGB5pr0eD)Icj@1K^@3K!u8tZ>-#HN1qOe^giP1AOS% z=ZANiLnAt;awLv5w}y zzTA9`i7`UmU@7>Y&6>mSi`zU@wvd*}IQAG);b(}JBT!_#=81O|u4W4 zi#NXH)S(0Hd=lawi7H&`5V zBDls~wlbq|1|>6+v|Lbmjtg#lEZ|S4P?3RpRGkS|HPn#dB`;{$R>O@?cE6lxy}H>H~PbMr6F;O}upu3^dMH*Ez{D%ES2WED_4yz5yLwp`Hgo^dQN$^s_wPeqUyO+0uj6>*zZNy=iCzN!+((q?N*JNL!IoDB`&`tF(9OP93UC7~z8Eds~nd)HMRG8Wg=P2v{Y z6Ev1u+(WLVe`7H&$mT$VMtw9qx?h+$D=~v4RU{CIAU9=8weT>P!nog!2E8mE&>Cn? zEv8{n-)E%S2nebZa{bqaOLxK|^NZ+x@s6p%(xtJtDSs7zkmnc9XZct62TuB^Rze8$ z4NL4><3j}N1Oe>Z@rGz+cHy7j`4Co$iI+DEIP^OW#ow5Z79S0hs|IzRmGemyo z(Ls#nqKCd5e|%!@n}pq~L|ps{&1CHKlrOHI-8TREN&CKVE-aRUyNM?UbZ>l@V;nCt zP#OEiqiIcG<0CL(TC3EDg7}I1H1Sx)!}6{3u`BUxVMBFO!<&RhowX@7*elA$lJCFp zMlH_t1yG@uepwMGaWf&<>B;^v(n4jfeysm52sU)$eyvwIZG~zC893a=3eolJWJ4)Y zLId^ik9xue_;cWi+;8K?1k7-|^EckF{TJT-!e;v;hr`j|Ye@9zxqKHe&=B|tG)gC# za&j8Bi94a%2LaWT+2n;JSeJW}?Ck~kz)Mfk2Qrzb%7 diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_facebook.png b/app/src/main/res/drawable-xxxhdpi/ic_account_facebook.png deleted file mode 100644 index ec23ad9b6abd091d558d2bbebfc27c1d27038f1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 654 zcmV;90&)F`P)hdiyf-f?GE;52= zX{0SOgQ~2}Ei!}v007L*;VUbEla|0OGlL*NfSR4dE;EEJGlKvB|1C0uqPgrN0000& zbW%=J+vktdd(Zd8zs=Ldzs}ab*yHWb+w1%9!=KIO^i#&b(bwC=;P=tL>CZGc!++Sj zWH`I0uXr^y7b-~s{!2rL=6og8a4xcdXRPpwjq zUf{v%b?yV+6@i`)Xet7AAMm0GSONs*$aFhxV@@GJoLu)MFA6V}f%qblpXmaPGZ7?k zBLW4U1Ph!TVu7?JSRfHFa0Ld8fPr6c=-_#D^pzSgbeDgt=?}YoXZ`9JFirOyU>7m2 zLkHMK0PZ$62*CZuDH^Z@2+RRAk~|kkzS~(42xUfFXkZf!RM0>S1|kavT4l0%xE^`r&SjbRW=bZa?AEUP`~3s%`FzefKb&9A`Q_YncXQk)t1b%wz`iq182qji z|D`l!SO0X#+6};9cULd0_=D3p)4_xRhl_bVzc zM@AOp=QlSs)z;QJIXLL)=(svN3j_idi#0Mb@}i^TX zOiWBvS5-Y}Y&0`5xlN42Y+}un_PM+a%i;IdboIj6qbJNn$7#til zMj#0O{;R92YAP!8^Ya*c``D{jNkpPZBuYz7jR+6_qp$BySy^{?wB z>EXfS@s3+t`w7<-cjqCm;oUs%%FDB2XULA24BOEE!z46^`R!r?YA%$Qd~ZQ(qi0=Y4C{rO zfUbbp3cZ;f4zK7l2ELqXNJ}Zc^_unRssTLs5d718X$40qT39P001Rek+-twU4m0BC zoBaiQh6{nzUPE7ojk<;~<_acY;b^>b>(J0n4Wk^y(_GpdhVmH2n7vNCiKdIfhI_?zdWGe+iRKkhR|n1gbJa>(1{ zkDnw6gPTdS0V@6!g}qZql@mt$-A|+SXTyN7=41T7+*0Pj(;@31fnf%C&gzGt^SZG}Ykco`{#6G3~VS(=C-P$ucJ#DK0!*xa~(tuLhJ&>XUHeHqRI?oT#AtP01hM=ehL9D7w799OH^`ie2%dgYia~f zhHW#ZZP0JJblWi(OaT~P!xdffZm~M|`?;sX(Bbg7Pt)Z_kGE-#3xk|pPazK*#O zsOYmIEoD(#m6IrCU+4YG1?JOM?#k9d=z#WfN=82=ZRP$sSqNZrlio>cPoHga5e16Aab?BJ3C{cYgZYbmN zTB(uVbZHm&*0VQ)ugjlN<5&pkBAmgG3tG{qR~_u!{VC}_aw31RZ~j3{*Y1r1XRvOV J$9BZDe*hP2lA-_r diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_github_light_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_account_github_light_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..336ba3f2455b061df3c9e5526c5c5c2621be4948 GIT binary patch literal 1286 zcmV+h1^N1kP)h381Pd*6aBv94AwvcchX@W995Qss;E>UR1q%)i z85}Y=Scs591}zakA@|m#{E|2rT>83tZwD$Ee~5s!wwv0vN+G%4p%1Giu0V27^xt{3upY z=K}8@C8QDVH}oK8P?3iIFq&AwNdGp?9BK;SAI2tzy@x-ABQ49-i;uJ(_#q`{L2V>-5LoLQ{99b9drC>B;s%N+YqN_McCmpi=Chv&sTuDT zQ*HL{c??;cDuLfZ!iIRld}CFGK+$2^c$af=>e361J<^kPcyHWoNSVY}=I@ty-V+xr z;v<6g-&Is`h6`NU?q38^40i-Ddzi&umzD{9W6pPoSGbX1{jg({Rc5|#VI7-DBTnqv zDBdH3ZKM%kJdNnRnKO>+HjH^&P7!s(Irx0$xc>8w(_9-PaOQ|6ElYq3xP!(BI7emk za>r?aJmX7-;D^XFYep{OrBpQx5r~tsR%BFdaZd1<5dw>xSw}@}AdENUL^o>JyQBQ! z?hE0tonDDWV@AAA&U+-PW`k5yG?+99a~#AWF*Oa+bBw{HBuN5uV!=D@fSFF*P>$ic zh!MXgC-`ibzzsQr(AUqAH$cF6<}XI>fDr!+ScLK&H*T$@?AuN_+vnvHplT<-JjuT9 z6VG0#eSxYc1gd0aoJ$}=npnRjD(X)EGa^U8n<`3#bh(uXgghY-k|8HY!19EEB@=YY z5%8w28?y_p@MoH@{WA^n@`|aLA`kb$9x4T zPR8D>Ay06Mu*&Z2Lu%cOl*zdTlbQ`qhl#n{Afcyf#_NPImD~++i;05qc#2z^FtLpS z*ygq&2wx>FuS%dD@bfw=$J+u0qGgR)>OpQY^A@)l6IYlLs&O4?>MThLHSnCss0?t?&O-C-i{MryUi_gmzR@tpE)%pH_j3?Uai%jZVD~rT<3@^o$v=FDCB!C^zYcg z8P0JH3l=PV5G25JjlW>lL@i>N+dZx43uItSqMXP{oxqizW>-oUh=^I0K*f{vG1G}q zC(y(v5311i{hVe-Q|<|Dd$abB?IDMz76KLJyIp}qrXw;q5dMCr9iCO+z&`{i32dQ- wrX4GYBvJ~fAlr|Bfb+!{UwrY!7hiPBUw){G*sv*&H~;_u07*qoM6N<$f`4&QhyVZp literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_github_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_account_github_white_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..f3ca4cd3bf53ec38669b7adb97c9eb74a35c63ca GIT binary patch literal 1336 zcmV-81;_e{P)GBiPk1{{b=1TolPgA5KRAj8+imTkTJ`|iC@34Pz@_nyu<-~Bu1 z+;dEnAVGoz3I5OU?21F0igcF(nxZTPqsOOoMqTPskKTB_FOmRKG)s##M@33WK0T&A zdO^>Er!)m*$L(CuK6NQW3ygPf z>7Mt=Wb>XgN2Yf9zJMA&8jbNbO7JhGePDjkFj+pk9JR%<;367{Efj9asd2u$A8`qB zmJiXH_f05~T%%toJ$lfi9v#vton8K&r!3`YnywR=*YwzXJtk$IUNH5&qwl;6{n5{G zv#eLl?*nXL3l$WvmIU)a{s~p=paMqXiL6!6j4D^$rn6{k$kEv6C!cqC<4;exdOkag z7kP<(hANr_s6zaNJMD}BKP!8}UzqH;UljYa9W5YVcxFA)%XmfTJ0egNYVGJOp`V4C zGPlofYnT_lEwFR7JIoFIgT(dwP6)_Ch9&j1U5qtn$LNMo?|W4-n?f)UP!28SP;JbS5Ba7Al^NJuIUUcxNXqDywD3AhOgSg1l~x_=ryO~|C{jb zo_R_M4B*Tgpk$?LChdf9bh!&(T1-^S$FVFeP1KxZ!#lDz1Z7vkz2>%E0=;Q|(_-aV zIu-!%JFMMOBadwbjdSV(mz8Q<2X;D3P*!T-`Jf{*JtlI9HZ~bm#35QR@XbhLS-Asd zRZnz{b)AJdX5I1tHQd)*P{^T#hDPhuK+}ODe`_P(=;6USSH&wduqLjpV+nP%BJ^J9 zw|;~!xEfbuj8%c6f5fFA%y3HQvhmmN2|zY9!R=8^o$u5OfuXolMNM5MbZRdeN>nGXLN*X; zdpa@eHdiKKv2Stw%sDa%;}i)rtyY6V6o#lry(3a0plrUUPJx=C+xb0uNr!YypDCb# z0`Gwu0g{Erf6`+I#VkzAx~DD8K$TnpIdSG>fxx+yW>=y5Rer{7OrV1pu8-M4ggJo$ zesy1kzV^=*RyJioU?-NbAKMRg46G37nEG}T64e`-!GZGpT{m>>PR#fl2}%ju7-Ddh uD=1y0w9r9q0{;M)AVGoz2@)i*ivIxS2~9ecSx8<00000#qJlEcml=G&vyVyomu8^Zjl?1adDB`+4(M~=6iwF12wvx2Wte% zf^;o{i7WsrcD=gF;oJhZvx{7S%7AD;*eIaoK=#=MK*ernfhL1x&x6#1i~>o4WPxn3 zs}{He1<%ZP1G)<2fJGp8?%xk`(%E{UEkLvEN`m}?ou{YIeyreaa#%&?wZL_e@FLr45&;Go*e=^T<_tWn=+8NHzuMW4_9euz4`Q`Qb<-ze9`?nW=XZbTnx0`{1 zX``o$V@Srmw>NHA-7?@|NZ1ynp|jLM*y>nf&*Wn>w>WU<)crpm)pK8xIw^PcJG06@i(W}Z#9o< z{2;oq> z5d-)2oyx2mmfdaOJ|I}EWyG-jmEnfQ>N7Jv8=7ED@%h`PLzh2f}&{Hm@$!M{!L{mS?m-7JUnyGv{ zKF&MM@@Y!g#twTm{*GM^nzA?AJlAVAlm{w!I_Um0tYFx-Nc`rs&TfOJ%%V1dx~U9u z-C=)x_q*QtlKv=Px1eEx;4&MJA9BTiU${j1%0zA!**$g~9m~%!3wQL*ESp=^v-U~kftsd`3+0bI z-?se1I!k-i9AD-DBi;l18RldkP(M14=ZBN(wI}K~H1Fzopr0OJ+US^xk5 diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_obs.png b/app/src/main/res/drawable-xxxhdpi/ic_account_obs.png deleted file mode 100644 index 70a560a76af9fd15c0638eb8cc14d7183f2180fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1951 zcmX9;2{@G78~?^2xr8n)s+$y1nfbn%p+XD>$u`*wV~dh)+>EF&QHZ~;owV2zt`rhi zX3Q{_gqlfI7+ix%7|W$eDfisx|2*fs-@E*N=l#9sJkNKFY-cGit11gYki6ANk^}g9 z|F>n(zz$d>fdXooY~y5(*TH*xd1qy1uYFx}KjZOv=CcLKVs&-Z_yiG)L99>NAQ&X- za`f3V9!ZHw7z~C#!f$D5@o=a7^;eUPwXH5ekI~GaMbH`=8VPtk|8xGK!C`}ggKcf? zF3xV1<&|UnF&KusySh&poZ#_zQ&UqQ6p2JI1_2#ouEoJRFg1)yKy*t=N^^5^6K^Ee z*4ARNI2&s_AO=)ROCJL8F}>pjcM5=mU~p+^w^=L}5C(Kwnp+}Rd^j~6#^Asr8ksCD zE!o?V4fG8Y;u8RVls^jWaXozmi|8LWjE=f`RQDK{%bl2*00W+JbB8f7$;|wel{FBC zz_`BNzKBZ^fKqtB5CEJUoPvWw{_BfHfCc*F>GA*faffi#kE;O-!0PJi@OV59gF}uW zSRKU9)*iv)V6b#xaK4eD5ts-F21sy-nJEb*fy3dno0BZStpYG84SgH}BTziO0P*nQ z!`WHcAc@7|0TI`*fq?-KUN|2JV-cbnvA+H}9wDTrr1^OJtgo*Z z7ncx;L;%n|tZQmw1|A(GLC1}a4TX%W91xdAIM_LAu{yuAreBI*3p>o19QN*yy{)`X zejlr6oZb5OYfk5+Vn6r8G;w}b%yMT6+S-_1u5B~+9b?0so;k)F$Cd7RR%-v7#g2Z~ zoAKrkS%a*h0m1vWKYCtT&kQmb+PgYfcP|M9%!H}~FVz~mm5&jU+E<>Ia(I@0dH=i) z`_Ahx6gkJ4%&~O}USf*o|&Hm1oe72(x5{#DkLXc#W70JZu!sz^+ zS=V1(71=YKi|)e}&mUc=Htiq=r<7@t(imqem6CIlWaaD6{-SI{BBW%L)o>r?hd}71 z+E8DncwfHjc-WGoUr*{r?01j zX5{{yYg@-C#K?fA&H4WOb9+O7Rjb#N;BLJmAF`)LUsD1;mS!T;bGboU#{Occ%L^3c zVNDFXJ*JPdlDdhm{=H!c|l@Tl*vtKYmPih@G5{o|oL&O#R zgWlQ;4SS5B;LHgLxykAm{(HT1P?7XH5BQrB#ZQ`!+*IK@!fV?alII|5p;AqK;F9vF zv?1=5rTv!4ABEn%Jh+wO7KXAdmVL@Y0FcvckF z@YAiT2<21d`_xWt{<(`M$2qL>m)oT%?W(ooe1`Pihpnpld47)^!)4{uAAj+hP79}b z4yzwIMZ^DobQd)9c9M1^EcG|e_-;Z9gYsCbicBAH*dF)w_F!NGvtkG->M9q#C5P=J zb4+JUbs<%5_}AuVqf%3;gRqWAwoebW{GhnwIxU7^DSJawHofh2*T$toh zvs9%0D2GC;Dcn4`wG&EK$}OeVNWC%=I{zUVII~-04aUeZpz%0zFa|ODr`#sBwQRF>C_zE@j^(YUyUG&s4q^rs8YzY z*wGlWVu;3xvQLula`bOWM8MEDXSTkrmF*Tpd0Y}*WGm(5kOR5-8roX>D@4>*+&4uj z=l1jlM$x6li2(%TgsHG>b+y7(p7ter>$}ay0Zm&oFO4LNl#tCg+`dAUb~~Y9#yK`|ZBLvH=4)=W8uzkQVpqrZ{29*@lH4 zoY+=yai?}m?Cit$v#U)jAL5oz@2U~(eV?CZKW)^qYG2+TU4dtFDYu=%pXaJ1PWp-N z9Afar|CnqM^KPVx(Mj!dV_rTBQs=63yJM&>wcisRb4t3blKmT(WmQy@Gg+~Rng=e| zuiV1SsjogQYn;;HhT|Po4K*?tjM14; diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_patreon.png b/app/src/main/res/drawable-xxxhdpi/ic_account_patreon.png deleted file mode 100644 index 0a815a2733215c8834bb05ea89394545d66285f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 811 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wSy$C2Ka=yGB`N=P7D2+8S=j%;73Nt z&y2vI>7hR}fG7kg_$wp$XF5t$O$hmt75XDH1fuaL&;+1@jL`2H5ipZOf2D_V7f^}@(JJ#9 zWH!I=um67AMCQJO#`e$W^G{pc=g4n&&kmi^c!Pm~@qnj`V@Srmw>Ptcn;b;g6108K z3JH2LpZ(1{X^*H@oX6`w|L0GsUF=zKpLJQe`G@?zHpS*;X|G0OQFq-k%N{O+S0z?`vaApK zNw#K9Y4E+XQ~$9YCuMCPxZ$b}h~Ze9_oJ8-R2u{!U-g$_+;KZW}#(esx@+Z|B4 z7Sd(Y;PYnXM+QEI7i@eY94B>oc35*P(B*ov;j5=BqcBSt7n_C@$Alh6vt4#~6CA|Y zj3h2JF={zENU;YAEO^+!!}#M@NQd-`W4u29u4z{tYh-3IDO|wA7<5OP*Ivuy&58+$ z3Y>D+KZKua6z}Vbv(V!xad;rL?~C!D-3oo1To1igQa!u-bcD9`l7hgUUH4Ug`>#05 z8naQ(qpEW=W8|6}4c_m>ULCmNG*fZb0lVge)(ob8(R(}1rpY;*J$n1#?S@w^a;i_x zHe7#lX0b%ul0Ul+-ZWTM*mu|ZYSg;B9PB}hw|;r+dv=q!*An6N$z5|#7slSoUGrqg z{*Ia@Vrd#042&EO3`_zC!r!sYQ%PbtB3}v${W{JcEHhu(na1k{h5-`?gQu&X%Q~lo FCIA}5YmWc` diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_reddit.png b/app/src/main/res/drawable-xxxhdpi/ic_account_reddit.png deleted file mode 100644 index 2898cd012e838848af4619290853bfb1c65e40cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1953 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 Ytdnf;qi@I2$o~c0@jk9J=djHG0HDPrXaE2J diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_spotify.png b/app/src/main/res/drawable-xxxhdpi/ic_account_spotify.png deleted file mode 100644 index f3fd6febda2f3623c8af8dc74c2097255584e48a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1330 zcmXApc~DbV6vp2ZY$K2<>y#}ENC`G9K^Y_%5ipU2C=dt`!7-1;h!CvGF0DpTV!#L* zX%vc7C`3VxfGpx5Ze@)IglvQ*9aAg{s1tf_nv#t{eI`%@1J`GQ4wKCGe6dpzGWKz&-Hd@6-E7>R&8v{pW5=IU0A+#DoDN|qx1FI@F z>VFKYfY2()PLU2rEX)|CB)AYxfnFZQcw#Ix@=7*#212QmzNRpSQA5t-DNfo{m_ezN zVaC`Eh8158Kv*S&QY9HXC?VJhJYZL_P1uaFvnClUH+F{oU^QQFha5E=nC}}{CBa;9 zc63Bc_1*e1dVFHP+_O1rtneK{WlZ4H2en7&h!nkIXQc+I9)P5CjjPpzq&>2EXP)$X(=H*GCoG!?vLWE&#JFAB^`;zz!q00npVDN8>$N? zh5UAW&J`EJG%*M~%vdK+<=Mu&))xe{XDkgt)I>bvfo^xN@-#3|Q!>6g);%sX-W?1* zCwn*8W!hb^%5nj1AIvv~9s6-~iN<3)6sA>uD2j?7CUbrEvfM#x!owTL1RQ>LqiE!% zmVY5l(a_-_uG(b%`){PZwj2C4d%Ml^PE^;nrU2Prmc^a|@4Cs- z9c%0_Y`c{Cisx`kg3GZl`HR7rHLtUr*@R|@nBtWKZVQDiqD@7ucfu#X+#b#zEIw&d z8F?3M__w>AD!{q2=$;i+p1&lVd($OWXle39A7S0|R#RznMdb=QTcN(4W#<$(36psx zQB5%ma^5+*AX1jQFDYbPP5)uHCn$;`cL}q=+y@>4Oms=A1$=&C~NXuB50#6hr-rMKjbffj8pIx(~u?EjUNdb zqG0&3A1H*#Sj<@N+O8dA9djFuL1mV-cC_n0vQ_TFg&lu%ZSU55+xzjh!=&f@>FwU$ z`Ha8{HzIK z#9j!@;D>ntRq29nf{iiwFbk-KG4=4PFpv`XVQxTCYT>`n+;rjtY-Q>!|8R=IM@;F3 z)Ch1WE%3u4Y+?_8Z`$A!2;-~`X?t4Xhxdk3cG>7w{K`xf6UE(6UR^tHQ4Vl@vg==N z^0fKdJ(4T0;1Rf4JhGBi(LLtSOouIn_(0LG6e6dfBwk3N7f&mcNzi+{3mvCOp1$0`?U$MjfMVuqvmsz|XIzJG( zUL7BcWO_+ivI4xSe-F$WUNM#Bd~*>-VD}u^Y-P=Y4&aANk?Y4M5HJY{GNVYbZ3(QHpq*RRn<@(_-Yu&Ln^0_z!0Ctc3>h}4-;;6v=S0$D_ ztXzOnX?s&c*#nN{v8#;)0H6OYw|Zpgas{w4il*V3(l;PYo7iSRL|z|wkYU0dkPf4j z%^>iB=nlQ8L-MYQ%bQ(#;a4`#gt*cM0u`Kr^yf*QnHo^>xx!(+rDHry zzuyo9f%1EMrzO{d@KO^5P>9?A(TWx%AHuY{p6}_mV1mL+qUd! z`sxx}$@ssYTEAV)M=d?4f34?<>}9!Sx0T$hKILe=P!~8@G_EZ7x~}vMG%C^Aay$6K zt`l8aG%g6wSn_*~o}@-Iot2&%&^~1_hDF_lzXHP{rSQ8i=UvdW$0#kbXuCRn?mQjV zWR`!mHF*zor%k2aBRr_sE~!$jNd!h;v&{8|AM}`2J{AQ=m$qq6QGQo0KrU$thrc*) zITLOcN{jH@pV>YgIhLAMJJ~eGL*cn55NIVNc|RJB{fiT7V=TG9oY=OQB7(aPx9yHtzR6>>vn^J|cm#hnWbVd2Ygl5y>JvzzalPU(Tg1mg&wt zDBOPr1bWCqMD+CqCh+&`ah^A%Z~B&#h-jY`0)*nWFC3?@j0lbH8hcpddFRGLL;}tC zGKoJr#{nhX&@f^55fS~=5ztreI|W#<6!+jta;nq{pZE8sQ}B<=3X`fBHF@deBCTNa8P;f;>666 zjY9+ZY~~sTCHbeafu}q)$cM7KEvBDR5fxZs*!doU?fCmI_zFvh&{RnGiMciY>V3ko9gl85!Brb z;Kj+t%Q%EV1<+fu2bHX1J?sCaG~!{D!2~l*Qw)qE2rq&N;tKlE6l>S~Kgfs-Whg@# e%20+DC*uF| z91wSk_x~?%{$JVle`)6b1@Zr;Lyp|4(uO$<7Dra{J%!`oG@+Bo0JC6M)wK`UX<->dyaz)Bk^c_kV54e;_!q`2T~` z|3AI}X}PxRzpSBTIZ&xuNswRg^>~Scrw`q~`|`x$V?2i)9zUypy#3d#>G@Uplj|{NK35;|p6{N&_RCjC{mB%`@zGCLgjnaG6=6LeZdrmrah7$ELaQ zs!esuHi6tA<~x7t+K>8eSuK^o#TLiO6SJt1+hBu=fq~fp27?JX{I{P^_pOT5W{iKy z?pgQKPd}QO$KU`1kXW$c{F4p+e?HBN`}S>f>t;@g4o>bPEv!k0m@5CvFp2z9W_j=` zoAKN}p$G3?GtAq^_26|j!@Ygn7SjK2Ds+GKZ+lw0w^lshR_-Se?|GmQeFLH}OB2vphx@6{qwJ-W4y6Tnml5etL zDY=CoWfp@B0V-3N{~x4%!6zB8u@E+h1X=M>X2EB9kT}rN&p^Xv7Jderz_9;6*gYTQ z7J%FUbTWtwL?FXILyVQ#C|wPdurCSn3qHNvUFZGg=Eu9IFE*$SzkmC)hJu96bCK%~ z$CG(v_IKy2%>K=Bd3|*J;rXw>TLgQb?-!`w&a&FXIh&!~zj$)_g+GnD3=B+rJzX3_ zGVZ;d8Cku`fu}9E-*pXF*N#U`i2Y6sPRi8iEuw=LQDGoyNU+9&2kiOjLl$Nxua`<|9Kprds0 zz2%F0cTOMEm@qN?Je$d0Q^tk1?)}e9lC!IS#Qi*UM8PG4^VRFnDQT-}e#RIYG+aCR zkmE)6%U}O<*ChJ|{(WO~;Q03D>+9#tHDZ|Bec4)%FLqDehrc}Cn|U05ocA@`biST> z`T8GUYd1FBkzi0Loy@u-VgLU}HT$f>#2$QjJS&Caotgk#E{j}N*0X=eua*AB{DAq=^za>7Qg^R2l&0VPb-Ur8(V^+DFCOmuv%sCX;T^MW z?&U=}%iKE|CzNujx4)bJ`4`*z`wWa*3!gp9O0Tte_o0EaCRI+b|0GNKrqj#?j19G? z?!9Pb{=mu*ckGkqjHiai3XBZTlctA1Khq$|;32SlE2BfF_=YCGi*x+3aG6$BLz$znUB7E|_Sl@LOx~zbRV|8y27Udc1~D zeN!mgUpwD^G1m8=m;Y%nIglmN*11J5;FbP~-DmulalARnD6jL2dzRhIr|K*w43q7I zyGrK%n`bs#o$aYcqQ~<0Q&*&miuSW@NS0`uQZ&bvL#EBe`chS3#-_gFIDTEGzpKuf z>R(!@y)N+atP0jjhxoN0d#?BxEPr3+W#v%IIWLs`(s71Af^)d~4qBC7S<317&x_^q zMs0`u#dFted&`%yDCv7<&^h15Ez3Hzs@o3coL61DXkN-j-@3D!f{)JjB%3+NWHW1Q zos-y~UzW=n{ND4`%;Q%oV)f+ahc-sZ&d#{DOnc|1#Tsk(X}@KP7p@QBXkY*#hTVTz ZSMOHvzc%UQePEto@O1TaS?83{1OUN7@mBx< diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_xbox.png b/app/src/main/res/drawable-xxxhdpi/ic_account_xbox.png deleted file mode 100644 index 208a9eb55e740618678f2005cfe0e89375bf184f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2322 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 J%Q~loCIAKdJeL3f diff --git a/app/src/main/res/drawable-xxxhdpi/ic_account_youtube_light_and_dark_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_account_youtube_light_and_dark_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..9783346bd316dddfc066d22290714062de488eea GIT binary patch literal 1002 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wF4y>EdqQ(TyLsr-Bi`Op`vwLMel|x zhz%6ErK)*VLHo9fCWs3a)V!$zl+wPhps?S;;ij4zPzz8QNIL|9m0eQ?D$~57qIq3K z8>sP?s`f2at?L>ZH`R1O<^W9q*`*CM2P_Lz0JjmSQWNAhZS6bCTGv%{K#D*a zxTy+K4|Lw&j~`#PcRfkX{Cf209W(0>%a*_H?)`D?+S8o;2Yx}f^-aE>IQe1Ks#`jS zzn(mP-8b>iySMkljmI@$ex|78V@>+9#2 z#~)8${kYh`n}J8gp?>yef#sj4Yn+*(!oa|!?&;zfl5y|tjp*=O4g%~2dz7weWw5MG zQ#`UGXbMx{f_qgTuW@^I-_qO?yLxZ!|NMZOd98OFKM-sOIU>2 zd0Ey2v4V!xrDi-IzIC#HZ z!9j>IQj}r4z2DbH873W7h7W(2t>&)aC@^JcFt@#Xtc_tAD?`nz*QT;8Q%o6m{JqP` z$`PBeK_vXu(t^bd4E1%Z7{quPcDy;x&}Yv;Rdmw7H4 zCH{BVz0lKY)~1)+_m{NP75L8!VVG~vX0^e0gwQ}d% zr6Hyt61Kgv*!oLBv@gj%u3SbvH|;t&MiUsA1)kWqFR5_abIa&CFyS$Hy85}Sb4q9e E0FS`Q8~^|S literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/ic_facebook_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_facebook_white_24dp.png deleted file mode 100644 index 15074b9dd461abb1a79947db1326f4db59fdb67b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 579 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD0wg^q?%&M7z{KV0;uunK>+LOl59UA__7Csh z8^lBi@^CZzN6bhNT-}rusM8g8Fv)z)j3dhq8blaKn4CVaVa0}o2mup`Ya%8*F$Qxs z7*vEgeml2!Zuxum`|-8q$KQYc_qKeuIzxhzOroG_%LPHhc^8hY{KCL^#!N4;Vc&~H z?{`N-KCD>wyk0o%XiPGD)ndJ8ysAeV`Xrdo3TCq_FmNa|Ffefx^mFQGoeuwU!S#>w zY$Ye3g$+SLZ9kc!G9L2fO7iSK;`8wEw~jw`o%sbi{`EUA%uBRW{?HKn@zPZD_M}shf8BJLgI9!d}<;*AJvS?N0u6 zlkwi#zx!X!sw-=lx3%>0|J*O9Z$(}F7bKs>K4lBD0|O(AfP;hI#5~Kp2TxuQiw@Cs zmoUBxZ59aFnwU@ zVI}dtatpJJmRz$$dgGSBP_Gxs{&CC>SrJag4;%K>pENhr=Y1gUZ(GZ`hxe2)FmW(= My85}Sb4q9e0Cw#5FaQ7m diff --git a/app/src/main/res/drawable-xxxhdpi/ic_github_white.png b/app/src/main/res/drawable-xxxhdpi/ic_github_white.png deleted file mode 100644 index 52af24e0fe80781b2d501ffaf78a6c0736756fd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1275 zcmVT#*A84%l!6 z7nk5FT;akFS2&;xzTg7~+!$=Q!UhYx!GbeLV1ooNg_Jw(YG<@FJF`k)U%4aC{P$<( z|3CkK11VCZNRc8%iWJ&#>`l!qT$Ip(=QRH}1UQR1lu&{T7x|%qCOmlX@E3lwNhgN3 zInOO#G764Z=l%bZ@C$swHdS%Xb(SYD{45*PN0%FPCntP`JB*JuA2Xl4@GiI5r72wT z5i?1OU*#1|qrpN_;;$Igz5iNI*%v;;4cbGS3wFgXaG$pE*rxcWOafcB4o`zgVbunK zEhdL9AD9-u#$?fsYLOyEqnyVcf{vzz7P4@Wjj5X(oS=v5$oC6;?s#UjU*fwE9X%Ob z>=o{7`h{z*aeA=Eame_AA@3}Rc&fgr=%sS-P~*_vu^#%XWdlcuGdK+S+`&Dk=lk6p zenkJ=dN@H79_|3NPyo<>o0U-n0Q9hl@12{#U;iGmiib~}ySVxfH=d19L%YmHSwzDe zXIcCA*!V_@mfRW_M4^{)GcB@4W8MoN$(ExvaA0Lr3DA+N>D2Lb3!w zU1!1^Z-o}~_)0jk=?@}|;U|fAnO7$uw!Xhw z$}`_#PhA=@0g;(JvzT4pQ0gZF6_xKd4VbKfH(&1z$Py26Ua>{ z7hX~$@Ud_vyD3;#^$>{&+-WQkU&~oZj-#hW;BVnX`HAQs@YD!+8j*W^$c|@AjeywJ zxE4!upNS8U(@`QI^|o`?2z)IZX{vkTmc}x1uW(g3c%x3>jc}xDsjB#;#0I@lC-B-* zszZ#YlCf9n8#*J+-y6Tkk`xX}jdD0M()NK}v#&C`(msn*(~o+R+%_nFjz`k9o}16r zkmQD$U0|LEV^&(wG;5MPK_7?l(<^*1wn^twTTxv1O?1m6o(Cqsk5D1j#8^gJY&Jx z@LmQ11(Na#FP|w_jN>+^@p-s_zP*X8FJ=`Rb=Kn>xkA7ewfmQrg;47;J$Amjg7}w4 zqAsokrrjBQzdxeQ>qwR-I+jd%%Ali}dLID17%FmiqiuL(@n1&DB}GhW9Qxj?KRe&N zA1mSuRM5d0{%|7YjCd6(G2r1-L#+mb*tG4l%`rUih%*c?p_p!s9xQ%uj;t@u>_tdC4^N&Y;5`}iaor>1)Au=MG4-A%Pk`y$u0Hp z(D}t~l67A4QftKAfi~x0ADj|K@bL(on=jsq-%!sC6XNkl3v0iMu~xCZ?pAfhlX=7a&T#i2m4Ks(u4H3qxhia{ z#rUWxLKOg>Dg;vkfO?N=Dr-X)2Q`4hF;hZm_*xwVyOyW{9M5)KlLFw#ApijgKmY;| zfB*#00Eh*xEs05E`f5?1&u^)JOpb6J8g6>*D(V1HZ;$a|wXLM2X?8{T8TR$+r~;(t z47VhWAuLsZ*NCP<()cN?EmH*`Z489~1Rwwb2>3q$m~}`R!w=t&wc@xjMGBBxFOr6L zvHS&d7BW1OG=>FjW8=Mm#Y1urSVKmZKqHZ*0qhHxFudDL&U{q?^9j>XNAz96^gg)tq* v^8KKB>aTmStk5Bai%a$POYj^#`C9mIkDQyKI%zL500000NkvXXu0mjfir4PG literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/ic_network_connecting_light.png b/app/src/main/res/drawable-xxxhdpi/ic_network_connecting_light.png new file mode 100644 index 0000000000000000000000000000000000000000..4d68b7bc545969d22df3d29f9824eb9525cc4048 GIT binary patch literal 562 zcmV-20?qx2P)m(=$6w5xWM8dDq)O?j8dddBp{=^gBa^U~H-|@ibLRVYji0OHlul)Lt@J=6fg&hdS<#TVn&HMLF+;MqQOMGAnHLjVF0 zfB*y_009V~0pLGi>%xvv{$;B#{<^8Hm>l6bBn;S=HPit@ZhcF_(wR|{G;ZyF^Sc)s zsRBgogF%wSP%Kq|l({)ak~m>*%Tfg(O$>nm1Rwwb2>3q$m~}`J!w+A@V#_gdND5F| zFa7~=!9=%pPb7(9L0hp}+?kytIRn;^LC?Id{2aLdKnO4}!F{%0?KlBrgwjs)tBr;) z)dFA@sdUECiPZIdBSlT|0l3-n`9&xShPtGwHLH{mo^m|-{FFx(geM$P$-0F1DU!(5^oUQ_p;zRuSq$=Q-`4PM|N=PS+| zH=Og{fOhlI8Ozon)9m96bAkqRd2hg^dGdr@)+s4uK*nqOA#-l;3iRC-Fre+Ef4~z9 zI&n1fw*>mG3iNsD^$HxF>^Y~~x6rrOb^aH;rXS`3Npe)Ex8b^pdb~E^a^=o-?0?mf z{=D}m&^$?UQ~dhjxGnun&m9RyiD`IY{05OcMD&!}-|z$l`4 z2T>T%5keN*5W3Qubqi)8yO026@Mo)<0ZRq$1t6ILS zEsj2XiF#@Ri@2fvY{4mxx9~5vuvN~fv||?^6e$GzoMq>+|G_xNO~1b0SUOSPs58U4 zqUYu~Y2%jj92aclrX)igl$JiK!z>d3+qh=aT7I*$+d2(c*A@W{U>r*b!GGAshuU5Mz>qKL0}=EC8WUK7Uy;YV0d&K^2%gF&UC z3ocTwy^9ucksxKTMm?bAab4lnnX+xU<2de#wr$gLUxCH<+F<~|Pk5|w`q<$QmoVNg zG+dYFFrnQC0)TdiFR&=>g{a|Bv8@un;2Xe9@@acG@31K>Z$R6YGiu`)k-81W@L8Ea z#)w?VXG`R^%i(LIAu%iQ^rB=*KwwU-@Ts)~!WMk)I4*>1mg97MC*_4&7$B>zP13NC zKW@8jgdZ&Hu5Kc(W`QqLNrR_e6;G1h_=-orh-1n@pO z@Ri_e7{WdNiU~Z&9?l?*uOXYdTeno^nDb3+eCb5J3kY3Krwy;HUSgF^)F`Z58?fpZ z`o#iou>sRQG2oG{yv`Y1JoWSs@m_IisjBsI=&yyyWbL z^bam$LeaTi#~5~G11Xo93F?yNsB6>#Mx~{J0}fFys-+Me<(@@jR4SeEurMwo5nIo( zwV+4jB%XFzOesoB^1VU_0(8#RwZ%#vZnjM;;+W5knMF#gdRQ zd|O3<4il1#UF%$N^?&-IA^A4c4r|BB?COn3SE1mmVVBn!tf>#hp1Ks-SZ|zR)+6!7 zAbS;6e7QTNo+X+zn00j*RI$k+rSo3Fj5zyix}kEMWSi%Iu40O#RoBhsILk~m^>S60 zT{4W1aSlnOBr?v2SjKNy#51jGB}A*`#===75JDIR3`7t_6gq%ybl`w;LlQ z|AQS0Sqk4~`5M>*6bo<#_f!j@4aKp<3bs`XU=tPH0y}_ifx319n1BhGfC-qu z%?lc-=k+73Tt4FN7Pjxt-G|QH>a7Z(7Fe3rZ(7RQHDCfJU;-v!0w!PrCSU?4U;-v! z0w!PrCUC8go)_8*Tyb8VBbeN>fIAOte`eQ!36vOYsTN=hsbT@PkY+8(D-qz6Yx-OIGM}WKdl5@NLiY+&Zd<59ZB|GGWR?Gqg_y^NQ(F*Xj z2Y$Q)Jji9*zuYiNfdc%_eADOznDC=FetZH<*v(-Xb2q%8sj}g5)=6Gr!X)^Wws&}z zeGWW#-?C0oJOX|(4DQX)7;~fadVmRza(Xi~MtGXp`wJ-Qr}z~dis7%jL0PjBQ~VUI z#p5q1g#_`>vE~M4&Ijp>aqm_ma11Alz65#W8KV)*NB$~{5G%f?K%dKiUV%Pi s-kqr&|4M-_W8WKl1%CV=*N6@O56iOF!{%f8LI3~&07*qoM6N<$f(AxIR{#J2 diff --git a/app/src/main/res/drawable-xxxhdpi/ic_twitter_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_twitter_white_24dp.png deleted file mode 100644 index 7872ee2c23d9dffa81d61d2735c4a747fc091f16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1244 zcmV<21S9*2P)8jX;)#d~1OkCTASw_Qh>9l=2m}IAQGuvH zR8$}k6^M$83IqayKp+tJZYTSgz_jTlcgfu*`e_ z+Ksf4w3)Oy+LN@tv@`s>lE)Yk9>lzs_A27>Chbz%mZ9sYNGlgf_$_HeVTOUU&4kyn zF0F%4TS?^wW#YoG;hk%mPZY8gP?*zQleeBrZm;C*yY9od}ytYF`{LRp#o)yoSJ*{G* z8v82?Ui_N0^T{~oPlcPnO-6`tI6Q2Yaj#ov!e z6q<{E@tE{YEsktwj)tA)g0X;)85HzYwM7k59VwnT;(%iZ#h+k80D|x0xMBPwB|TWy zpg7zr<+bTLVD6asA9#mHUDriagW>`o^xI;Yfg1hDbX23WIkn(`4l(f|46Utd)Qjc^ z)H8IzW3I#x)qr$Uugfg@28_297%GXcFb;@YM?Xw!LIX1l3S7t107WwiRwr*VHWEamo+I0Nhcxpjbz z`pPqAPi>V{c1hVh9}d64?5nTW0Kmwic%GxT?(^**% z1_Xymmm_q*4t9P_G-o<7|C9C8#@BHG-{F?)Kt0w^n~IJD_E(p&(=Sy5UA zxEN08vc{35zlBSFNK7Jh|g8c?ith>cdj8b0#b+1h?PvFyW zMnwEd-o&pG89|Rlo(|W>yZ)HScwyvZuCKYUi^_(N=%d643O^#$;a-s!Uj+LK;H)7^ z$A|$v>Y_u=e?zb)1QSa>HNndwINJUkLkz_o^qHM$rz+|m#z0tl*a;aNs&p-a)ee)K zR6SvIzU|_jT_@IQCJ8rf3L&N?(*M^V#SJ$FbA+4WCPDvjC+I9WOne3%g{tPcqqY8g zioRkBvMcN^Q!JL~D=M5mrmNGG1%F`C)kem!Tm{Y-y1 z05~eG%BrU0sP$ZxeHn&f7=~dOhG7_nVHk#C7=~dOclifpR|Ja1OCS~i0000 + + + diff --git a/app/src/main/res/drawable/ic_account_battlenet_white_24dp.xml b/app/src/main/res/drawable/ic_account_battlenet_white_24dp.xml new file mode 100644 index 0000000000..8657637372 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_battlenet_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_facebook_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_facebook_light_and_dark_24dp.xml new file mode 100644 index 0000000000..d36b779639 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_facebook_light_and_dark_24dp.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable/ic_account_facebook_white_24dp.xml b/app/src/main/res/drawable/ic_account_facebook_white_24dp.xml new file mode 100644 index 0000000000..52019648f2 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_facebook_white_24dp.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/app/src/main/res/drawable/ic_account_google.xml b/app/src/main/res/drawable/ic_account_google.xml deleted file mode 100644 index 829e503956..0000000000 --- a/app/src/main/res/drawable/ic_account_google.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/app/src/main/res/drawable/ic_account_league_of_legends_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_league_of_legends_light_and_dark_24dp.xml new file mode 100644 index 0000000000..885cd60801 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_league_of_legends_light_and_dark_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_league_of_legends_white_24dp.xml b/app/src/main/res/drawable/ic_account_league_of_legends_white_24dp.xml new file mode 100644 index 0000000000..2f7d2f0c3c --- /dev/null +++ b/app/src/main/res/drawable/ic_account_league_of_legends_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_reddit_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_reddit_light_and_dark_24dp.xml new file mode 100644 index 0000000000..3480dc9064 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_reddit_light_and_dark_24dp.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable/ic_account_reddit_white_24dp.xml b/app/src/main/res/drawable/ic_account_reddit_white_24dp.xml new file mode 100644 index 0000000000..cf38d696a5 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_reddit_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_samsung_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_samsung_light_and_dark_24dp.xml new file mode 100644 index 0000000000..8699186bd6 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_samsung_light_and_dark_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_samsung_white_24dp.xml b/app/src/main/res/drawable/ic_account_samsung_white_24dp.xml new file mode 100644 index 0000000000..8dc84988af --- /dev/null +++ b/app/src/main/res/drawable/ic_account_samsung_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_skype_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_skype_light_and_dark_24dp.xml new file mode 100644 index 0000000000..4106ca54c5 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_skype_light_and_dark_24dp.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable/ic_account_skype_white_24dp.xml b/app/src/main/res/drawable/ic_account_skype_white_24dp.xml new file mode 100644 index 0000000000..75b7bdd399 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_skype_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_spotify_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_spotify_light_and_dark_24dp.xml new file mode 100644 index 0000000000..8b2858658c --- /dev/null +++ b/app/src/main/res/drawable/ic_account_spotify_light_and_dark_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_spotify_white_24dp.xml b/app/src/main/res/drawable/ic_account_spotify_white_24dp.xml new file mode 100644 index 0000000000..31e814aac8 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_spotify_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_steam_light_24dp.xml b/app/src/main/res/drawable/ic_account_steam_light_24dp.xml new file mode 100644 index 0000000000..904c69c06f --- /dev/null +++ b/app/src/main/res/drawable/ic_account_steam_light_24dp.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable/ic_account_steam_white_24dp.xml b/app/src/main/res/drawable/ic_account_steam_white_24dp.xml new file mode 100644 index 0000000000..3de42d05f9 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_steam_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_twitch_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_twitch_light_and_dark_24dp.xml new file mode 100644 index 0000000000..3c60dc7936 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_twitch_light_and_dark_24dp.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_account_twitch_white_24dp.xml b/app/src/main/res/drawable/ic_account_twitch_white_24dp.xml new file mode 100644 index 0000000000..c42a9e4e3c --- /dev/null +++ b/app/src/main/res/drawable/ic_account_twitch_white_24dp.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_account_twitter_light_and_dark_24dp.xml b/app/src/main/res/drawable/ic_account_twitter_light_and_dark_24dp.xml new file mode 100644 index 0000000000..00590d4489 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_twitter_light_and_dark_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_twitter_white_24dp.xml b/app/src/main/res/drawable/ic_account_twitter_white_24dp.xml new file mode 100644 index 0000000000..3742484564 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_twitter_white_24dp.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/ic_account_xbox_light_24dp.xml b/app/src/main/res/drawable/ic_account_xbox_light_24dp.xml new file mode 100644 index 0000000000..1bdca11712 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_xbox_light_24dp.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/app/src/main/res/drawable/ic_account_xbox_white_24dp.xml b/app/src/main/res/drawable/ic_account_xbox_white_24dp.xml new file mode 100644 index 0000000000..194f9395f2 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_xbox_white_24dp.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/app/src/main/res/drawable/ic_account_youtube.xml b/app/src/main/res/drawable/ic_account_youtube.xml deleted file mode 100644 index 01750f5b4e..0000000000 --- a/app/src/main/res/drawable/ic_account_youtube.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/drawable/ic_account_youtube_white_24dp.xml b/app/src/main/res/drawable/ic_account_youtube_white_24dp.xml new file mode 100644 index 0000000000..61862b88d2 --- /dev/null +++ b/app/src/main/res/drawable/ic_account_youtube_white_24dp.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/app/src/main/res/drawable/ic_bnet_white_24dp.xml b/app/src/main/res/drawable/ic_bnet_white_24dp.xml deleted file mode 100644 index cf15312ec7..0000000000 --- a/app/src/main/res/drawable/ic_bnet_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_google_white_24dp.xml b/app/src/main/res/drawable/ic_google_white_24dp.xml deleted file mode 100644 index f2bb2d15ce..0000000000 --- a/app/src/main/res/drawable/ic_google_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_lol_white_24dp.xml b/app/src/main/res/drawable/ic_lol_white_24dp.xml deleted file mode 100644 index aba1a78ccf..0000000000 --- a/app/src/main/res/drawable/ic_lol_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_skype_white_24dp.xml b/app/src/main/res/drawable/ic_skype_white_24dp.xml deleted file mode 100644 index 5b05900c4a..0000000000 --- a/app/src/main/res/drawable/ic_skype_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_spotify_white_24dp.xml b/app/src/main/res/drawable/ic_spotify_white_24dp.xml deleted file mode 100644 index e51091a7ce..0000000000 --- a/app/src/main/res/drawable/ic_spotify_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_steam_white_24dp.xml b/app/src/main/res/drawable/ic_steam_white_24dp.xml deleted file mode 100644 index 562d54d7b2..0000000000 --- a/app/src/main/res/drawable/ic_steam_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_xbox_white_24dp.xml b/app/src/main/res/drawable/ic_xbox_white_24dp.xml deleted file mode 100644 index 0de6d5213f..0000000000 --- a/app/src/main/res/drawable/ic_xbox_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_youtube_gaming_white_24dp.xml b/app/src/main/res/drawable/ic_youtube_gaming_white_24dp.xml deleted file mode 100644 index 82050b1eb6..0000000000 --- a/app/src/main/res/drawable/ic_youtube_gaming_white_24dp.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/layout-v22/widget_guild_role_subscription_details.xml b/app/src/main/res/layout-v22/widget_guild_role_subscription_details.xml index 44ee427b0a..054db9cdf8 100644 --- a/app/src/main/res/layout-v22/widget_guild_role_subscription_details.xml +++ b/app/src/main/res/layout-v22/widget_guild_role_subscription_details.xml @@ -15,7 +15,7 @@ - + diff --git a/app/src/main/res/layout/widget_guild_role_subscription_details.xml b/app/src/main/res/layout/widget_guild_role_subscription_details.xml index 60841041f7..b0841925e2 100644 --- a/app/src/main/res/layout/widget_guild_role_subscription_details.xml +++ b/app/src/main/res/layout/widget_guild_role_subscription_details.xml @@ -15,7 +15,7 @@ - + diff --git a/app/src/main/res/values-ar-rXB/strings.xml b/app/src/main/res/values-ar-rXB/strings.xml index 1d09100451..9de980622a 100644 --- a/app/src/main/res/values-ar-rXB/strings.xml +++ b/app/src/main/res/values-ar-rXB/strings.xml @@ -1151,13 +1151,16 @@ ‏‮Turn‬‏ ‏‮on‬‏ ‏‮camera‬‏ ‏‮Ready‬‏ ‏‮to‬‏ ‏‮video‬‏ ‏‮chat?‬‏ ‏‮Here’s‬‏ ‏‮a‬‏ ‏‮preview‬‏ ‏‮of‬‏ ‏‮your‬‏ ‏‮camera:‬‏ + ‏‮Express‬‏ ‏‮yourself‬‏ ‏‮with‬‏ ‏‮video‬‏ ‏‮backgrounds,‬‏ ‏‮and‬‏ ‏‮if‬‏ ‏‮you‬‏ ‏‮have‬‏ ‏‮Nitro,‬‏ ‏‮upload‬‏ ‏‮your‬‏ ‏‮own!‬‏ ‏‮Video‬‏ ‏‮Background‬‏ + ‏‮Apply‬‏ ‏‮Background‬‏ ‏‮Setting‬‏ ‏‮a‬‏ ‏‮video‬‏ ‏‮background‬‏ ‏‮is‬‏ ‏‮currently‬‏ ‏‮available‬‏ ‏‮to‬‏ ‏‮a‬‏ ‏‮limited‬‏ ‏‮number‬‏ ‏‮of‬‏ ‏‮people.‬‏ ‏‮Blur‬‏ ‏‮Change‬‏ ‏‮Background‬‏ ‏‮Change‬‏ ‏‮Video‬‏ ‏‮Background‬‏ ‏‮Custom‬‏ ‏‮Custom‬‏ ‏‮Background‬‏ + ‏‮New‬‏ ‏‮Video‬‏ ‏‮Backgrounds!‬‏ ‏‮None‬‏ ‏‮You’ve‬‏ ‏‮hit‬‏ ‏‮the‬‏ ‏‮limit‬‏ ‏‮of‬‏ ‏‮{maxCustomBackgrounds}‬‏‏‮!‬‏ ‏‮Right‬‏ ‏‮click‬‏ ‏‮to‬‏ ‏‮remove‬‏ ‏‮a‬‏ ‏‮background‬‏ ‏‮before‬‏ ‏‮adding‬‏ ‏‮another.‬‏ ‏‮Upload‬‏ ‏‮your‬‏ ‏‮own‬‏ ‏‮custom‬‏ ‏‮background,‬‏ ‏‮powered‬‏ ‏‮by‬‏ ‏‮Nitro!‬‏ @@ -1288,6 +1291,10 @@ ‏‮Participants‬‏ ‏‮Channel‬‏ ‏‮has‬‏ ‏‮been‬‏ ‏‮deleted.‬‏ ‏‮Channel‬‏ ‏‮header‬‏ + ‏‮Name‬‏ + ‏‮Details‬‏ + ‏‮Topic‬‏ + ‏‮Edit‬‏ ‏‮Your‬‏ ‏‮role‬‏ ‏‮does‬‏ ‏‮not‬‏ ‏‮have‬‏ ‏‮permission‬‏ ‏‮to‬‏ ‏‮access‬‏ ‏‮this‬‏ ‏‮channel.‬‏ ‏‮Channel‬‏ ‏‮Locked‬‏ ‏‮Permissions‬‏ ‏‮synced‬‏ ‏‮with‬‏ ‏‮category:‬‏ ‏‮**‬‏‏‮{categoryName}‬‏‏‮**‬‏ @@ -1655,6 +1662,7 @@ ‏‮Automatically‬‏ ‏‮convert‬‏ ‏‮emoticons‬‏ ‏‮in‬‏ ‏‮your‬‏ ‏‮messages‬‏ ‏‮to‬‏ ‏‮emoji‬‏ ‏‮For‬‏ ‏‮example,‬‏ ‏‮when‬‏ ‏‮you‬‏ ‏‮type‬‏ ‏‮:-)‬‏ ‏‮Discord‬‏ ‏‮will‬‏ ‏‮convert‬‏ ‏‮it‬‏ ‏‮to‬‏ ‏‮:slight_smile:‬‏ ‏‮Copied‬‏ + ‏‮Link‬‏ ‏‮Copied!‬‏ ‏‮Copied‬‏ ‏‮to‬‏ ‏‮clipboard.‬‏ ‏‮Copy‬‏ ‏‮Copy‬‏ ‏‮Topic‬‏ @@ -3589,7 +3597,7 @@ ‏‮Step‬‏ ‏‮{currStep}‬‏ ‏‮of‬‏ ‏‮{total}‬‏‏‮:‬‏ ‏‮{step}‬‏ ‏‮Finish‬‏ ‏‮Skip‬‏ ‏‮these‬‏ ‏‮steps‬‏ - ‏‮You‬‏ ‏‮have‬‏ ‏‮completed‬‏ ‏‮$[**!!‬‏‏‮{numFinished}‬‏‏‮!!‬‏ ‏‮out‬‏ ‏‮of‬‏ ‏‮{total}‬‏ ‏‮steps**](stepsHook).‬‏ + ‏‮You‬‏ ‏‮have‬‏ ‏‮completed‬‏ ‏‮$[**!!‬‏‏‮{numFinished}‬‏‏‮!!‬‏ ‏‮of‬‏ ‏‮{total}‬‏ ‏‮steps**](stepsHook).‬‏ ‏‮Finish‬‏ ‏‮setting‬‏ ‏‮up‬‏ ‏‮your‬‏ ‏‮server!‬‏ ‏‮Regions,‬‏ ‏‮which‬‏ ‏‮affect‬‏ ‏‮voice‬‏ ‏‮and‬‏ ‏‮video‬‏ ‏‮quality,‬‏ ‏‮are‬‏ ‏‮now‬‏ ‏‮available‬‏ ‏‮for‬‏ ‏‮each‬‏ ‏‮voice‬‏ ‏‮channel‬‏ ‏‮and‬‏ ‏‮determined‬‏ ‏‮automatically.‬‏ ‏‮If‬‏ ‏‮you‬‏ ‏‮need‬‏ ‏‮a‬‏ ‏‮hand,‬‏ ‏‮you‬‏ ‏‮can‬‏ ‏‮read‬‏ ‏‮our‬‏ ‏‮[Help‬‏ ‏‮Center](‬‏‏‮{helpURL}‬‏‏‮).‬‏ ‏‮Server‬‏ ‏‮Role‬‏ ‏‮Actions‬‏ @@ -5983,8 +5991,8 @@ ‏‮Members‬‏ ‏‮with‬‏ ‏‮this‬‏ ‏‮permission‬‏ ‏‮can‬‏ ‏‮drag‬‏ ‏‮other‬‏ ‏‮members‬‏ ‏‮out‬‏ ‏‮of‬‏ ‏‮this‬‏ ‏‮channel.‬‏ ‏‮They‬‏ ‏‮can‬‏ ‏‮only‬‏ ‏‮move‬‏ ‏‮members‬‏ ‏‮between‬‏ ‏‮channels‬‏ ‏‮both‬‏ ‏‮they‬‏ ‏‮and‬‏ ‏‮the‬‏ ‏‮member‬‏ ‏‮they‬‏ ‏‮are‬‏ ‏‮moving‬‏ ‏‮have‬‏ ‏‮access.‬‏ ‏‮Move‬‏ ‏‮To‬‏ ‏‮User‬‏ ‏‮has‬‏ ‏‮been‬‏ ‏‮moved‬‏ ‏‮to‬‏ ‏‮the‬‏ ‏‮selected‬‏ ‏‮channel.‬‏ - ‏‮Alert‬‏ ‏‮Cleared‬‏ - ‏‮No‬‏ ‏‮Alert‬‏ ‏‮Showing‬‏ + ‏‮Alert‬‏ ‏‮Cleared‬‏ + ‏‮No‬‏ ‏‮Alert‬‏ ‏‮Showing‬‏ ‏‮New‬‏ ‏‮notification‬‏ ‏‮Remove‬‏ ‏‮%1$s‬‏ ‏‮More‬‏ ‏‮than‬‏ %1$d ‏‮new‬‏ ‏‮notifications‬‏ @@ -9837,7 +9845,11 @@ ‏‮Wumpus‬‏ ‏‮Vacation‬‏ ‏‮Vaporwave‬‏ ‏‮Click‬‏ ‏‮here‬‏ ‏‮to‬‏ ‏‮access‬‏ ‏‮video‬‏ ‏‮settings‬‏ ‏‮and‬‏ ‏‮adjust‬‏ ‏‮your‬‏ ‏‮video‬‏ ‏‮background.‬‏ + ‏‮Whenever‬‏ ‏‮you‬‏ ‏‮want‬‏ ‏‮to‬‏ ‏‮change‬‏ ‏‮your‬‏ ‏‮video‬‏ ‏‮background,‬‏ ‏‮click‬‏ ‏‮the‬‏ ‏‮arrow‬‏ ‏‮here‬‏ ‏‮to‬‏ ‏‮access‬‏ ‏‮your‬‏ ‏‮video‬‏ ‏‮settings.‬‏ + ‏‮Whenever‬‏ ‏‮you‬‏ ‏‮do‬‏ ‏‮want‬‏ ‏‮to‬‏ ‏‮try‬‏ ‏‮changing‬‏ ‏‮your‬‏ ‏‮video‬‏ ‏‮background,‬‏ ‏‮click‬‏ ‏‮the‬‏ ‏‮arrow‬‏ ‏‮here‬‏ ‏‮to‬‏ ‏‮access‬‏ ‏‮your‬‏ ‏‮video‬‏ ‏‮settings.‬‏ ‏‮Wanna‬‏ ‏‮change‬‏ ‏‮your‬‏ ‏‮background?‬‏ + ‏‮Yay!‬‏ ‏‮You’re‬‏ ‏‮using‬‏ ‏‮an‬‏ ‏‮awesome‬‏ ‏‮background‬‏ + ‏‮No‬‏ ‏‮background‬‏ ‏‮right‬‏ ‏‮now?‬‏ ‏‮No‬‏ ‏‮worries!‬‏ ‏‮Tell‬‏ ‏‮us‬‏ ‏‮about‬‏ ‏‮your‬‏ ‏‮video‬‏ ‏‮backgrounds‬‏ ‏‮experience.‬‏ ‏‮How‬‏ ‏‮were‬‏ ‏‮video‬‏ ‏‮backgrounds?‬‏ ‏‮The‬‏ ‏‮background‬‏ ‏‮detection‬‏ ‏‮was‬‏ ‏‮not‬‏ ‏‮accurate‬‏ diff --git a/app/src/main/res/values-en-rXA/strings.xml b/app/src/main/res/values-en-rXA/strings.xml index 9e3ca068bd..da58d4dde5 100644 --- a/app/src/main/res/values-en-rXA/strings.xml +++ b/app/src/main/res/values-en-rXA/strings.xml @@ -1151,13 +1151,16 @@ [Ţûŕñ öñ çåḿéŕå one two three] [Ŕéåðý ţö Vîðéö çĥåţ¿ one two three] [Ĥéŕé’š å þŕéVîéŵ öƒ ýöûŕ çåḿéŕå: one two three four] + [Éхþŕéšš ýöûŕšéļƒ ŵîţĥ Vîðéö ɓåçķĝŕöûñðš, åñð îƒ ýöû ĥåVé Ñîţŕö, ûþļöåð ýöûŕ öŵñ¡ one two three four five six seven eight nine] [νîðéö βåçķĝŕöûñð one two three] + [Åþþļý βåçķĝŕöûñð one two three] [Šéţţîñĝ å Vîðéö ɓåçķĝŕöûñð îš çûŕŕéñţļý åVåîļåɓļé ţö å ļîḿîţéð ñûḿɓéŕ öƒ þéöþļé. one two three four five six seven eight nine] [βļûŕ one] [Çĥåñĝé βåçķĝŕöûñð one two three] [Çĥåñĝé νîðéö βåçķĝŕöûñð one two three] [Çûšţöḿ one two] [Çûšţöḿ βåçķĝŕöûñð one two three] + [Ñéŵ νîðéö βåçķĝŕöûñðš¡ one two three] [Ñöñé one] [Ýöû’Vé ĥîţ ţĥé ļîḿîţ öƒ »{maxCustomBackgrounds}«¡ Ŕîĝĥţ çļîçķ ţö ŕéḿöVé å ɓåçķĝŕöûñð ɓéƒöŕé åððîñĝ åñöţĥéŕ. one two three four five six seven eight nine] [Ûþļöåð ýöûŕ öŵñ çûšţöḿ ɓåçķĝŕöûñð, þöŵéŕéð ɓý Ñîţŕö¡ one two three four five six] @@ -1288,6 +1291,10 @@ [Þåŕţîçîþåñţš one two] [Çĥåññéļ ĥåš ɓééñ ðéļéţéð. one two three] [Çĥåññéļ ĥéåðéŕ one two three] + [Ñåḿé one] + [Ðéţåîļš one two] + [Ţöþîç one] + [Éðîţ one] [Ýöûŕ ŕöļé ðöéš ñöţ ĥåVé þéŕḿîššîöñ ţö åççéšš ţĥîš çĥåññéļ. one two three four five six seven] [Çĥåññéļ Ļöçķéð one two three] [Þéŕḿîššîöñš šýñçéð ŵîţĥ çåţéĝöŕý: **»{categoryName}«** one two three four five] @@ -1655,6 +1662,7 @@ [Åûţöḿåţîçåļļý çöñVéŕţ éḿöţîçöñš îñ ýöûŕ ḿéššåĝéš ţö éḿöĵî one two three four five six seven] [Föŕ éхåḿþļé, ŵĥéñ ýöû ţýþé :-) Ðîšçöŕð ŵîļļ çöñVéŕţ îţ ţö :šļîĝĥţ_šḿîļé: one two three four five six seven eight nine ten eleven twelve thirteen fourteen] [Çöþîéð one two] + [Ļîñķ Çöþîéð¡ one two] [Çöþîéð ţö çļîþɓöåŕð. one two three] [Çöþý one] [Çöþý Ţöþîç one two] @@ -3589,7 +3597,7 @@ [Šţéþ »{currStep}« öƒ »{total}«: »{step}« one two] [Fîñîšĥ one two] [Šķîþ ţĥéšé šţéþš one two three] - [Ýöû ĥåVé çöḿþļéţéð €[**¡¡»{numFinished}«¡¡ öûţ öƒ »{total}« šţéþš**](šţéþšĤööķ). one two three four five six seven] + [Ýöû ĥåVé çöḿþļéţéð €[**¡¡»{numFinished}«¡¡ öƒ »{total}« šţéþš**](šţéþšĤööķ). one two three four five six] [Fîñîšĥ šéţţîñĝ ûþ ýöûŕ šéŕVéŕ¡ one two three four] [Ŕéĝîöñš, ŵĥîçĥ 僃éçţ Vöîçé åñð Vîðéö Qûåļîţý, åŕé ñöŵ åVåîļåɓļé ƒöŕ éåçĥ Vöîçé çĥåññéļ åñð ðéţéŕḿîñéð åûţöḿåţîçåļļý. ΃ ýöû ñééð å ĥåñð, ýöû çåñ ŕéåð öûŕ [Ĥéļþ Çéñţéŕ](»{helpURL}«). one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty one two three four five six seven eight nine ten] [ŠéŕVéŕ Ŕöļé Åçţîöñš one two three] @@ -5983,8 +5991,8 @@ [Ḿéḿɓéŕš ŵîţĥ ţĥîš þéŕḿîššîöñ çåñ ðŕåĝ öţĥéŕ ḿéḿɓéŕš öûţ öƒ ţĥîš çĥåññéļ. Ţĥéý çåñ öñļý ḿöVé ḿéḿɓéŕš ɓéţŵééñ çĥåññéļš ɓöţĥ ţĥéý åñð ţĥé ḿéḿɓéŕ ţĥéý åŕé ḿöVîñĝ ĥåVé åççéšš. one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen] [ḾöVé Ţö one two] [Ûšéŕ ĥåš ɓééñ ḿöVéð ţö ţĥé šéļéçţéð çĥåññéļ. one two three four five] - [Åļéŕţ Çļéåŕéð one two] - [Ñö Åļéŕţ Šĥöŵîñĝ one two three] + [Åļéŕţ Çļéåŕéð one two] + [Ñö Åļéŕţ Šĥöŵîñĝ one two three] [Ñéŵ ñöţîƒîçåţîöñ one two three] [ŔéḿöVé »%1$s« one two] [Ḿöŕé ţĥåñ %1$d ñéŵ ñöţîƒîçåţîöñš one two three four] @@ -9837,7 +9845,11 @@ [Ŵûḿþûš νåçåţîöñ one two three] [νåþöŕŵåVé one two] [Çļîçķ ĥéŕé ţö åççéšš Vîðéö šéţţîñĝš åñð åðĵûšţ ýöûŕ Vîðéö ɓåçķĝŕöûñð. one two three four five six seven eight] + [ŴĥéñéVéŕ ýöû ŵåñţ ţö çĥåñĝé ýöûŕ Vîðéö ɓåçķĝŕöûñð, çļîçķ ţĥé åŕŕöŵ ĥéŕé ţö åççéšš ýöûŕ Vîðéö šéţţîñĝš. one two three four five six seven eight nine ten eleven] + [ŴĥéñéVéŕ ýöû ðö ŵåñţ ţö ţŕý çĥåñĝîñĝ ýöûŕ Vîðéö ɓåçķĝŕöûñð, çļîçķ ţĥé åŕŕöŵ ĥéŕé ţö åççéšš ýöûŕ Vîðéö šéţţîñĝš. one two three four five six seven eight nine ten eleven twelve] [Ŵåññå çĥåñĝé ýöûŕ ɓåçķĝŕöûñð¿ one two three four] + [Ýåý¡ Ýöû’ŕé ûšîñĝ åñ åŵéšöḿé ɓåçķĝŕöûñð one two three four five] + [Ñö ɓåçķĝŕöûñð ŕîĝĥţ ñöŵ¿ Ñö ŵöŕŕîéš¡ one two three four five] [Ţéļļ ûš åɓöûţ ýöûŕ Vîðéö ɓåçķĝŕöûñðš éхþéŕîéñçé. one two three four five six] [Ĥöŵ ŵéŕé Vîðéö ɓåçķĝŕöûñðš¿ one two three four] [Ţĥé ɓåçķĝŕöûñð ðéţéçţîöñ ŵåš ñöţ åççûŕåţé one two three four five] diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index 9239ac71bd..984c2e8024 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -1909,6 +1909,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2037,6 +2063,8 @@ + + diff --git a/app/src/main/res/values/public.xml b/app/src/main/res/values/public.xml index e5ec992121..02e82e2b65 100644 --- a/app/src/main/res/values/public.xml +++ b/app/src/main/res/values/public.xml @@ -929,994 +929,1008 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2198,582 +2212,583 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4059,1066 +4074,1065 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -15540,8914 +15554,8926 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c5aa223159..ed18879e5b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1153,13 +1153,16 @@ Turn on camera Ready to video chat? Here’s a preview of your camera: + Express yourself with video backgrounds, and if you have Nitro, upload your own! Video Background + Apply Background Setting a video background is currently available to a limited number of people. Blur Change Background Change Video Background Custom Custom Background + New Video Backgrounds! None You’ve hit the limit of {maxCustomBackgrounds}! Right click to remove a background before adding another. Upload your own custom background, powered by Nitro! @@ -1290,6 +1293,10 @@ Participants Channel has been deleted. Channel header + Name + Details + Topic + Edit Your role does not have permission to access this channel. Channel Locked Permissions synced with category: **{categoryName}** @@ -1448,7 +1455,7 @@ Select a color Transparency Use Default - 7d0dbea38de24d339852b4c8e481cf2d + fd0d81c76a214c17be9754db40fb190d Coming Soon Slash command application {applicationName} {applicationName} application @@ -1659,6 +1666,7 @@ Automatically convert emoticons in your messages to emoji For example, when you type :-) Discord will convert it to :slight_smile: Copied + Link Copied! Copied to clipboard. Copy Copy Topic @@ -3605,7 +3613,7 @@ Step {currStep} of {total}: {step} Finish Skip these steps - You have completed $[**!!{numFinished}!! out of {total} steps**](stepsHook). + You have completed $[**!!{numFinished}!! of {total} steps**](stepsHook). Finish setting up your server! Regions, which affect voice and video quality, are now available for each voice channel and determined automatically. If you need a hand, you can read our [Help Center]({helpURL}). Server Role Actions @@ -6002,8 +6010,8 @@ Members with this permission can drag other members out of this channel. They can only move members between channels both they and the member they are moving have access. Move To User has been moved to the selected channel. - Alert Cleared - No Alert Showing + Alert Cleared + No Alert Showing New notification Remove %1$s More than %1$d new notifications @@ -9866,7 +9874,11 @@ Wumpus Vacation Vaporwave Click here to access video settings and adjust your video background. + Whenever you want to change your video background, click the arrow here to access your video settings. + Whenever you do want to try changing your video background, click the arrow here to access your video settings. Wanna change your background? + Yay! You’re using an awesome background + No background right now? No worries! Tell us about your video backgrounds experience. How were video backgrounds? The background detection was not accurate diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index f2d91ecf18..5032b052c6 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -336,6 +336,19 @@ @drawable/ic_guild_badge_premium_tier_2_banner @drawable/ic_guild_badge_premium_tier_3_banner @drawable/ic_account_circle_white_a60_24dp + @drawable/ic_account_battlenet_light_and_dark_24dp + @drawable/ic_account_facebook_light_and_dark_24dp + @drawable/ic_account_github_white_24dp + @drawable/ic_account_league_of_legends_light_and_dark_24dp + @drawable/ic_account_reddit_light_and_dark_24dp + @drawable/ic_account_samsung_light_and_dark_24dp + @drawable/ic_account_skype_light_and_dark_24dp + @drawable/ic_account_spotify_light_and_dark_24dp + @drawable/ic_account_steam_white_24dp + @drawable/ic_account_twitch_light_and_dark_24dp + @drawable/ic_account_twitter_light_and_dark_24dp + @drawable/ic_account_xbox_white_24dp + @drawable/ic_account_youtube_light_and_dark_24dp @drawable/ic_arrow_back_white_24dp @drawable/ic_close_white_24dp @drawable/ic_chevron_down_white_12dp @@ -399,6 +412,7 @@ @drawable/ic_more_primary100_24dp @drawable/ic_navigate_next_white_a60_24dp @drawable/ic_network_airplane_mode + @drawable/ic_network_connecting @drawable/ic_network_connecting_animated_vector @drawable/ic_network_offline @drawable/ic_notifications_settings_white_a60_24dp @@ -599,6 +613,19 @@ @drawable/ic_guild_badge_premium_tier_2 @drawable/ic_guild_badge_premium_tier_3 @drawable/ic_account_circle_light_grey_24dp + @drawable/ic_account_battlenet_light_and_dark_24dp + @drawable/ic_account_facebook_light_and_dark_24dp + @drawable/ic_account_github_light_24dp + @drawable/ic_account_league_of_legends_light_and_dark_24dp + @drawable/ic_account_reddit_light_and_dark_24dp + @drawable/ic_account_samsung_light_and_dark_24dp + @drawable/ic_account_skype_light_and_dark_24dp + @drawable/ic_account_spotify_light_and_dark_24dp + @drawable/ic_account_steam_light_24dp + @drawable/ic_account_twitch_light_and_dark_24dp + @drawable/ic_account_twitter_light_and_dark_24dp + @drawable/ic_account_xbox_light_24dp + @drawable/ic_account_youtube_light_and_dark_24dp @drawable/ic_arrow_back_dark_grey_24dp @drawable/ic_close_grey_24dp @drawable/ic_chevron_down_dark_grey_12dp @@ -662,6 +689,7 @@ @drawable/ic_more_primary900_24dp @drawable/ic_navigate_next_grey_a60_24dp @drawable/ic_network_airplane_mode_light + @drawable/ic_network_connecting_light @drawable/ic_network_connecting_animated_vector_light @drawable/ic_network_offline_light @drawable/ic_notifications_settings_grey_a60_24dp