173 lines
9.5 KiB
Java
173 lines
9.5 KiB
Java
package com.discord.widgets.settings;
|
|
|
|
import android.content.Context;
|
|
import android.view.View;
|
|
import android.widget.TextView;
|
|
import androidx.annotation.MainThread;
|
|
import androidx.fragment.app.Fragment;
|
|
import androidx.fragment.app.FragmentManager;
|
|
import androidx.recyclerview.widget.RecyclerView;
|
|
import b.a.d.j;
|
|
import b.a.y.h;
|
|
import b.d.b.a.a;
|
|
import com.discord.R;
|
|
import com.discord.api.application.Application;
|
|
import com.discord.api.auth.OAuthScope;
|
|
import com.discord.app.AppFragment;
|
|
import com.discord.databinding.WidgetSettingsAuthorizedAppsBinding;
|
|
import com.discord.databinding.WidgetSettingsAuthorizedAppsListItemBinding;
|
|
import com.discord.models.domain.ModelOAuth2Token;
|
|
import com.discord.utilities.accessibility.AccessibilityUtils;
|
|
import com.discord.utilities.icon.IconUtils;
|
|
import com.discord.utilities.images.MGImages;
|
|
import com.discord.utilities.rest.RestAPI;
|
|
import com.discord.utilities.rx.ObservableExtensionsKt;
|
|
import com.discord.utilities.view.extensions.ViewExtensions;
|
|
import com.discord.utilities.viewbinding.FragmentViewBindingDelegate;
|
|
import com.discord.utilities.viewbinding.FragmentViewBindingDelegateKt;
|
|
import com.discord.utilities.views.SimpleRecyclerAdapter;
|
|
import com.discord.views.OAuthPermissionViews;
|
|
import com.discord.widgets.notice.WidgetNoticeDialog;
|
|
import com.facebook.drawee.view.SimpleDraweeView;
|
|
import com.google.android.material.card.MaterialCardView;
|
|
import d0.g0.t;
|
|
import d0.t.n;
|
|
import d0.z.d.m;
|
|
import kotlin.Unit;
|
|
import kotlin.jvm.functions.Function0;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import kotlin.reflect.KProperty;
|
|
/* compiled from: WidgetSettingsAuthorizedApps.kt */
|
|
/* loaded from: classes2.dex */
|
|
public final class WidgetSettingsAuthorizedApps extends AppFragment {
|
|
public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.b0(WidgetSettingsAuthorizedApps.class, "binding", "getBinding()Lcom/discord/databinding/WidgetSettingsAuthorizedAppsBinding;", 0)};
|
|
public static final Companion Companion = new Companion(null);
|
|
private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding$default(this, WidgetSettingsAuthorizedApps$binding$2.INSTANCE, null, 2, null);
|
|
private final SimpleRecyclerAdapter<ModelOAuth2Token, AuthorizedAppViewHolder> adapter = new SimpleRecyclerAdapter<>(null, new WidgetSettingsAuthorizedApps$adapter$1(this), 1, null);
|
|
|
|
/* compiled from: WidgetSettingsAuthorizedApps.kt */
|
|
/* loaded from: classes2.dex */
|
|
public static final class AuthorizedAppViewHolder extends SimpleRecyclerAdapter.ViewHolder<ModelOAuth2Token> {
|
|
private final WidgetSettingsAuthorizedAppsListItemBinding binding;
|
|
private final Function1<ModelOAuth2Token, Unit> onDeauthorizeClick;
|
|
private final SimpleRecyclerAdapter<OAuthScope, OAuthPermissionViews.a> permissionsAdapter;
|
|
|
|
/* JADX WARN: Illegal instructions before constructor call */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
/*
|
|
Code decompiled incorrectly, please refer to instructions dump.
|
|
*/
|
|
public AuthorizedAppViewHolder(WidgetSettingsAuthorizedAppsListItemBinding widgetSettingsAuthorizedAppsListItemBinding, Function1<? super ModelOAuth2Token, Unit> function1) {
|
|
super(r0);
|
|
m.checkNotNullParameter(widgetSettingsAuthorizedAppsListItemBinding, "binding");
|
|
m.checkNotNullParameter(function1, "onDeauthorizeClick");
|
|
MaterialCardView materialCardView = widgetSettingsAuthorizedAppsListItemBinding.a;
|
|
m.checkNotNullExpressionValue(materialCardView, "binding.root");
|
|
this.binding = widgetSettingsAuthorizedAppsListItemBinding;
|
|
this.onDeauthorizeClick = function1;
|
|
SimpleRecyclerAdapter<OAuthScope, OAuthPermissionViews.a> simpleRecyclerAdapter = new SimpleRecyclerAdapter<>(null, h.j, 1, null);
|
|
this.permissionsAdapter = simpleRecyclerAdapter;
|
|
RecyclerView recyclerView = widgetSettingsAuthorizedAppsListItemBinding.i;
|
|
m.checkNotNullExpressionValue(recyclerView, "binding.oauthApplicationPermissionsRv");
|
|
recyclerView.setAdapter(simpleRecyclerAdapter);
|
|
for (TextView textView : n.listOf((Object[]) new TextView[]{widgetSettingsAuthorizedAppsListItemBinding.g, widgetSettingsAuthorizedAppsListItemBinding.c, widgetSettingsAuthorizedAppsListItemBinding.h})) {
|
|
AccessibilityUtils accessibilityUtils = AccessibilityUtils.INSTANCE;
|
|
m.checkNotNullExpressionValue(textView, "header");
|
|
accessibilityUtils.setViewIsHeading(textView);
|
|
}
|
|
}
|
|
|
|
public static final /* synthetic */ Function1 access$getOnDeauthorizeClick$p(AuthorizedAppViewHolder authorizedAppViewHolder) {
|
|
return authorizedAppViewHolder.onDeauthorizeClick;
|
|
}
|
|
|
|
public void bind(ModelOAuth2Token modelOAuth2Token) {
|
|
m.checkNotNullParameter(modelOAuth2Token, "data");
|
|
Application application = modelOAuth2Token.getApplication();
|
|
String f = application.f();
|
|
String applicationIcon$default = f != null ? IconUtils.getApplicationIcon$default(application.g(), f, 0, 4, (Object) null) : null;
|
|
SimpleDraweeView simpleDraweeView = this.binding.e;
|
|
m.checkNotNullExpressionValue(simpleDraweeView, "binding.oauthApplicationIconIv");
|
|
MGImages.setImage$default(simpleDraweeView, applicationIcon$default, 0, 0, false, null, null, 124, null);
|
|
TextView textView = this.binding.g;
|
|
m.checkNotNullExpressionValue(textView, "binding.oauthApplicationNameTv");
|
|
textView.setText(application.h());
|
|
MaterialCardView materialCardView = this.binding.f;
|
|
m.checkNotNullExpressionValue(materialCardView, "binding.oauthApplicationListItem");
|
|
materialCardView.setContentDescription(application.h());
|
|
TextView textView2 = this.binding.c;
|
|
m.checkNotNullExpressionValue(textView2, "binding.oauthApplicationDescriptionLabelTv");
|
|
String c = application.c();
|
|
int i = 0;
|
|
if (!(!(c == null || t.isBlank(c)))) {
|
|
i = 8;
|
|
}
|
|
textView2.setVisibility(i);
|
|
TextView textView3 = this.binding.d;
|
|
m.checkNotNullExpressionValue(textView3, "binding.oauthApplicationDescriptionTv");
|
|
ViewExtensions.setTextAndVisibilityBy(textView3, application.c());
|
|
this.permissionsAdapter.setData(modelOAuth2Token.getScopes());
|
|
this.binding.f2586b.setOnClickListener(new WidgetSettingsAuthorizedApps$AuthorizedAppViewHolder$bind$2(this, modelOAuth2Token));
|
|
}
|
|
}
|
|
|
|
/* compiled from: WidgetSettingsAuthorizedApps.kt */
|
|
/* loaded from: classes2.dex */
|
|
public static final class Companion {
|
|
private Companion() {
|
|
}
|
|
|
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
|
|
public final void launch(Context context) {
|
|
m.checkNotNullParameter(context, "context");
|
|
j.e(context, WidgetSettingsAuthorizedApps.class, null, 4);
|
|
}
|
|
}
|
|
|
|
public WidgetSettingsAuthorizedApps() {
|
|
super(R.layout.widget_settings_authorized_apps);
|
|
}
|
|
|
|
public static final /* synthetic */ SimpleRecyclerAdapter access$getAdapter$p(WidgetSettingsAuthorizedApps widgetSettingsAuthorizedApps) {
|
|
return widgetSettingsAuthorizedApps.adapter;
|
|
}
|
|
|
|
public static final /* synthetic */ void access$loadAuthorizedApps(WidgetSettingsAuthorizedApps widgetSettingsAuthorizedApps) {
|
|
widgetSettingsAuthorizedApps.loadAuthorizedApps();
|
|
}
|
|
|
|
private final WidgetSettingsAuthorizedAppsBinding getBinding() {
|
|
return (WidgetSettingsAuthorizedAppsBinding) this.binding$delegate.getValue((Fragment) this, $$delegatedProperties[0]);
|
|
}
|
|
|
|
private final void loadAuthorizedApps() {
|
|
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().getOAuthTokens(), false, 1, null), this, null, 2, null), WidgetSettingsAuthorizedApps.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetSettingsAuthorizedApps$loadAuthorizedApps$1(this), 62, (Object) null);
|
|
}
|
|
|
|
@MainThread
|
|
public final void deauthorizeApp(long j) {
|
|
WidgetNoticeDialog.Builder positiveButton = WidgetNoticeDialog.Builder.setNegativeButton$default(new WidgetNoticeDialog.Builder(requireContext()).setTitle(R.string.deauthorize_app).setMessage(R.string.delete_app_confirm_msg), (int) R.string.cancel, (Function1) null, 2, (Object) null).setPositiveButton(R.string.deauthorize, new WidgetSettingsAuthorizedApps$deauthorizeApp$1(this, j));
|
|
FragmentManager parentFragmentManager = getParentFragmentManager();
|
|
m.checkNotNullExpressionValue(parentFragmentManager, "parentFragmentManager");
|
|
positiveButton.show(parentFragmentManager);
|
|
}
|
|
|
|
@Override // com.discord.app.AppFragment
|
|
public void onViewBound(View view) {
|
|
m.checkNotNullParameter(view, "view");
|
|
super.onViewBound(view);
|
|
RecyclerView recyclerView = getBinding().f2585b;
|
|
m.checkNotNullExpressionValue(recyclerView, "binding.authorizedAppsList");
|
|
recyclerView.setAdapter(this.adapter);
|
|
}
|
|
|
|
@Override // com.discord.app.AppFragment
|
|
public void onViewBoundOrOnResume() {
|
|
super.onViewBoundOrOnResume();
|
|
loadAuthorizedApps();
|
|
}
|
|
}
|