正在查看: Delta Chat v1.58.3 应用的 BlockedContactsActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Delta Chat v1.58.3 应用的 BlockedContactsActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package org.thoughtcrime.securesms;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
import androidx.loader.app.LoaderManager;
import androidx.loader.content.Loader;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.b44t.messenger.DcEvent;
import org.thoughtcrime.securesms.BlockedContactsActivity;
import org.thoughtcrime.securesms.connect.DcContactsLoader;
import org.thoughtcrime.securesms.connect.DcEventCenter;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.contacts.ContactSelectionListAdapter;
import org.thoughtcrime.securesms.contacts.ContactSelectionListItem;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.util.ViewUtil;
public class BlockedContactsActivity extends PassphraseRequiredActionBarActivity {
@Override
public void onCreate(Bundle bundle, boolean z) {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setTitle(R.string.pref_blocked_contacts);
initFragment(android.R.id.content, new BlockedAndShareContactsFragment(), getIntent().getExtras());
}
public boolean onOptionsItemSelected(MenuItem menuItem) {
if (menuItem.getItemId() != 16908332) {
return false;
}
finish();
return true;
}
public static class BlockedAndShareContactsFragment extends Fragment implements LoaderManager.LoaderCallbacks<DcContactsLoader.Ret>, DcEventCenter.DcEventDelegate, ContactSelectionListAdapter.ItemClickListener {
private TextView emptyStateView;
private RecyclerView recyclerView;
@Override
public void onItemLongClick(ContactSelectionListItem contactSelectionListItem) {
}
@Override
public boolean runOnMain() {
return DcEventCenter.DcEventDelegate.CC.$default$runOnMain(this);
}
public void onLoadFinished(Loader loader, Object obj) {
onLoadFinished((Loader<DcContactsLoader.Ret>) loader, (DcContactsLoader.Ret) obj);
}
public View onCreateView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) {
View inflate = layoutInflater.inflate(R.layout.contact_selection_list_fragment, viewGroup, false);
RecyclerView findById = ViewUtil.findById(inflate, R.id.recycler_view);
this.recyclerView = findById;
findById.setLayoutManager(new LinearLayoutManager(getActivity()));
TextView textView = (TextView) ViewUtil.findById(inflate, android.R.id.empty);
this.emptyStateView = textView;
textView.setText(R.string.blocked_empty_hint);
return inflate;
}
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
getLoaderManager().initLoader(0, (Bundle) null, this);
}
public void onActivityCreated(Bundle bundle) {
super.onActivityCreated(bundle);
initializeAdapter();
}
private void initializeAdapter() {
this.recyclerView.setAdapter(new ContactSelectionListAdapter(getActivity(), GlideApp.with(this), this, false, false));
}
public Loader<DcContactsLoader.Ret> onCreateLoader(int i, Bundle bundle) {
return new DcContactsLoader(getActivity(), -1, null, false, false, false, true);
}
public void onLoadFinished(Loader<DcContactsLoader.Ret> loader, DcContactsLoader.Ret ret) {
ContactSelectionListAdapter contactSelectionListAdapter = getContactSelectionListAdapter();
if (contactSelectionListAdapter != null) {
contactSelectionListAdapter.changeData(ret);
TextView textView = this.emptyStateView;
if (textView != null) {
textView.setVisibility(contactSelectionListAdapter.getItemCount() > 0 ? 8 : 0);
}
}
}
public void onLoaderReset(Loader<DcContactsLoader.Ret> loader) {
getContactSelectionListAdapter().changeData(null);
}
@Override
public void handleEvent(DcEvent dcEvent) {
if (dcEvent.getId() == 2030) {
restartLoader();
}
}
private void restartLoader() {
getLoaderManager().restartLoader(0, (Bundle) null, this);
}
private ContactSelectionListAdapter getContactSelectionListAdapter() {
return (ContactSelectionListAdapter) this.recyclerView.getAdapter();
}
@Override
public void onItemClick(final ContactSelectionListItem contactSelectionListItem, boolean z) {
new AlertDialog.Builder(getActivity()).setMessage(R.string.ask_unblock_contact).setCancelable(true).setNegativeButton(android.R.string.cancel, (DialogInterface.OnClickListener) null).setPositiveButton(R.string.menu_unblock_contact, new DialogInterface.OnClickListener() {
@Override
public final void onClick(DialogInterface dialogInterface, int i) {
BlockedContactsActivity.BlockedAndShareContactsFragment.this.m1173xbab80c4a(contactSelectionListItem, dialogInterface, i);
}
}).show();
}
void m1173xbab80c4a(ContactSelectionListItem contactSelectionListItem, DialogInterface dialogInterface, int i) {
unblockContact(contactSelectionListItem.getContactId());
}
private void unblockContact(int i) {
DcHelper.getContext(getContext()).blockContact(i, 0);
restartLoader();
}
}
}