Reorganize Intent utilities, add send SMS intent.
+ Rename CallIntentUtils.java to IntentUtil.java.
+ Consolidate various intent creation methods to new file, and update
referenes throughout the application.
Bug: 20433758
Change-Id: Iee9e37985217c38c816124d0e74dff40a2871680
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index cccc06e..25828e5 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -29,7 +29,6 @@
import android.net.Uri;
import android.os.Bundle;
import android.os.Trace;
-import android.provider.ContactsContract.Contacts;
import android.provider.ContactsContract.Intents;
import android.speech.RecognizerIntent;
import android.support.v4.view.ViewPager;
@@ -82,7 +81,7 @@
import com.android.dialer.list.SmartDialSearchFragment;
import com.android.dialer.list.SpeedDialFragment;
import com.android.dialer.settings.DialerSettingsActivity;
-import com.android.dialer.util.CallIntentUtil;
+import com.android.dialer.util.IntentUtil;
import com.android.dialer.util.DialerUtils;
import com.android.dialer.widget.ActionBarController;
import com.android.dialer.widget.SearchEditTextLayout;
@@ -587,7 +586,10 @@
switch (view.getId()) {
case R.id.floating_action_button:
if (mListsFragment.getTabPosition() == ListsFragment.TAB_INDEX_ALL_CONTACTS) {
- sendAddNewContactIntent();
+ DialerUtils.startActivityWithErrorToast(
+ this,
+ IntentUtil.getNewContactIntent(),
+ R.string.add_contact_not_available);
} else if (!mIsDialpadShown) {
mInCallDialpadUp = false;
showDialpadFragment(true);
@@ -622,7 +624,10 @@
startActivity(intent);
break;
case R.id.menu_add_contact:
- sendAddNewContactIntent();
+ DialerUtils.startActivityWithErrorToast(
+ this,
+ IntentUtil.getNewContactIntent(),
+ R.string.add_contact_not_available);
break;
case R.id.menu_import_export:
// We hard-code the "contactsAreAvailable" argument because doing it properly would
@@ -1082,38 +1087,6 @@
return getTelecomManager().isInCall();
}
- public static Intent getAddNumberToContactIntent(CharSequence text) {
- return getAddToContactIntent(null /* name */, text /* phoneNumber */,
- -1 /* phoneNumberType */);
- }
-
- public static Intent getAddToContactIntent(CharSequence name, CharSequence phoneNumber,
- int phoneNumberType) {
- Intent intent = new Intent(Intent.ACTION_INSERT_OR_EDIT);
- intent.putExtra(Intents.Insert.PHONE, phoneNumber);
- // Only include the name and phone type extras if they are specified (the method
- // getAddNumberToContactIntent does not use them).
- if (name != null) {
- intent.putExtra(Intents.Insert.NAME, name);
- }
- if (phoneNumberType != -1) {
- intent.putExtra(Intents.Insert.PHONE_TYPE, phoneNumberType);
- }
- intent.setType(Contacts.CONTENT_ITEM_TYPE);
- return intent;
- }
-
- private void sendAddNewContactIntent() {
- try {
- startActivity(new Intent(Intent.ACTION_INSERT, Contacts.CONTENT_URI));
- } catch (ActivityNotFoundException e) {
- Toast toast = Toast.makeText(this,
- R.string.add_contact_not_available,
- Toast.LENGTH_SHORT);
- toast.show();
- }
- }
-
private boolean canIntentBeHandled(Intent intent) {
final PackageManager packageManager = getPackageManager();
final List<ResolveInfo> resolveInfo = packageManager.queryIntentActivities(intent,
@@ -1171,8 +1144,8 @@
@Override
public void onCallNumberDirectly(String phoneNumber, boolean isVideoCall) {
Intent intent = isVideoCall ?
- CallIntentUtil.getVideoCallIntent(phoneNumber, getCallOrigin()) :
- CallIntentUtil.getCallIntent(phoneNumber, getCallOrigin());
+ IntentUtil.getVideoCallIntent(phoneNumber, getCallOrigin()) :
+ IntentUtil.getCallIntent(phoneNumber, getCallOrigin());
DialerUtils.startActivityWithErrorToast(this, intent);
mClearSearchOnPause = true;
}