Merge "Use FAB to create a contact in a specific account"
diff --git a/src/com/android/contacts/activities/PeopleActivity.java b/src/com/android/contacts/activities/PeopleActivity.java
index 9ac7152..5e882f8 100644
--- a/src/com/android/contacts/activities/PeopleActivity.java
+++ b/src/com/android/contacts/activities/PeopleActivity.java
@@ -16,6 +16,7 @@
package com.android.contacts.activities;
+import android.accounts.Account;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
@@ -29,6 +30,7 @@
import android.os.Bundle;
import android.os.Parcelable;
import android.provider.ContactsContract.Contacts;
+import android.provider.ContactsContract.Intents;
import android.provider.ContactsContract.ProviderStatus;
import android.provider.ContactsContract.QuickContact;
import android.support.v13.app.FragmentPagerAdapter;
@@ -1348,6 +1350,15 @@
Intent intent = new Intent(Intent.ACTION_INSERT, Contacts.CONTENT_URI);
Bundle extras = getIntent().getExtras();
if (extras != null) {
+ final ContactListFilter filter = mContactListFilterController.getFilter();
+ // If we are in account view, we pass the account explicitly in order to
+ // create contact in the account. This will prevent the default account dialog
+ // from being displayed.
+ if (!isAllContactsFilter(filter)) {
+ final Account account = new Account(filter.accountName, filter.accountType);
+ extras.putParcelable(Intents.Insert.EXTRA_ACCOUNT, account);
+ extras.putString(Intents.Insert.EXTRA_DATA_SET, filter.dataSet);
+ }
intent.putExtras(extras);
}
try {