正在查看: CallApp v2.226 应用的 ContactCallLogActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: CallApp v2.226 应用的 ContactCallLogActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.callapp.contacts.activity.calllog.contactcalllog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.util.Pair;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageView;
import com.callapp.contacts.CallAppApplication;
import com.callapp.contacts.R;
import com.callapp.contacts.activity.base.BaseMultiSelectListAdapter;
import com.callapp.contacts.activity.base.TopBarFragmentActivity;
import com.callapp.contacts.loader.device.CallHistoryLoader;
import com.callapp.contacts.manager.ContactLoaderManager;
import com.callapp.contacts.manager.analytics.AnalyticsManager;
import com.callapp.contacts.manager.popup.PopupManager;
import com.callapp.contacts.model.Constants;
import com.callapp.contacts.model.contact.ContactData;
import com.callapp.contacts.model.contact.ContactDataChangeListener;
import com.callapp.contacts.model.contact.ContactField;
import com.callapp.contacts.model.contact.social.ContactFieldEnumSets;
import com.callapp.contacts.popup.contact.AdapterIconAndText;
import com.callapp.contacts.popup.contact.AdapterText;
import com.callapp.contacts.popup.contact.DialogList;
import com.callapp.contacts.util.Activities;
import com.callapp.contacts.util.ThemeUtils;
import com.callapp.contacts.util.ViewUtils;
import com.callapp.framework.phone.Phone;
import com.callapp.framework.util.StringUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
public class ContactCallLogActivity extends TopBarFragmentActivity<ContactCallLogFragment> implements View.OnClickListener {
private ContactData contact;
private long contactId;
private ContactDataChangeListener listener;
private Menu menu;
private Phone phone;
private void createOptionsDialog() {
final DialogList dialogList = new DialogList(null);
ArrayList arrayList = new ArrayList();
arrayList.add(new AdapterIconAndText.ItemIconAndText(R.drawable.ic_bin, Activities.getString(R.string.dialog_clear_call_history), R.string.dialog_clear_call_history));
arrayList.add(new AdapterIconAndText.ItemIconAndText(R.drawable.ic_multi_select, Activities.getString(R.string.overflow_calllog_start_multi_select_mode), R.string.overflow_calllog_start_multi_select_mode));
AdapterIconAndText adapterIconAndText = new AdapterIconAndText((Context) this, R.layout.context_menu_row, (List<AdapterIconAndText.ItemIconAndText>) arrayList);
adapterIconAndText.setListener(new AdapterText.AdapterEvents() {
@Override
public final void onRowClicked(int i) {
dialogList.dismiss();
?? r1 = ContactCallLogActivity.this;
if (i == 2132017954) {
((ContactCallLogFragment) r1.getFragment()).deleteAllPresentedCallLogEntries(r1, new DialogInterface.OnClickListener() {
@Override
public final void onClick(DialogInterface dialogInterface, int i2) {
if (i2 == -1) {
AnonymousClass3 anonymousClass3 = AnonymousClass3.this;
((ContactCallLogFragment) ContactCallLogActivity.this.getFragment()).showMultiSelect(false);
CallHistoryLoader.e(ContactCallLogActivity.this.contact);
}
}
});
} else {
if (i != 2132018947) {
return;
}
((ContactCallLogFragment) r1.getFragment()).showMultiSelect(true);
}
}
});
dialogList.setAdapter(adapterIconAndText);
PopupManager.get().c(this, dialogList, true);
}
private void hideOptionMenuButton(int i) {
MenuItem findItem = this.menu.findItem(i);
if (findItem != null) {
findItem.setVisible(false);
}
}
private void setHistoryMode() {
if (this.menu != null) {
showOptionMenuButton(R.id.overflow_more_button_item);
hideOptionMenuButton(R.id.delete_item_button);
}
}
public void setScreenMode(boolean z) {
if (z) {
setSelectedMode();
return;
}
setHistoryMode();
if (StringUtils.x(this.contact.getFullName())) {
setTitle(this.contact.getFullName());
return;
}
Phone phone = this.phone;
if (phone != null) {
setTitle(phone.getRawNumber());
} else {
setTitle("");
}
}
private void setSelectedMode() {
if (this.menu != null) {
showOptionMenuButton(R.id.delete_item_button);
hideOptionMenuButton(R.id.overflow_more_button_item);
}
}
private boolean setupBundle() {
Bundle extras = getIntent().getExtras();
if (extras == null) {
return true;
}
this.phone = (Phone) extras.getSerializable(Constants.EXTRA_PHONE_NUMBER);
this.contactId = extras.getLong("contactId", 0L);
Phone phone = this.phone;
if (phone == null) {
return true;
}
setTitle(phone.getRawNumber());
return true;
}
private void setupContactLoader() {
this.listener = new ContactDataChangeListener() {
@Override
public void onContactChanged(final ContactData contactData, Set<ContactField> set) {
((ContactCallLogFragment) ContactCallLogActivity.this.getFragment()).onContactChanged(contactData, set);
if (set.contains(ContactField.fullName)) {
CallAppApplication.get().runOnMainThread(new Runnable() {
@Override
public final void run() {
AnonymousClass2 anonymousClass2 = AnonymousClass2.this;
ContactCallLogActivity contactCallLogActivity = ContactCallLogActivity.this;
ContactData contactData2 = contactData;
contactCallLogActivity.setTitle(StringUtils.b(contactData2.getFullName()));
((ContactCallLogFragment) ContactCallLogActivity.this.getFragment()).setContact(contactData2);
}
});
}
}
};
getFragment().setSingleContactPhone(this.phone);
Pair<ContactData, Set<ContactField>> registerForContactDetailsStack = ContactLoaderManager.get().registerForContactDetailsStack(this.phone, this.contactId, this.listener, ContactFieldEnumSets.ALL);
this.contact = (ContactData) registerForContactDetailsStack.first;
if (((Set) registerForContactDetailsStack.second).size() > 0) {
this.listener.onContactChanged(this.contact, (Set) registerForContactDetailsStack.second);
}
}
private void showOptionMenuButton(int i) {
MenuItem findItem = this.menu.findItem(i);
if (findItem != null) {
findItem.setVisible(true);
View actionView = findItem.getActionView();
if (actionView != null) {
actionView.setOnClickListener(this);
}
}
}
public static void startActivity(Context context, long j, Phone phone) {
Intent intent = new Intent(context, (Class<?>) ContactCallLogActivity.class);
intent.putExtra(Constants.EXTRA_PHONE_NUMBER, phone);
intent.putExtra("contactId", j);
Activities.J(context, intent);
}
public void onBackPressed() {
if (getFragment().isInMultiSelectMode()) {
getFragment().showMultiSelect(false);
} else {
super/*androidx.activity.ComponentActivity*/.onBackPressed();
}
}
@Override
public void onClick(View view) {
int id = view.getId();
if (id == 2131362839) {
((ContactCallLogFragment) getFragment()).deleteSelectedCallLogEntries(this, new DialogInterface.OnClickListener() {
@Override
public final void onClick(DialogInterface dialogInterface, int i) {
if (i == -1) {
ContactCallLogActivity contactCallLogActivity = ContactCallLogActivity.this;
((ContactCallLogFragment) contactCallLogActivity.getFragment()).showMultiSelect(false);
CallHistoryLoader.e(contactCallLogActivity.contact);
}
}
});
} else {
if (id != 2131364492) {
return;
}
createOptionsDialog();
}
}
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
if (!setupBundle()) {
finish();
}
setKeyguardDismissAndScreenWindowFlags();
setupContactLoader();
((ContactCallLogFragment) getFragment()).setRetainInstance(true);
((ContactCallLogFragment) getFragment()).setMultiSelectListener(new BaseMultiSelectListAdapter.MultiSelectEvents() {
@Override
public final void onMultiSelectModeToggled(boolean z, int i) {
ContactCallLogActivity contactCallLogActivity = ContactCallLogActivity.this;
contactCallLogActivity.setScreenMode(z);
if (z) {
contactCallLogActivity.setTitle(i + " " + Activities.getString(R.string.counter_selected));
}
}
@Override
public final void onSelectedAmountChanged(int i) {
ContactCallLogActivity.this.setTitle(i + " " + Activities.getString(R.string.counter_selected));
}
});
AnalyticsManager.get().t(Constants.CONTACT_CALL_LOG_SCREEN, null);
}
public boolean onCreateOptionsMenu(Menu menu) {
this.menu = menu;
getMenuInflater().inflate(R.menu.activity_more_option_menu_button, menu);
((ImageView) menu.findItem(R.id.overflow_more_button_item).getActionView().findViewById(R.id.more_option_btn_img)).setImageDrawable(ViewUtils.i(R.drawable.ic_more_options, Integer.valueOf(ThemeUtils.getColor(R.color.icon))));
if (getFragment().isInMultiSelectMode()) {
setSelectedMode();
return true;
}
setHistoryMode();
return true;
}
@Override
public void onDestroy() {
super.onDestroy();
if (this.contact != null) {
ContactLoaderManager.get().unRegisterForContactDetailsStack(this.contact, this.listener);
}
}
@Override
public void onResume() {
super.onResume();
ContactCallLogFragment fragment = getFragment();
if (fragment.isInMultiSelectMode()) {
fragment.onSelectedAmountChanged(fragment.getSelectedCounter());
}
}
@Override
public ContactCallLogFragment getNewFragment() {
return new ContactCallLogFragment();
}
}