diff --git a/app/build.gradle b/app/build.gradle index 1707776ed9..a1cb9ea8e9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId 'com.discord' minSdkVersion 21 targetSdkVersion 29 - versionCode 81107 - versionName "81.7 - Beta" + versionCode 81111 + versionName "81.11 - Beta" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 71679af7ae..3959b78ffc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,5 +1,5 @@ - + diff --git a/app/src/main/java/com/discord/app/App.java b/app/src/main/java/com/discord/app/App.java index 2dc1c24cab..96949f5a9a 100644 --- a/app/src/main/java/com/discord/app/App.java +++ b/app/src/main/java/com/discord/app/App.java @@ -172,7 +172,7 @@ public class App extends Application { loggingProvider.init(appLog); c.i.c.c.e(this); String str = null; - if (BuildUtils.INSTANCE.isValidBuildVersionName("81.7 - Beta")) { + if (BuildUtils.INSTANCE.isValidBuildVersionName("81.11 - Beta")) { FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true); } else { FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(false); diff --git a/app/src/main/java/com/discord/stores/StoreAuthentication$register$1.java b/app/src/main/java/com/discord/stores/StoreAuthentication$register$1.java index 9c1cebe2da..69c6a2bfe2 100644 --- a/app/src/main/java/com/discord/stores/StoreAuthentication$register$1.java +++ b/app/src/main/java/com/discord/stores/StoreAuthentication$register$1.java @@ -5,6 +5,7 @@ import com.discord.restapi.RestAPIParams; import com.discord.stores.StoreAuthentication; import com.discord.stores.StoreInviteSettings; import com.discord.stores.StoreStream; +import com.discord.utilities.analytics.AnalyticsTracker; import com.discord.utilities.rest.RestAPI; import com.discord.utilities.rx.ObservableExtensionsKt; import d0.z.d.k; @@ -86,6 +87,7 @@ public final class StoreAuthentication$register$1 implements b publishSubject = this.userInitiatedAuthEventSubject; publishSubject.j.onNext(Boolean.TRUE); diff --git a/app/src/main/java/com/discord/stores/StoreClientVersion.java b/app/src/main/java/com/discord/stores/StoreClientVersion.java index 6dbf1ed98e..1ad3cffbc6 100644 --- a/app/src/main/java/com/discord/stores/StoreClientVersion.java +++ b/app/src/main/java/com/discord/stores/StoreClientVersion.java @@ -15,7 +15,7 @@ public final class StoreClientVersion extends Store { private int clientMinVersion; private final String clientMinVersionKey = "CLIENT_OUTDATED_KEY"; private final SerializedSubject clientOutdatedSubject = new SerializedSubject<>(BehaviorSubject.m0(Boolean.FALSE)); - private final int clientVersion = 81107; + private final int clientVersion = 81111; public static final /* synthetic */ void access$setClientMinVersion(StoreClientVersion storeClientVersion, int i) { storeClientVersion.setClientMinVersion(i); diff --git a/app/src/main/java/com/discord/utilities/analytics/AnalyticSuperProperties.java b/app/src/main/java/com/discord/utilities/analytics/AnalyticSuperProperties.java index c2ce78e768..e5c6090c53 100644 --- a/app/src/main/java/com/discord/utilities/analytics/AnalyticSuperProperties.java +++ b/app/src/main/java/com/discord/utilities/analytics/AnalyticSuperProperties.java @@ -77,7 +77,7 @@ public final class AnalyticSuperProperties { private final void setBaselineProperties() { String locale = Locale.getDefault().toString(); m.checkNotNullExpressionValue(locale, "Locale.getDefault().toString()"); - updateSuperProperties(h0.mapOf(o.to("browser", "Discord Android"), o.to("browser_user_agent", "Discord-Android/81107"), o.to("client_build_number", 81107), o.to("client_version", "81.7 - Beta"), o.to("device", Build.MODEL + ", " + Build.PRODUCT), o.to("os", "Android"), o.to("os_sdk_version", String.valueOf(Build.VERSION.SDK_INT)), o.to("os_version", Build.VERSION.RELEASE), o.to("system_locale", t.replace$default(locale, "_", "-", false, 4, (Object) null)))); + updateSuperProperties(h0.mapOf(o.to("browser", "Discord Android"), o.to("browser_user_agent", "Discord-Android/81111"), o.to("client_build_number", 81111), o.to("client_version", "81.11 - Beta"), o.to("device", Build.MODEL + ", " + Build.PRODUCT), o.to("os", "Android"), o.to("os_sdk_version", String.valueOf(Build.VERSION.SDK_INT)), o.to("os_version", Build.VERSION.RELEASE), o.to("system_locale", t.replace$default(locale, "_", "-", false, 4, (Object) null)))); } private final void setSuperProperties(Map map) { diff --git a/app/src/main/java/com/discord/utilities/analytics/AnalyticsTracker.java b/app/src/main/java/com/discord/utilities/analytics/AnalyticsTracker.java index a911e9c289..10312fd98a 100644 --- a/app/src/main/java/com/discord/utilities/analytics/AnalyticsTracker.java +++ b/app/src/main/java/com/discord/utilities/analytics/AnalyticsTracker.java @@ -50,6 +50,7 @@ import com.discord.utilities.fcm.NotificationClient; import com.discord.utilities.intent.RouteHandlers; import com.discord.utilities.logging.Logger; import com.discord.utilities.permissions.PermissionUtils; +import com.discord.utilities.persister.Persister; import com.discord.utilities.platform.Platform; import com.discord.utilities.rest.FileUploadAlertType; import com.discord.utilities.rx.ObservableExtensionsKt; @@ -907,6 +908,14 @@ public final class AnalyticsTracker { tracker.track("app_exception_thrown", g0.mapOf(o.to("stacktrace", str))); } + public final void appFirstLogin() { + Persister persister = new Persister("app_first_login", Boolean.TRUE); + if (((Boolean) persister.get()).booleanValue()) { + tracker.track("app_first_login", g0.mapOf(o.to("platform", "Android"))); + persister.set(Boolean.FALSE, true); + } + } + public final void applicationCommandBrowserJump(long j) { tracker.track("application_command_browser_jumped", g0.mapOf(o.to("target_application_id", Long.valueOf(j)))); } diff --git a/app/src/main/java/com/discord/utilities/analytics/AppStartAnalyticsTracker.java b/app/src/main/java/com/discord/utilities/analytics/AppStartAnalyticsTracker.java index 28f11f27b4..60cb6a3bb6 100644 --- a/app/src/main/java/com/discord/utilities/analytics/AppStartAnalyticsTracker.java +++ b/app/src/main/java/com/discord/utilities/analytics/AppStartAnalyticsTracker.java @@ -3,9 +3,11 @@ package com.discord.utilities.analytics; import android.net.Uri; import com.discord.stores.StoreUserSettingsSystem; import com.discord.utilities.analytics.AnalyticsUtils; +import com.discord.utilities.persister.Persister; import com.discord.utilities.time.Clock; import d0.g; import d0.o; +import d0.t.g0; import d0.t.h0; import d0.z.d.m; import java.util.Map; @@ -14,6 +16,7 @@ import kotlin.Lazy; import kotlin.jvm.internal.DefaultConstructorMarker; /* compiled from: AppStartAnalyticsTracker.kt */ public final class AppStartAnalyticsTracker { + private static final String APP_FIRST_LAUNCHED = "app_first_launched"; public static final Companion Companion = new Companion(null); private static final Lazy instance$delegate = g.lazy(AppStartAnalyticsTracker$Companion$instance$2.INSTANCE); private Long appOpenTimestamp; @@ -103,6 +106,11 @@ public final class AppStartAnalyticsTracker { public final void appOpen(Uri uri, boolean z2, boolean z3) { m.checkNotNullParameter(uri, "uri"); this.tracker.track(o.to("app_opened", null), 300000, new AppStartAnalyticsTracker$appOpen$1(this, z3, z2, uri)); + Persister persister = new Persister("app_first_launched", Boolean.TRUE); + if (((Boolean) persister.get()).booleanValue()) { + this.tracker.track("app_first_launched", g0.mapOf(o.to("platform", "Android"))); + persister.set(Boolean.FALSE, true); + } } public final void appUiViewed(String str, long j) { diff --git a/app/src/main/java/com/discord/utilities/rest/RestAPI.java b/app/src/main/java/com/discord/utilities/rest/RestAPI.java index 227e02948a..87798dbd23 100644 --- a/app/src/main/java/com/discord/utilities/rest/RestAPI.java +++ b/app/src/main/java/com/discord/utilities/rest/RestAPI.java @@ -176,7 +176,7 @@ public final class RestAPI implements RestAPIInterface { @Override // com.discord.restapi.RequiredHeadersInterceptor.HeadersProvider public String getUserAgent() { - return "Discord-Android/81107"; + return "Discord-Android/81111"; } } diff --git a/app/src/main/java/com/discord/widgets/debugging/WidgetFatalCrash.java b/app/src/main/java/com/discord/widgets/debugging/WidgetFatalCrash.java index 7b96af3755..aaa45ce52f 100644 --- a/app/src/main/java/com/discord/widgets/debugging/WidgetFatalCrash.java +++ b/app/src/main/java/com/discord/widgets/debugging/WidgetFatalCrash.java @@ -100,7 +100,7 @@ public final class WidgetFatalCrash extends AppFragment { textView2.setText(b.j(this, 2131887893, objArr2, null, 4)); TextView textView3 = getBinding().b; m.checkNotNullExpressionValue(textView3, "binding.fatalCrashAppVersion"); - textView3.setText(b.j(this, 2131887886, new Object[]{"81.7 - Beta"}, null, 4)); + textView3.setText(b.j(this, 2131887886, new Object[]{"81.11 - Beta"}, null, 4)); TextView textView4 = getBinding().d; m.checkNotNullExpressionValue(textView4, "binding.fatalCrashOsVersion"); textView4.setText(b.j(this, 2131887889, new Object[]{String.valueOf(Build.VERSION.SDK_INT)}, null, 4)); 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 806ef78d19..cb0bf34a06 100644 --- a/app/src/main/java/com/discord/widgets/settings/WidgetSettings.java +++ b/app/src/main/java/com/discord/widgets/settings/WidgetSettings.java @@ -271,7 +271,7 @@ public final class WidgetSettings extends AppFragment implements OnTabSelectedLi TextView textView = binding.f; m.checkNotNullExpressionValue(textView, "appInfoHeader"); String string = getString(2131886360); - textView.setText(string + " - 81.7 - Beta (81107)"); + textView.setText(string + " - 81.11 - Beta (81111)"); binding.w.setOnClickListener(new WidgetSettings$onViewBound$$inlined$with$lambda$2(this)); binding.t.setOnClickListener(WidgetSettings$onViewBound$1$4.INSTANCE); binding.q.setOnClickListener(WidgetSettings$onViewBound$1$5.INSTANCE); diff --git a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel$Companion$observeStores$1.java b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel$Companion$observeStores$1.java index 44c8816823..f37bbb4a02 100644 --- a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel$Companion$observeStores$1.java +++ b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel$Companion$observeStores$1.java @@ -1,9 +1,11 @@ package com.discord.widgets.settings.connections; +import c.d.b.a.a; import com.discord.models.domain.ModelConnectedAccount; import com.discord.models.guild.Guild; import com.discord.widgets.settings.connections.WidgetSettingsUserConnectionsViewModel; import d0.z.d.m; +import java.util.ArrayList; import java.util.List; import java.util.Map; import rx.functions.Func2; @@ -12,9 +14,14 @@ public final class WidgetSettingsUserConnectionsViewModel$Companion$observeStore public static final WidgetSettingsUserConnectionsViewModel$Companion$observeStores$1 INSTANCE = new WidgetSettingsUserConnectionsViewModel$Companion$observeStores$1(); public final WidgetSettingsUserConnectionsViewModel.StoreState call(List list, Map map) { - m.checkNotNullExpressionValue(list, "accounts"); + ArrayList S = a.S(list, "accounts"); + for (Object obj : list) { + if (!m.areEqual(((ModelConnectedAccount) obj).getType(), "contacts")) { + S.add(obj); + } + } m.checkNotNullExpressionValue(map, "guilds"); - return new WidgetSettingsUserConnectionsViewModel.StoreState(list, map); + return new WidgetSettingsUserConnectionsViewModel.StoreState(S, map); } /* Return type fixed from 'java.lang.Object' to match base method */ diff --git a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel.java b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel.java index 5019c828df..4653332d21 100644 --- a/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel.java +++ b/app/src/main/java/com/discord/widgets/settings/connections/WidgetSettingsUserConnectionsViewModel.java @@ -91,7 +91,7 @@ public final class WidgetSettingsUserConnectionsViewModel extends AppViewModel observeStores() { StoreStream.Companion companion = StoreStream.Companion; Observable j = Observable.j(companion.getUserConnections().observeConnectedAccounts(), companion.getGuilds().observeGuilds(), WidgetSettingsUserConnectionsViewModel$Companion$observeStores$1.INSTANCE); - m.checkNotNullExpressionValue(j, "Observable.combineLatest…State(accounts, guilds) }"); + m.checkNotNullExpressionValue(j, "Observable.combineLatest…= \"contacts\" }, guilds) }"); return j; } } diff --git a/app/src/main/java/com/discord/widgets/settings/premiumguild/WidgetSettingsPremiumGuildSubscription$showContent$1.java b/app/src/main/java/com/discord/widgets/settings/premiumguild/WidgetSettingsPremiumGuildSubscription$showContent$1.java index d13bbbdede..851e7bb2db 100644 --- a/app/src/main/java/com/discord/widgets/settings/premiumguild/WidgetSettingsPremiumGuildSubscription$showContent$1.java +++ b/app/src/main/java/com/discord/widgets/settings/premiumguild/WidgetSettingsPremiumGuildSubscription$showContent$1.java @@ -1,8 +1,9 @@ package com.discord.widgets.settings.premiumguild; import com.discord.models.domain.ModelPremiumGuildSubscriptionSlot; +import com.discord.stores.StoreStream; import com.discord.widgets.guilds.WidgetGuildSelector; -import d0.t.m0; +import d0.t.o0; import d0.z.d.m; import d0.z.d.o; import kotlin.Unit; @@ -28,6 +29,6 @@ public final class WidgetSettingsPremiumGuildSubscription$showContent$1 extends public final void invoke(ModelPremiumGuildSubscriptionSlot modelPremiumGuildSubscriptionSlot, long j) { m.checkNotNullParameter(modelPremiumGuildSubscriptionSlot, "slot"); WidgetSettingsPremiumGuildSubscription.access$getViewModel$p(this.this$0).transferClicked(modelPremiumGuildSubscriptionSlot, j); - WidgetGuildSelector.Companion.launch$default(WidgetGuildSelector.Companion, this.this$0, null, false, 0, new WidgetGuildSelector.GuildFilterFunction(m0.setOf(Long.valueOf(j))), 14, null); + WidgetGuildSelector.Companion.launch$default(WidgetGuildSelector.Companion, this.this$0, null, false, 0, new WidgetGuildSelector.GuildFilterFunction(o0.minus(StoreStream.Companion.getGuilds().getGuilds().keySet(), Long.valueOf(j))), 14, null); } } diff --git a/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet.java b/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet.java index 5fe4ff3840..706799fa32 100644 --- a/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet.java +++ b/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheet.java @@ -359,39 +359,29 @@ public final class WidgetUserSheet extends AppBottomSheet { TextInputLayout textInputLayout2 = getBinding().f1997z; m.checkNotNullExpressionValue(textInputLayout2, "binding.userSheetNoteTextFieldWrap"); textInputLayout2.setEnabled(true); - String userNote = loaded.getUserNote(); TextInputLayout textInputLayout3 = getBinding().f1997z; m.checkNotNullExpressionValue(textInputLayout3, "binding.userSheetNoteTextFieldWrap"); - if (!m.areEqual(userNote, ViewExtensions.getTextOrEmpty(textInputLayout3))) { - TextInputLayout textInputLayout4 = getBinding().f1997z; - m.checkNotNullExpressionValue(textInputLayout4, "binding.userSheetNoteTextFieldWrap"); - ViewExtensions.setText(textInputLayout4, loaded.getUserNote()); - } + ViewExtensions.setTextIfDifferent(textInputLayout3, loaded.getUserNote()); } else if (userNoteFetchState instanceof StoreUserNotes.UserNoteState.Loading) { + TextInputLayout textInputLayout4 = getBinding().f1997z; + m.checkNotNullExpressionValue(textInputLayout4, "binding.userSheetNoteTextFieldWrap"); + textInputLayout4.setHint(getString(2131890843)); TextInputLayout textInputLayout5 = getBinding().f1997z; m.checkNotNullExpressionValue(textInputLayout5, "binding.userSheetNoteTextFieldWrap"); - textInputLayout5.setHint(getString(2131890843)); + textInputLayout5.setEnabled(false); TextInputLayout textInputLayout6 = getBinding().f1997z; m.checkNotNullExpressionValue(textInputLayout6, "binding.userSheetNoteTextFieldWrap"); - ViewExtensions.setText(textInputLayout6, ""); + ViewExtensions.setTextIfDifferent(textInputLayout6, loaded.getUserNote()); + } else if (userNoteFetchState instanceof StoreUserNotes.UserNoteState.Loaded) { TextInputLayout textInputLayout7 = getBinding().f1997z; m.checkNotNullExpressionValue(textInputLayout7, "binding.userSheetNoteTextFieldWrap"); - textInputLayout7.setEnabled(false); - } else if (userNoteFetchState instanceof StoreUserNotes.UserNoteState.Loaded) { + textInputLayout7.setHint(getString(2131891446)); TextInputLayout textInputLayout8 = getBinding().f1997z; m.checkNotNullExpressionValue(textInputLayout8, "binding.userSheetNoteTextFieldWrap"); - textInputLayout8.setHint(getString(2131891446)); + textInputLayout8.setEnabled(true); TextInputLayout textInputLayout9 = getBinding().f1997z; m.checkNotNullExpressionValue(textInputLayout9, "binding.userSheetNoteTextFieldWrap"); - textInputLayout9.setEnabled(true); - String userNote2 = loaded.getUserNote(); - TextInputLayout textInputLayout10 = getBinding().f1997z; - m.checkNotNullExpressionValue(textInputLayout10, "binding.userSheetNoteTextFieldWrap"); - if (!m.areEqual(userNote2, ViewExtensions.getTextOrEmpty(textInputLayout10))) { - TextInputLayout textInputLayout11 = getBinding().f1997z; - m.checkNotNullExpressionValue(textInputLayout11, "binding.userSheetNoteTextFieldWrap"); - ViewExtensions.setText(textInputLayout11, loaded.getUserNote()); - } + ViewExtensions.setTextIfDifferent(textInputLayout9, loaded.getUserNote()); } } diff --git a/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheetViewModel.java b/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheetViewModel.java index 7088cc8ff4..03177c408a 100644 --- a/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheetViewModel.java +++ b/app/src/main/java/com/discord/widgets/user/usersheet/WidgetUserSheetViewModel.java @@ -48,6 +48,7 @@ import com.discord.widgets.user.profile.UserProfileAdminView; import com.discord.widgets.user.profile.UserProfileConnectionsView; import com.discord.widgets.user.usersheet.UserProfileVoiceSettingsView; import com.discord.widgets.user.usersheet.WidgetUserSheet; +import d0.g0.t; import d0.t.n; import d0.t.u; import d0.z.d.m; @@ -1593,6 +1594,15 @@ public final class WidgetUserSheetViewModel extends AppViewModel { return new UserProfileAdminView.ViewState(z4, z6, p1, z7, z8, z9, z10, z11, z12, z5, z3); } + private final List> createAndProcessBioAstFromText(String str) { + if (str == null || t.isBlank(str)) { + return null; + } + List> generateAst = generateAst(str); + createMessagePreprocessor().process(generateAst); + return generateAst; + } + private final UserProfileConnectionsView.ViewState createConnectionsViewState(ModelUserProfile modelUserProfile, boolean z2, boolean z3) { List connectedAccounts = modelUserProfile.getConnectedAccounts(); m.checkNotNullExpressionValue(connectedAccounts, "userProfile.connectedAccounts"); @@ -1665,20 +1675,28 @@ public final class WidgetUserSheetViewModel extends AppViewModel { /* JADX DEBUG: Multi-variable search result rejected for r14v1, resolved type: java.lang.Boolean */ /* JADX DEBUG: Multi-variable search result rejected for r1v7, resolved type: java.lang.Float */ - /* JADX DEBUG: Multi-variable search result rejected for r1v15, resolved type: java.lang.Float */ + /* JADX DEBUG: Multi-variable search result rejected for r1v23, resolved type: java.lang.Float */ /* JADX DEBUG: Multi-variable search result rejected for r14v4, resolved type: java.lang.Boolean */ /* JADX WARN: Multi-variable type inference failed */ - /* JADX WARNING: Code restructure failed: missing block: B:19:0x008a, code lost: - if (r8 != null) goto L_0x0091; + /* JADX WARNING: Code restructure failed: missing block: B:105:0x022a, code lost: + if ((r5 == null || r5.length() == 0) == false) goto L_0x022f; */ - /* JADX WARNING: Removed duplicated region for block: B:68:0x01c4 */ - /* JADX WARNING: Removed duplicated region for block: B:69:0x01c9 */ - /* JADX WARNING: Removed duplicated region for block: B:71:0x01cc */ - /* JADX WARNING: Removed duplicated region for block: B:74:0x01db */ - /* JADX WARNING: Removed duplicated region for block: B:81:0x01ef */ - /* JADX WARNING: Removed duplicated region for block: B:89:0x0203 */ - /* JADX WARNING: Removed duplicated region for block: B:92:0x020f */ - /* JADX WARNING: Removed duplicated region for block: B:93:0x0214 */ + /* JADX WARNING: Code restructure failed: missing block: B:19:0x008c, code lost: + if (r8 != null) goto L_0x0093; + */ + /* JADX WARNING: Removed duplicated region for block: B:100:0x021e */ + /* JADX WARNING: Removed duplicated region for block: B:113:0x023d */ + /* JADX WARNING: Removed duplicated region for block: B:117:0x024a */ + /* JADX WARNING: Removed duplicated region for block: B:118:0x024f */ + /* JADX WARNING: Removed duplicated region for block: B:68:0x01c6 */ + /* JADX WARNING: Removed duplicated region for block: B:69:0x01cb */ + /* JADX WARNING: Removed duplicated region for block: B:72:0x01d6 */ + /* JADX WARNING: Removed duplicated region for block: B:75:0x01db */ + /* JADX WARNING: Removed duplicated region for block: B:76:0x01e0 */ + /* JADX WARNING: Removed duplicated region for block: B:79:0x01e9 */ + /* JADX WARNING: Removed duplicated region for block: B:88:0x0202 */ + /* JADX WARNING: Removed duplicated region for block: B:91:0x0207 */ + /* JADX WARNING: Removed duplicated region for block: B:92:0x020c */ private final void handleStoreState(StoreState storeState) { List list; ManageUserContext manageUserContext; @@ -1688,11 +1706,14 @@ public final class WidgetUserSheetViewModel extends AppViewModel { String str2; StreamContext streamContext; String encodedStreamKey; - List> generateAst; ViewState viewState; - String str3; + String userNote; StoreUserNotes.UserNoteState userNoteFetchState; - ModelUserNote note; + String note; + ViewState viewState2; + boolean z3; + String str3; + ModelUserNote note2; ModelApplicationStream stream; String str4; List roles; @@ -1706,7 +1727,8 @@ public final class WidgetUserSheetViewModel extends AppViewModel { Map computedMembers = storeState.getComputedMembers(); Map guildRoles = storeState.getGuildRoles(); Guild guild = storeState.getGuild(); - boolean z3 = me2.getId() == user.getId(); + boolean z4 = true; + boolean z5 = me2.getId() == user.getId(); boolean isSystemUser = user.isSystemUser(); GuildMember guildMember = (GuildMember) a.e(user, computedMembers); GuildMember guildMember2 = computedMembers.get(Long.valueOf(me2.getId())); @@ -1728,22 +1750,22 @@ public final class WidgetUserSheetViewModel extends AppViewModel { str = null; manageUserContext = ManageUserContext.Companion.from(guild, me2, user, guildMember2.getRoles(), guildMember.getRoles(), storeState.getPermissions(), guildRoles); } - boolean z4 = channel != null && channel.p() == me2.getId(); + boolean z6 = channel != null && channel.p() == me2.getId(); int type = ModelUserRelationship.getType(storeState.getUserRelationshipType()); VoiceState voiceState = (VoiceState) a.e(user, storeState.getMySelectedVoiceChannelVoiceStates()); VoiceState voiceState2 = storeState.getMySelectedVoiceChannelVoiceStates().get(Long.valueOf(me2.getId())); boolean isInSameVoiceChannel = isInSameVoiceChannel(voiceState2, voiceState); - boolean z5 = this.isVoiceContext || isInSameVoiceChannel; - boolean selfMuted = z3 ? storeState.getSelfMuted() : storeState.getMuted(); - Boolean valueOf = z3 ? Boolean.valueOf(storeState.getSelfDeafened()) : str; - if (!z3) { + boolean z7 = this.isVoiceContext || isInSameVoiceChannel; + boolean selfMuted = z5 ? storeState.getSelfMuted() : storeState.getMuted(); + Boolean valueOf = z5 ? Boolean.valueOf(storeState.getSelfDeafened()) : str; + if (!z5) { z2 = isSystemUser; f = Float.valueOf(PerceptualVolumeUtils.amplitudeToPerceptual$default(PerceptualVolumeUtils.INSTANCE, storeState.getOutputVolume(), 0.0f, 2, str)); } else { z2 = isSystemUser; f = str; } - UserProfileVoiceSettingsView.ViewState viewState2 = new UserProfileVoiceSettingsView.ViewState(selfMuted, valueOf, f); + UserProfileVoiceSettingsView.ViewState viewState3 = new UserProfileVoiceSettingsView.ViewState(selfMuted, valueOf, f); VoiceState voiceState3 = (VoiceState) a.e(user, storeState.getCurrentChannelVoiceStates()); if (channel != null) { if (AnimatableValueParser.p1(channel)) { @@ -1752,68 +1774,94 @@ public final class WidgetUserSheetViewModel extends AppViewModel { str4 = guild.getName(); } str2 = str4; - UserProfileAdminView.ViewState createAdminViewState = createAdminViewState(channel, z4, z3, manageUserContext, voiceState3); + UserProfileAdminView.ViewState createAdminViewState = createAdminViewState(channel, z6, z5, manageUserContext, voiceState3); ModelUserProfile userProfile = storeState.getUserProfile(); - UserProfileConnectionsView.ViewState createConnectionsViewState = createConnectionsViewState(userProfile, z3, z2); + UserProfileConnectionsView.ViewState createConnectionsViewState = createConnectionsViewState(userProfile, z5, z2); streamContext = storeState.getStreamContext(); encodedStreamKey = (streamContext != null || (stream = streamContext.getStream()) == null) ? null : stream.getEncodedStreamKey(); if (encodedStreamKey != null && !this.fetchedPreviews.contains(encodedStreamKey)) { this.storeApplicationStreamPreviews.fetchStreamPreviewIfNotFetching(streamContext); this.fetchedPreviews.add(encodedStreamKey); } - UserProfileStageActionsView.ViewState viewState3 = new UserProfileStageActionsView.ViewState(z3, storeState.getStageChannel(), storeState.m58getMyStageRolestwRsX0(), storeState.m59getUserStageRolestwRsX0(), storeState.getUserRequestToSpeakState(), isInSameVoiceChannel(voiceState2, voiceState), false, false, 192, null); + UserProfileStageActionsView.ViewState viewState4 = new UserProfileStageActionsView.ViewState(z5, storeState.getStageChannel(), storeState.m58getMyStageRolestwRsX0(), storeState.m59getUserStageRolestwRsX0(), storeState.getUserRequestToSpeakState(), isInSameVoiceChannel(voiceState2, voiceState), false, false, 192, null); String d = userProfile.getUser().d(); - generateAst = d == null ? generateAst(d) : null; - if (generateAst != null) { - createMessagePreprocessor().process(generateAst); - } + List> createAndProcessBioAstFromText = d == null ? createAndProcessBioAstFromText(d) : null; viewState = getViewState(); if (!(viewState instanceof ViewState.Loaded)) { viewState = null; } ViewState.Loaded loaded = (ViewState.Loaded) viewState; - if (loaded == null || (str3 = loaded.getUserNote()) == null) { - userNoteFetchState = storeState.getUserNoteFetchState(); - if (!(userNoteFetchState instanceof StoreUserNotes.UserNoteState.Loaded)) { - userNoteFetchState = null; + userNote = loaded == null ? loaded.getUserNote() : null; + userNoteFetchState = storeState.getUserNoteFetchState(); + if (!(userNoteFetchState instanceof StoreUserNotes.UserNoteState.Loaded)) { + userNoteFetchState = null; + } + StoreUserNotes.UserNoteState.Loaded loaded2 = (StoreUserNotes.UserNoteState.Loaded) userNoteFetchState; + note = (loaded2 != null || (note2 = loaded2.getNote()) == null) ? null : note2.getNote(); + viewState2 = getViewState(); + if (!(viewState2 instanceof ViewState.Loaded)) { + viewState2 = null; + } + ViewState.Loaded loaded3 = (ViewState.Loaded) viewState2; + z3 = !((loaded3 == null ? loaded3.getUserNoteFetchState() : null) instanceof StoreUserNotes.UserNoteState.Loading) && !(storeState.getUserNoteFetchState() instanceof StoreUserNotes.UserNoteState.Loading); + if (userNote == null) { + } + z4 = false; + if (!z3 || z4) { + if (note != null) { + str3 = note; + updateViewState(new ViewState.Loaded(user, z5, z7, viewState3, voiceState3, storeState.getRichPresence(), str2, list, createAdminViewState, viewState4, channel, streamContext, guild == null ? guild.getName() : null, type, createConnectionsViewState, storeState.getUserNoteFetchState(), str3, isInSameVoiceChannel, createAndProcessBioAstFromText)); + this.mostRecentStoreState = storeState; } - StoreUserNotes.UserNoteState.Loaded loaded2 = (StoreUserNotes.UserNoteState.Loaded) userNoteFetchState; - str3 = (loaded2 != null || (note = loaded2.getNote()) == null) ? null : note.getNote(); + } else if (userNote != null) { + str3 = userNote; + updateViewState(new ViewState.Loaded(user, z5, z7, viewState3, voiceState3, storeState.getRichPresence(), str2, list, createAdminViewState, viewState4, channel, streamContext, guild == null ? guild.getName() : null, type, createConnectionsViewState, storeState.getUserNoteFetchState(), str3, isInSameVoiceChannel, createAndProcessBioAstFromText)); + this.mostRecentStoreState = storeState; } - if (str3 == null) { - str3 = ""; - } - updateViewState(new ViewState.Loaded(user, z3, z5, viewState2, voiceState3, storeState.getRichPresence(), str2, list, createAdminViewState, viewState3, channel, streamContext, guild == null ? guild.getName() : null, type, createConnectionsViewState, storeState.getUserNoteFetchState(), str3, isInSameVoiceChannel, generateAst)); + str3 = ""; + updateViewState(new ViewState.Loaded(user, z5, z7, viewState3, voiceState3, storeState.getRichPresence(), str2, list, createAdminViewState, viewState4, channel, streamContext, guild == null ? guild.getName() : null, type, createConnectionsViewState, storeState.getUserNoteFetchState(), str3, isInSameVoiceChannel, createAndProcessBioAstFromText)); this.mostRecentStoreState = storeState; } str2 = str; - UserProfileAdminView.ViewState createAdminViewState = createAdminViewState(channel, z4, z3, manageUserContext, voiceState3); + UserProfileAdminView.ViewState createAdminViewState = createAdminViewState(channel, z6, z5, manageUserContext, voiceState3); ModelUserProfile userProfile = storeState.getUserProfile(); - UserProfileConnectionsView.ViewState createConnectionsViewState = createConnectionsViewState(userProfile, z3, z2); + UserProfileConnectionsView.ViewState createConnectionsViewState = createConnectionsViewState(userProfile, z5, z2); streamContext = storeState.getStreamContext(); if (streamContext != null) { } this.storeApplicationStreamPreviews.fetchStreamPreviewIfNotFetching(streamContext); this.fetchedPreviews.add(encodedStreamKey); - UserProfileStageActionsView.ViewState viewState3 = new UserProfileStageActionsView.ViewState(z3, storeState.getStageChannel(), storeState.m58getMyStageRolestwRsX0(), storeState.m59getUserStageRolestwRsX0(), storeState.getUserRequestToSpeakState(), isInSameVoiceChannel(voiceState2, voiceState), false, false, 192, null); + UserProfileStageActionsView.ViewState viewState4 = new UserProfileStageActionsView.ViewState(z5, storeState.getStageChannel(), storeState.m58getMyStageRolestwRsX0(), storeState.m59getUserStageRolestwRsX0(), storeState.getUserRequestToSpeakState(), isInSameVoiceChannel(voiceState2, voiceState), false, false, 192, null); String d = userProfile.getUser().d(); if (d == null) { } - if (generateAst != null) { - } viewState = getViewState(); if (!(viewState instanceof ViewState.Loaded)) { } ViewState.Loaded loaded = (ViewState.Loaded) viewState; + if (loaded == null) { + } userNoteFetchState = storeState.getUserNoteFetchState(); if (!(userNoteFetchState instanceof StoreUserNotes.UserNoteState.Loaded)) { } StoreUserNotes.UserNoteState.Loaded loaded2 = (StoreUserNotes.UserNoteState.Loaded) userNoteFetchState; if (loaded2 != null) { } - if (str3 == null) { + viewState2 = getViewState(); + if (!(viewState2 instanceof ViewState.Loaded)) { } - updateViewState(new ViewState.Loaded(user, z3, z5, viewState2, voiceState3, storeState.getRichPresence(), str2, list, createAdminViewState, viewState3, channel, streamContext, guild == null ? guild.getName() : null, type, createConnectionsViewState, storeState.getUserNoteFetchState(), str3, isInSameVoiceChannel, generateAst)); + ViewState.Loaded loaded3 = (ViewState.Loaded) viewState2; + if (!((loaded3 == null ? loaded3.getUserNoteFetchState() : null) instanceof StoreUserNotes.UserNoteState.Loading)) { + } + if (userNote == null) { + } + z4 = false; + if (!z3) { + } + if (note != null) { + } + str3 = ""; + updateViewState(new ViewState.Loaded(user, z5, z7, viewState3, voiceState3, storeState.getRichPresence(), str2, list, createAdminViewState, viewState4, channel, streamContext, guild == null ? guild.getName() : null, type, createConnectionsViewState, storeState.getUserNoteFetchState(), str3, isInSameVoiceChannel, createAndProcessBioAstFromText)); this.mostRecentStoreState = storeState; } @@ -1932,10 +1980,8 @@ public final class WidgetUserSheetViewModel extends AppViewModel { } ViewState.Loaded loaded = (ViewState.Loaded) viewState; if (loaded != null && (storeState = this.mostRecentStoreState) != null && (userProfile = storeState.getUserProfile()) != null && (user = userProfile.getUser()) != null && (d = user.d()) != null) { - List> generateAst = generateAst(d); this.revealedBioIndices.add(Integer.valueOf(spoilerNode.getId())); - createMessagePreprocessor().process(generateAst); - updateViewState(ViewState.Loaded.copy$default(loaded, null, false, false, null, null, null, null, null, null, null, null, null, null, 0, null, null, null, false, generateAst, 262143, null)); + updateViewState(ViewState.Loaded.copy$default(loaded, null, false, false, null, null, null, null, null, null, null, null, null, null, 0, null, null, null, false, createAndProcessBioAstFromText(d), 262143, null)); } } @@ -2106,7 +2152,7 @@ public final class WidgetUserSheetViewModel extends AppViewModel { if (loaded == null) { return; } - if (!m.areEqual(loaded.getUserNote(), str)) { + if ((!m.areEqual(loaded.getUserNote(), str)) && !(loaded.getUserNoteFetchState() instanceof StoreUserNotes.UserNoteState.Loading)) { updateViewState(ViewState.Loaded.copy$default(loaded, null, false, false, null, null, null, null, null, null, null, null, null, null, 0, null, null, str, false, null, 458751, null)); } } diff --git a/app/src/main/res/layout-v22/layout_contact_sync_suggestions.xml b/app/src/main/res/layout-v22/layout_contact_sync_suggestions.xml index eba1481cc1..fd5fc62152 100644 --- a/app/src/main/res/layout-v22/layout_contact_sync_suggestions.xml +++ b/app/src/main/res/layout-v22/layout_contact_sync_suggestions.xml @@ -3,5 +3,5 @@ - + diff --git a/app/src/main/res/layout/layout_contact_sync_suggestions.xml b/app/src/main/res/layout/layout_contact_sync_suggestions.xml index ad0f203e19..a410328ff5 100644 --- a/app/src/main/res/layout/layout_contact_sync_suggestions.xml +++ b/app/src/main/res/layout/layout_contact_sync_suggestions.xml @@ -3,5 +3,5 @@ - + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 21d47f54ff..65e1dfd3e8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1341,7 +1341,7 @@ Presets Select a color Transparency - db5bfdf98d1946d28c237d0a5609d9c3 + 1d281d84cb934cf88d6151bf5e0686b8 Coming Soon Slash command application {applicationName} {applicationName} application