82.20 - Stable (82020)
This commit is contained in:
parent
0f830f2e49
commit
4ebeb8b7d5
16 changed files with 48 additions and 27 deletions
|
@ -10,8 +10,8 @@ android {
|
|||
applicationId 'com.discord'
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 29
|
||||
versionCode 82019
|
||||
versionName "82.19 - Stable"
|
||||
versionCode 82020
|
||||
versionName "82.20 - Stable"
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="82019" android:versionName="82.19 - Stable" android:installLocation="auto" android:compileSdkVersion="30" android:compileSdkVersionCodename="11" package="com.discord" platformBuildVersionCode="30" platformBuildVersionName="11">
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="82020" android:versionName="82.20 - Stable" android:installLocation="auto" android:compileSdkVersion="30" android:compileSdkVersionCodename="11" package="com.discord" platformBuildVersionCode="30" platformBuildVersionName="11">
|
||||
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="29"/>
|
||||
<uses-feature android:name="android.hardware.camera" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
|
||||
|
|
|
@ -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("82.19 - Stable")) {
|
||||
if (BuildUtils.INSTANCE.isValidBuildVersionName("82.20 - Stable")) {
|
||||
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true);
|
||||
} else {
|
||||
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(false);
|
||||
|
|
|
@ -15,7 +15,7 @@ public final class StoreClientVersion extends Store {
|
|||
private int clientMinVersion;
|
||||
private final String clientMinVersionKey = "CLIENT_OUTDATED_KEY";
|
||||
private final SerializedSubject<Boolean, Boolean> clientOutdatedSubject = new SerializedSubject<>(BehaviorSubject.l0(Boolean.FALSE));
|
||||
private final int clientVersion = 82019;
|
||||
private final int clientVersion = 82020;
|
||||
|
||||
public static final /* synthetic */ void access$setClientMinVersion(StoreClientVersion storeClientVersion, int i) {
|
||||
storeClientVersion.setClientMinVersion(i);
|
||||
|
|
|
@ -5,6 +5,7 @@ import com.discord.models.domain.emoji.ModelEmojiCustom;
|
|||
import com.discord.stores.StoreEmoji;
|
||||
import com.discord.stores.StoreMediaFavorites;
|
||||
import com.discord.utilities.Quad;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt;
|
||||
import d0.z.d.m;
|
||||
import j0.k.b;
|
||||
import java.util.List;
|
||||
|
@ -71,6 +72,6 @@ public final class StoreEmoji$getEmojiSet$4<T, R> implements b<Quad<? extends Bo
|
|||
}
|
||||
|
||||
public final Observable<? extends EmojiSet> call(Quad<Boolean, Boolean, ? extends List<Long>, ? extends Set<? extends StoreMediaFavorites.Favorite>> quad) {
|
||||
return StoreEmoji.access$getCustomEmojiStore$p(this.this$0).observeAllowedGuildEmoji().F(new AnonymousClass1(this, (List) quad.component3(), quad.component1(), quad.component2(), (Set) quad.component4()));
|
||||
return ObservableExtensionsKt.computationLatest(StoreEmoji.access$getCustomEmojiStore$p(this.this$0).observeAllowedGuildEmoji()).F(new AnonymousClass1(this, (List) quad.component3(), quad.component1(), quad.component2(), (Set) quad.component4()));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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/82019"), o.to("client_build_number", 82019), o.to("client_version", "82.19 - Stable"), 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/82020"), o.to("client_build_number", 82020), o.to("client_version", "82.20 - Stable"), 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<String, ? extends Object> map) {
|
||||
|
|
|
@ -177,7 +177,7 @@ public final class RestAPI implements RestAPIInterface {
|
|||
|
||||
@Override // com.discord.restapi.RequiredHeadersInterceptor.HeadersProvider
|
||||
public String getUserAgent() {
|
||||
return "Discord-Android/82019";
|
||||
return "Discord-Android/82020";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -16,10 +16,10 @@ public final class ChatInputAutocompletables$observeChannelAutocompletables$1<T,
|
|||
|
||||
/* compiled from: ChatInputAutocompletables.kt */
|
||||
/* renamed from: com.discord.widgets.chat.input.autocomplete.ChatInputAutocompletables$observeChannelAutocompletables$1$1 reason: invalid class name */
|
||||
public static final class AnonymousClass1<T1, T2, T3, T4, R> implements Func4<Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, TreeSet<Autocompletable>>> {
|
||||
public static final class AnonymousClass1<T1, T2, T3, T4, R> implements Func4<Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>>, Map<LeadingIdentifier, ? extends Set<? extends Autocompletable>>> {
|
||||
public static final AnonymousClass1 INSTANCE = new AnonymousClass1();
|
||||
|
||||
public final Map<LeadingIdentifier, TreeSet<Autocompletable>> call(Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map2, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map3, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map4) {
|
||||
public final Map<LeadingIdentifier, Set<Autocompletable>> call(Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map2, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map3, Map<LeadingIdentifier, ? extends TreeSet<Autocompletable>> map4) {
|
||||
LinkedHashMap linkedHashMap = new LinkedHashMap();
|
||||
m.checkNotNullExpressionValue(map, "commands");
|
||||
ChatInputAutocompletablesKt.access$merge(linkedHashMap, map);
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.discord.widgets.chat.input.autocomplete;
|
||||
|
||||
import com.discord.stores.StoreStream;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt$filterNull$1;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt$filterNull$2;
|
||||
import com.discord.widgets.chat.input.autocomplete.sources.ApplicationCommandsAutocompletableSource;
|
||||
|
@ -43,8 +44,8 @@ public final class ChatInputAutocompletables {
|
|||
public final Observable<Map<LeadingIdentifier, Set<Autocompletable>>> observeChannelAutocompletables() {
|
||||
Observable<R> F = StoreStream.Companion.getChannelsSelected().observeSelectedChannel().x(ObservableExtensionsKt$filterNull$1.INSTANCE).F(ObservableExtensionsKt$filterNull$2.INSTANCE);
|
||||
m.checkNotNullExpressionValue(F, "filter { it != null }.map { it!! }");
|
||||
Observable<Map<LeadingIdentifier, Set<Autocompletable>>> Y = F.Y(ChatInputAutocompletables$observeChannelAutocompletables$1.INSTANCE);
|
||||
m.checkNotNullExpressionValue(Y, "StoreStream.getChannelsS…les\n }\n }");
|
||||
return Y;
|
||||
Observable Y = F.Y(ChatInputAutocompletables$observeChannelAutocompletables$1.INSTANCE);
|
||||
m.checkNotNullExpressionValue(Y, "StoreStream.getChannelsS…e>>\n }\n }");
|
||||
return ObservableExtensionsKt.computationLatest(Y);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@ import com.discord.models.commands.ApplicationCommand;
|
|||
import com.discord.models.commands.ApplicationCommandOption;
|
||||
import com.discord.stores.StoreApplicationCommands;
|
||||
import com.discord.stores.StoreStream;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt;
|
||||
import com.discord.widgets.chat.input.WidgetChatInputDiscoveryCommandsModel;
|
||||
import com.discord.widgets.chat.input.autocomplete.ApplicationCommandAutocompletable;
|
||||
import com.discord.widgets.chat.input.autocomplete.ApplicationCommandChoiceAutocompletable;
|
||||
|
@ -93,8 +94,10 @@ public final class ApplicationCommandsAutocompletableSource {
|
|||
|
||||
public final Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> observeApplicationCommandAutocompletables(Channel channel) {
|
||||
m.checkNotNullParameter(channel, "channel");
|
||||
Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> r = Observable.j(this.storeApplicationCommands.observeGuildApplications(channel.h()), this.storeApplicationCommands.observeQueryCommands(channel.h()), new ApplicationCommandsAutocompletableSource$observeApplicationCommandAutocompletables$1(this)).r();
|
||||
m.checkNotNullExpressionValue(r, "Observable.combineLatest… }.distinctUntilChanged()");
|
||||
Observable j = Observable.j(ObservableExtensionsKt.computationLatest(this.storeApplicationCommands.observeGuildApplications(channel.h())), ObservableExtensionsKt.computationLatest(this.storeApplicationCommands.observeQueryCommands(channel.h())), new ApplicationCommandsAutocompletableSource$observeApplicationCommandAutocompletables$1(this));
|
||||
m.checkNotNullExpressionValue(j, "Observable.combineLatest… TreeSet())\n }\n }");
|
||||
Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> r = ObservableExtensionsKt.computationLatest(j).r();
|
||||
m.checkNotNullExpressionValue(r, "Observable.combineLatest… .distinctUntilChanged()");
|
||||
return r;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,7 +31,9 @@ public final class ChannelAutocompletableSource {
|
|||
}
|
||||
|
||||
public final Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> observeChannelAutocompletables(long j) {
|
||||
Observable r = Observable.j(StoreChannels.observeChannelsForGuild$default(this.storeChannels, j, null, 2, null), this.storePermissions.observePermissionsForAllChannels(), ChannelAutocompletableSource$observeChannelAutocompletables$1.INSTANCE).r();
|
||||
Observable j2 = Observable.j(ObservableExtensionsKt.computationLatest(StoreChannels.observeChannelsForGuild$default(this.storeChannels, j, null, 2, null)), ObservableExtensionsKt.computationLatest(this.storePermissions.observePermissionsForAllChannels()), ChannelAutocompletableSource$observeChannelAutocompletables$1.INSTANCE);
|
||||
m.checkNotNullExpressionValue(j2, "Observable.combineLatest…ANNELS to channels)\n }");
|
||||
Observable r = ObservableExtensionsKt.computationLatest(j2).r();
|
||||
m.checkNotNullExpressionValue(r, "Observable.combineLatest… .distinctUntilChanged()");
|
||||
return ObservableExtensionsKt.leadingEdgeThrottle(r, 500, TimeUnit.MILLISECONDS);
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ import com.discord.models.domain.emoji.Emoji;
|
|||
import com.discord.models.domain.emoji.EmojiSet;
|
||||
import com.discord.stores.StoreEmoji;
|
||||
import com.discord.stores.StoreUserSettings;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt;
|
||||
import com.discord.widgets.chat.input.autocomplete.Autocompletable;
|
||||
import com.discord.widgets.chat.input.autocomplete.AutocompletableComparator;
|
||||
import com.discord.widgets.chat.input.autocomplete.EmojiAutocompletable;
|
||||
|
@ -68,8 +69,10 @@ public final class EmojiAutocompletableSource {
|
|||
|
||||
public final Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> observeEmojiAutocompletables(Channel channel) {
|
||||
m.checkNotNullParameter(channel, "channel");
|
||||
Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> r = Observable.j(this.emojiStore.getEmojiSet(channel.f(), channel.h(), EmojiAutocompletePremiumUpsellFeatureFlag.Companion.getINSTANCE().isEnabled(), false), this.userSettingsStore.observeIsAnimatedEmojisEnabled(true), new EmojiAutocompletableSource$observeEmojiAutocompletables$1(this)).r();
|
||||
m.checkNotNullExpressionValue(r, "Observable.combineLatest… }.distinctUntilChanged()");
|
||||
Observable j = Observable.j(ObservableExtensionsKt.computationLatest(this.emojiStore.getEmojiSet(channel.f(), channel.h(), EmojiAutocompletePremiumUpsellFeatureFlag.Companion.getINSTANCE().isEnabled(), false)), ObservableExtensionsKt.computationLatest(this.userSettingsStore.observeIsAnimatedEmojisEnabled(true)), new EmojiAutocompletableSource$observeEmojiAutocompletables$1(this));
|
||||
m.checkNotNullExpressionValue(j, "Observable.combineLatest… animationsEnabled)\n }");
|
||||
Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> r = ObservableExtensionsKt.computationLatest(j).r();
|
||||
m.checkNotNullExpressionValue(r, "Observable.combineLatest… .distinctUntilChanged()");
|
||||
return r;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -174,19 +174,30 @@ public final class UserAutocompletableSource {
|
|||
m.checkNotNullParameter(channel, "channel");
|
||||
long f = channel.f();
|
||||
if (UserMentionableSourceKt.access$isGuildChannelOrThread(channel)) {
|
||||
Observable<Long> observeMeId = this.storeUsers.observeMeId();
|
||||
Observable computationLatest = ObservableExtensionsKt.computationLatest(this.storeUsers.observeMeId());
|
||||
Observable<R> F = this.storeGuilds.observeGuild(f).x(ObservableExtensionsKt$filterNull$1.INSTANCE).F(ObservableExtensionsKt$filterNull$2.INSTANCE);
|
||||
m.checkNotNullExpressionValue(F, "filter { it != null }.map { it!! }");
|
||||
Observable r = F.F(UserAutocompletableSource$observeUserAutocompletables$1.INSTANCE).r();
|
||||
Observable<Map<Long, GuildRole>> observeRoles = this.storeGuilds.observeRoles(f);
|
||||
m.checkNotNullExpressionValue(r, "storeGuilds.observeGuild… }.distinctUntilChanged()");
|
||||
Observable computationLatest2 = ObservableExtensionsKt.computationLatest(r);
|
||||
Observable computationLatest3 = ObservableExtensionsKt.computationLatest(this.storeGuilds.observeRoles(f));
|
||||
Observable<Map<Long, GuildMember>> observeComputed = this.storeGuilds.observeComputed(f);
|
||||
TimeUnit timeUnit = TimeUnit.SECONDS;
|
||||
observable = Observable.d(observeMeId, r, observeRoles, ObservableExtensionsKt.leadingEdgeThrottle(observeComputed, 5, timeUnit), this.storeUsers.observeAllUsers(), ObservableExtensionsKt.leadingEdgeThrottle(this.storePresences.observeAllPresences(), 10, timeUnit), this.storePermissions.observePermissionsForChannel(channel.h()).r(), this.storeChannels.observeChannel(channel.r()).r(), new UserAutocompletableSource$observeUserAutocompletables$2(this, channel));
|
||||
Observable computationLatest4 = ObservableExtensionsKt.computationLatest(ObservableExtensionsKt.leadingEdgeThrottle(observeComputed, 5, timeUnit));
|
||||
Observable computationLatest5 = ObservableExtensionsKt.computationLatest(this.storeUsers.observeAllUsers());
|
||||
Observable computationLatest6 = ObservableExtensionsKt.computationLatest(ObservableExtensionsKt.leadingEdgeThrottle(this.storePresences.observeAllPresences(), 10, timeUnit));
|
||||
Observable<Long> r2 = this.storePermissions.observePermissionsForChannel(channel.h()).r();
|
||||
m.checkNotNullExpressionValue(r2, "storePermissions.observe…d).distinctUntilChanged()");
|
||||
Observable computationLatest7 = ObservableExtensionsKt.computationLatest(r2);
|
||||
Observable<Channel> r3 = this.storeChannels.observeChannel(channel.r()).r();
|
||||
m.checkNotNullExpressionValue(r3, "storeChannels.observeCha…d).distinctUntilChanged()");
|
||||
observable = Observable.d(computationLatest, computationLatest2, computationLatest3, computationLatest4, computationLatest5, computationLatest6, computationLatest7, ObservableExtensionsKt.computationLatest(r3), new UserAutocompletableSource$observeUserAutocompletables$2(this, channel));
|
||||
} else {
|
||||
observable = UserMentionableSourceKt.access$isDmOrGroupDm(channel) ? Observable.A(AnimatableValueParser.G0(channel)).F(UserAutocompletableSource$observeUserAutocompletables$3.INSTANCE).f0().Y(new UserAutocompletableSource$observeUserAutocompletables$4(this, channel)) : new j(h0.emptyMap());
|
||||
}
|
||||
Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> r2 = observable.r();
|
||||
m.checkNotNullExpressionValue(r2, "when {\n // Guild Ch… .distinctUntilChanged()");
|
||||
return r2;
|
||||
m.checkNotNullExpressionValue(observable, "when {\n // Guild Ch…vable.just(mapOf())\n }");
|
||||
Observable<Map<LeadingIdentifier, TreeSet<Autocompletable>>> r4 = ObservableExtensionsKt.computationLatest(observable).r();
|
||||
m.checkNotNullExpressionValue(r4, "when {\n // Guild Ch… .distinctUntilChanged()");
|
||||
return r4;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -100,7 +100,7 @@ public final class WidgetFatalCrash extends AppFragment {
|
|||
textView2.setText(b.j(this, 2131887892, objArr2, null, 4));
|
||||
TextView textView3 = getBinding().b;
|
||||
m.checkNotNullExpressionValue(textView3, "binding.fatalCrashAppVersion");
|
||||
textView3.setText(b.j(this, 2131887885, new Object[]{"82.19 - Stable"}, null, 4));
|
||||
textView3.setText(b.j(this, 2131887885, new Object[]{"82.20 - Stable"}, null, 4));
|
||||
TextView textView4 = getBinding().d;
|
||||
m.checkNotNullExpressionValue(textView4, "binding.fatalCrashOsVersion");
|
||||
textView4.setText(b.j(this, 2131887888, new Object[]{String.valueOf(Build.VERSION.SDK_INT)}, null, 4));
|
||||
|
|
|
@ -332,7 +332,7 @@ public final class WidgetSettings extends AppFragment implements OnTabSelectedLi
|
|||
TextView textView = binding.f;
|
||||
m.checkNotNullExpressionValue(textView, "appInfoHeader");
|
||||
String string = getString(2131886360);
|
||||
textView.setText(string + " - 82.19 - Stable (82019)");
|
||||
textView.setText(string + " - 82.20 - Stable (82020)");
|
||||
binding.f1921y.setOnClickListener(new WidgetSettings$onViewBound$$inlined$with$lambda$2(this));
|
||||
binding.u.setOnClickListener(WidgetSettings$onViewBound$1$4.INSTANCE);
|
||||
binding.q.setOnClickListener(WidgetSettings$onViewBound$1$5.INSTANCE);
|
||||
|
|
|
@ -1341,7 +1341,7 @@
|
|||
<string name="color_picker_presets">Presets</string>
|
||||
<string name="color_picker_title">Select a color</string>
|
||||
<string name="color_picker_transparency">Transparency</string>
|
||||
<string name="res_2131887421_com_crashlytics_android_build_id">df62e7a584c54bbbb7d0e1b9e39006d6</string>
|
||||
<string name="res_2131887421_com_crashlytics_android_build_id">0a94dcbb480e438e83ac178feccc81ce</string>
|
||||
<string name="coming_soon">Coming Soon</string>
|
||||
<string name="command_accessibility_desc_app_header_item">Slash command application {applicationName}</string>
|
||||
<string name="command_accessibility_desc_app_item">{applicationName} application</string>
|
||||
|
|
Loading…
Reference in a new issue