277 lines
14 KiB
Java
277 lines
14 KiB
Java
package com.discord.widgets.servers.settings.members;
|
|
|
|
import android.content.Context;
|
|
import android.content.Intent;
|
|
import android.view.LayoutInflater;
|
|
import android.view.View;
|
|
import android.view.ViewGroup;
|
|
import android.widget.ArrayAdapter;
|
|
import android.widget.EditText;
|
|
import android.widget.Spinner;
|
|
import android.widget.SpinnerAdapter;
|
|
import android.widget.TextView;
|
|
import androidx.fragment.app.Fragment;
|
|
import androidx.recyclerview.widget.RecyclerView;
|
|
import c.a.d.l;
|
|
import c.a.i.e1;
|
|
import c.a.i.f1;
|
|
import c.d.b.a.a;
|
|
import com.discord.api.role.GuildRole;
|
|
import com.discord.app.AppActivity;
|
|
import com.discord.app.AppFragment;
|
|
import com.discord.app.AppViewFlipper;
|
|
import com.discord.databinding.WidgetServerSettingsMembersBinding;
|
|
import com.discord.stores.StoreStream;
|
|
import com.discord.utilities.guilds.RoleUtils;
|
|
import com.discord.utilities.mg_recycler.MGRecyclerAdapter;
|
|
import com.discord.utilities.rx.ObservableExtensionsKt;
|
|
import com.discord.utilities.view.text.TextWatcher;
|
|
import com.discord.utilities.viewbinding.FragmentViewBindingDelegate;
|
|
import com.discord.utilities.viewbinding.FragmentViewBindingDelegateKt;
|
|
import com.google.android.material.textfield.TextInputLayout;
|
|
import d0.g;
|
|
import d0.z.d.m;
|
|
import java.util.ArrayList;
|
|
import java.util.Map;
|
|
import java.util.Objects;
|
|
import java.util.concurrent.TimeUnit;
|
|
import kotlin.Lazy;
|
|
import kotlin.jvm.functions.Function0;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import kotlin.reflect.KProperty;
|
|
import rx.Observable;
|
|
import rx.subjects.BehaviorSubject;
|
|
import rx.subjects.Subject;
|
|
/* compiled from: WidgetServerSettingsMembers.kt */
|
|
public final class WidgetServerSettingsMembers extends AppFragment {
|
|
public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.V(WidgetServerSettingsMembers.class, "binding", "getBinding()Lcom/discord/databinding/WidgetServerSettingsMembersBinding;", 0)};
|
|
public static final Companion Companion = new Companion(null);
|
|
private static final String INTENT_EXTRA_GUILD_ID = "GUILD_ID";
|
|
private static final int VIEW_INDEX_MEMBER_LIST = 0;
|
|
private static final int VIEW_INDEX_NO_RESULTS = 1;
|
|
private WidgetServerSettingsMembersAdapter adapter;
|
|
private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding$default(this, WidgetServerSettingsMembers$binding$2.INSTANCE, null, 2, null);
|
|
private final Lazy guildId$delegate;
|
|
private Map<Long, GuildRole> guildRoles;
|
|
private final Subject<String, String> nameFilterPublisher;
|
|
private final Subject<Long, Long> roleFilterPublisher;
|
|
|
|
/* compiled from: WidgetServerSettingsMembers.kt */
|
|
public static final class Companion {
|
|
private Companion() {
|
|
}
|
|
|
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
|
|
public final void create(Context context, long j) {
|
|
m.checkNotNullParameter(context, "context");
|
|
Intent putExtra = new Intent().putExtra("GUILD_ID", j);
|
|
m.checkNotNullExpressionValue(putExtra, "Intent()\n .putE…_EXTRA_GUILD_ID, guildId)");
|
|
l.d(context, WidgetServerSettingsMembers.class, putExtra);
|
|
StoreStream.Companion.getAnalytics().onGuildSettingsPaneViewed("MEMBERS", j);
|
|
}
|
|
}
|
|
|
|
/* compiled from: WidgetServerSettingsMembers.kt */
|
|
public static final class RolesSpinnerAdapter extends ArrayAdapter<GuildRole> {
|
|
private final ArrayList<GuildRole> roles;
|
|
|
|
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
|
|
public RolesSpinnerAdapter(Context context, ArrayList<GuildRole> arrayList) {
|
|
super(context, 2131558657, arrayList);
|
|
m.checkNotNullParameter(context, "context");
|
|
m.checkNotNullParameter(arrayList, "roles");
|
|
this.roles = arrayList;
|
|
}
|
|
|
|
private final void configureLabel(TextView textView, int i) {
|
|
GuildRole item = getItem(i);
|
|
Context context = getContext();
|
|
m.checkNotNullExpressionValue(context, "context");
|
|
textView.setTextColor(RoleUtils.getRoleColor$default(item, context, null, 2, null));
|
|
textView.setText(item.f());
|
|
}
|
|
|
|
@Override // android.widget.ArrayAdapter, android.widget.Adapter
|
|
public int getCount() {
|
|
return this.roles.size();
|
|
}
|
|
|
|
@Override // android.widget.ArrayAdapter, android.widget.SpinnerAdapter, android.widget.BaseAdapter
|
|
public View getDropDownView(int i, View view, ViewGroup viewGroup) {
|
|
f1 f1Var;
|
|
m.checkNotNullParameter(viewGroup, "parent");
|
|
if (view == null) {
|
|
View inflate = LayoutInflater.from(viewGroup.getContext()).inflate(2131558658, (ViewGroup) null, false);
|
|
Objects.requireNonNull(inflate, "rootView");
|
|
TextView textView = (TextView) inflate;
|
|
f1Var = new f1(textView, textView);
|
|
} else {
|
|
TextView textView2 = (TextView) view;
|
|
f1Var = new f1(textView2, textView2);
|
|
}
|
|
m.checkNotNullExpressionValue(f1Var, "if (convertView == null)…bind(convertView)\n }");
|
|
TextView textView3 = f1Var.b;
|
|
m.checkNotNullExpressionValue(textView3, "binding.roleSpinnerItemTextview");
|
|
configureLabel(textView3, i);
|
|
TextView textView4 = f1Var.a;
|
|
m.checkNotNullExpressionValue(textView4, "binding.root");
|
|
return textView4;
|
|
}
|
|
|
|
@Override // android.widget.ArrayAdapter, android.widget.Adapter
|
|
public GuildRole getItem(int i) {
|
|
GuildRole guildRole = this.roles.get(i);
|
|
m.checkNotNullExpressionValue(guildRole, "roles[position]");
|
|
return guildRole;
|
|
}
|
|
|
|
@Override // android.widget.ArrayAdapter, android.widget.Adapter
|
|
public long getItemId(int i) {
|
|
return (long) i;
|
|
}
|
|
|
|
@Override // android.widget.ArrayAdapter, android.widget.Adapter
|
|
public View getView(int i, View view, ViewGroup viewGroup) {
|
|
e1 e1Var;
|
|
m.checkNotNullParameter(viewGroup, "parent");
|
|
if (view == null) {
|
|
View inflate = LayoutInflater.from(viewGroup.getContext()).inflate(2131558657, (ViewGroup) null, false);
|
|
Objects.requireNonNull(inflate, "rootView");
|
|
TextView textView = (TextView) inflate;
|
|
e1Var = new e1(textView, textView);
|
|
} else {
|
|
TextView textView2 = (TextView) view;
|
|
e1Var = new e1(textView2, textView2);
|
|
}
|
|
m.checkNotNullExpressionValue(e1Var, "if (convertView == null)…bind(convertView)\n }");
|
|
TextView textView3 = e1Var.b;
|
|
m.checkNotNullExpressionValue(textView3, "binding.roleSpinnerItemTextview");
|
|
configureLabel(textView3, i);
|
|
TextView textView4 = e1Var.a;
|
|
m.checkNotNullExpressionValue(textView4, "binding.root");
|
|
return textView4;
|
|
}
|
|
}
|
|
|
|
public WidgetServerSettingsMembers() {
|
|
super(2131559196);
|
|
BehaviorSubject l0 = BehaviorSubject.l0("");
|
|
m.checkNotNullExpressionValue(l0, "BehaviorSubject.create(\"\")");
|
|
this.nameFilterPublisher = l0;
|
|
BehaviorSubject l02 = BehaviorSubject.l0(-1L);
|
|
m.checkNotNullExpressionValue(l02, "BehaviorSubject.create(-1L)");
|
|
this.roleFilterPublisher = l02;
|
|
this.guildId$delegate = g.lazy(new WidgetServerSettingsMembers$guildId$2(this));
|
|
}
|
|
|
|
public static final /* synthetic */ void access$configureUI(WidgetServerSettingsMembers widgetServerSettingsMembers, WidgetServerSettingsMembersModel widgetServerSettingsMembersModel) {
|
|
widgetServerSettingsMembers.configureUI(widgetServerSettingsMembersModel);
|
|
}
|
|
|
|
public static final /* synthetic */ WidgetServerSettingsMembersBinding access$getBinding$p(WidgetServerSettingsMembers widgetServerSettingsMembers) {
|
|
return widgetServerSettingsMembers.getBinding();
|
|
}
|
|
|
|
public static final /* synthetic */ long access$getGuildId$p(WidgetServerSettingsMembers widgetServerSettingsMembers) {
|
|
return widgetServerSettingsMembers.getGuildId();
|
|
}
|
|
|
|
public static final /* synthetic */ Subject access$getNameFilterPublisher$p(WidgetServerSettingsMembers widgetServerSettingsMembers) {
|
|
return widgetServerSettingsMembers.nameFilterPublisher;
|
|
}
|
|
|
|
public static final /* synthetic */ Subject access$getRoleFilterPublisher$p(WidgetServerSettingsMembers widgetServerSettingsMembers) {
|
|
return widgetServerSettingsMembers.roleFilterPublisher;
|
|
}
|
|
|
|
private final void configureUI(WidgetServerSettingsMembersModel widgetServerSettingsMembersModel) {
|
|
if (widgetServerSettingsMembersModel == null) {
|
|
AppActivity appActivity = getAppActivity();
|
|
if (appActivity != null) {
|
|
appActivity.onBackPressed();
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
AppFragment.setActionBarOptionsMenu$default(this, widgetServerSettingsMembersModel.getCanKick() ? 2131623961 : 2131623951, new WidgetServerSettingsMembers$configureUI$1(this, widgetServerSettingsMembersModel), null, 4, null);
|
|
setActionBarTitle(2131891166);
|
|
setActionBarSubtitle(widgetServerSettingsMembersModel.getGuild().getName());
|
|
AppViewFlipper appViewFlipper = getBinding().e;
|
|
m.checkNotNullExpressionValue(appViewFlipper, "binding.serverSettingsMembersViewFlipper");
|
|
appViewFlipper.setDisplayedChild((!widgetServerSettingsMembersModel.getMemberItems().isEmpty() ? 1 : 0) ^ 1);
|
|
if (!m.areEqual(this.guildRoles, widgetServerSettingsMembersModel.getRoles())) {
|
|
this.guildRoles = widgetServerSettingsMembersModel.getRoles();
|
|
setupRolesSpinner(widgetServerSettingsMembersModel.getGuild().getId(), widgetServerSettingsMembersModel.getRoles());
|
|
}
|
|
WidgetServerSettingsMembersAdapter widgetServerSettingsMembersAdapter = this.adapter;
|
|
if (widgetServerSettingsMembersAdapter != null) {
|
|
widgetServerSettingsMembersAdapter.configure(widgetServerSettingsMembersModel, new WidgetServerSettingsMembers$configureUI$2(this, widgetServerSettingsMembersModel));
|
|
}
|
|
}
|
|
|
|
private final WidgetServerSettingsMembersBinding getBinding() {
|
|
return (WidgetServerSettingsMembersBinding) this.binding$delegate.getValue((Fragment) this, $$delegatedProperties[0]);
|
|
}
|
|
|
|
private final long getGuildId() {
|
|
return ((Number) this.guildId$delegate.getValue()).longValue();
|
|
}
|
|
|
|
private final void setupRolesSpinner(long j, Map<Long, GuildRole> map) {
|
|
ArrayList arrayList = new ArrayList(map.size());
|
|
for (GuildRole guildRole : map.values()) {
|
|
if (guildRole.getId() != j) {
|
|
arrayList.add(guildRole);
|
|
} else {
|
|
arrayList.add(0, guildRole);
|
|
}
|
|
}
|
|
RolesSpinnerAdapter rolesSpinnerAdapter = new RolesSpinnerAdapter(requireContext(), arrayList);
|
|
Spinner spinner = getBinding().d;
|
|
m.checkNotNullExpressionValue(spinner, "binding.serverSettingsMembersRolesSpinner");
|
|
spinner.setAdapter((SpinnerAdapter) rolesSpinnerAdapter);
|
|
Spinner spinner2 = getBinding().d;
|
|
m.checkNotNullExpressionValue(spinner2, "binding.serverSettingsMembersRolesSpinner");
|
|
spinner2.setOnItemSelectedListener(new WidgetServerSettingsMembers$setupRolesSpinner$1(this, rolesSpinnerAdapter));
|
|
}
|
|
|
|
@Override // com.discord.app.AppFragment
|
|
public void onViewBound(View view) {
|
|
m.checkNotNullParameter(view, "view");
|
|
super.onViewBound(view);
|
|
AppFragment.setActionBarDisplayHomeAsUpEnabled$default(this, false, 1, null);
|
|
MGRecyclerAdapter.Companion companion = MGRecyclerAdapter.Companion;
|
|
RecyclerView recyclerView = getBinding().f1910c;
|
|
m.checkNotNullExpressionValue(recyclerView, "binding.serverSettingsMembersRecycler");
|
|
this.adapter = (WidgetServerSettingsMembersAdapter) companion.configure(new WidgetServerSettingsMembersAdapter(recyclerView));
|
|
if (!isRecreated()) {
|
|
this.roleFilterPublisher.onNext(Long.valueOf(getGuildId()));
|
|
}
|
|
}
|
|
|
|
@Override // com.discord.app.AppFragment
|
|
public void onViewBoundOrOnResume() {
|
|
super.onViewBoundOrOnResume();
|
|
TextWatcher.Companion companion = TextWatcher.Companion;
|
|
TextInputLayout textInputLayout = getBinding().b;
|
|
m.checkNotNullExpressionValue(textInputLayout, "binding.serverSettingsMembersNameSearch");
|
|
EditText editText = textInputLayout.getEditText();
|
|
m.checkNotNull(editText);
|
|
m.checkNotNullExpressionValue(editText, "binding.serverSettingsMembersNameSearch.editText!!");
|
|
companion.addBindedTextWatcher(this, editText, new WidgetServerSettingsMembers$onViewBoundOrOnResume$1(this));
|
|
Subject<String, String> subject = this.nameFilterPublisher;
|
|
TextInputLayout textInputLayout2 = getBinding().b;
|
|
m.checkNotNullExpressionValue(textInputLayout2, "binding.serverSettingsMembersNameSearch");
|
|
EditText editText2 = textInputLayout2.getEditText();
|
|
subject.onNext(String.valueOf(editText2 != null ? editText2.getText() : null));
|
|
Observable<String> o = this.nameFilterPublisher.o(750, TimeUnit.MILLISECONDS);
|
|
m.checkNotNullExpressionValue(o, "nameFilterPublisher\n …0, TimeUnit.MILLISECONDS)");
|
|
ObservableExtensionsKt.appSubscribe$default(o, WidgetServerSettingsMembers.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetServerSettingsMembers$onViewBoundOrOnResume$2(this), 62, (Object) null);
|
|
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(WidgetServerSettingsMembersModel.Companion.get(getGuildId(), this.nameFilterPublisher, this.roleFilterPublisher), this, null, 2, null), WidgetServerSettingsMembers.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetServerSettingsMembers$onViewBoundOrOnResume$3(this), 62, (Object) null);
|
|
}
|
|
}
|