Merge "Revert "Show check mark when none is primary in photo picker"" into ub-contactsdialer-b-dev
diff --git a/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java b/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
index 664ed72..617ef0d 100644
--- a/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
+++ b/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
@@ -36,6 +36,7 @@
import com.android.contacts.common.model.account.AccountWithDataSet;
import com.android.contacts.common.util.AccountsListAdapter;
import com.android.contacts.common.util.AccountsListAdapter.AccountListFilter;
+import com.android.contacts.util.AccountPromptUtils;
import java.util.List;
@@ -69,8 +70,8 @@
private final OnClickListener mAddAccountClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
- startActivityForResult(mEditorUtils.createAddWritableAccountIntent(),
- SUBACTIVITY_ADD_NEW_ACCOUNT);
+ final Intent intent = AccountPromptUtils.getIntentForAddingAccount();
+ startActivityForResult(intent, SUBACTIVITY_ADD_NEW_ACCOUNT);
}
};
diff --git a/src/com/android/contacts/activities/PeopleActivity.java b/src/com/android/contacts/activities/PeopleActivity.java
index 9c2c0a8..d887ef9 100644
--- a/src/com/android/contacts/activities/PeopleActivity.java
+++ b/src/com/android/contacts/activities/PeopleActivity.java
@@ -61,40 +61,40 @@
import com.android.contacts.common.dialog.ClearFrequentsDialog;
import com.android.contacts.common.util.ImplicitIntentsUtil;
import com.android.contacts.common.widget.FloatingActionButtonController;
-import com.android.contacts.editor.EditorIntents;
-import com.android.contacts.interactions.ContactDeletionInteraction;
import com.android.contacts.common.interactions.ImportExportDialogFragment;
import com.android.contacts.common.list.ContactEntryListFragment;
import com.android.contacts.common.list.ContactListFilter;
import com.android.contacts.common.list.ContactListFilterController;
import com.android.contacts.common.list.ContactTileAdapter.DisplayType;
-import com.android.contacts.interactions.ContactMultiDeletionInteraction;
-import com.android.contacts.interactions.ContactMultiDeletionInteraction.MultiContactDeleteListener;
-import com.android.contacts.interactions.JoinContactsDialogFragment;
-import com.android.contacts.interactions.JoinContactsDialogFragment.JoinContactsListener;
-import com.android.contacts.list.MultiSelectContactsListFragment;
-import com.android.contacts.list.MultiSelectContactsListFragment.OnCheckBoxListActionListener;
-import com.android.contacts.list.ContactTileListFragment;
-import com.android.contacts.list.ContactsIntentResolver;
-import com.android.contacts.list.ContactsRequest;
-import com.android.contacts.list.ContactsUnavailableFragment;
import com.android.contacts.common.list.DirectoryListLoader;
-import com.android.contacts.common.preference.DisplayOptionsPreferenceFragment;
-import com.android.contacts.list.OnContactBrowserActionListener;
-import com.android.contacts.list.OnContactsUnavailableActionListener;
-import com.android.contacts.list.ProviderStatusWatcher;
-import com.android.contacts.list.ProviderStatusWatcher.ProviderStatusListener;
import com.android.contacts.common.list.ViewPagerTabs;
import com.android.contacts.common.logging.Logger;
import com.android.contacts.common.logging.ScreenEvent;
import com.android.contacts.common.preference.ContactsPreferenceActivity;
+import com.android.contacts.common.preference.DisplayOptionsPreferenceFragment;
import com.android.contacts.common.util.AccountFilterUtil;
+import com.android.contacts.common.util.Constants;
import com.android.contacts.common.util.ViewUtil;
+import com.android.contacts.editor.EditorIntents;
+import com.android.contacts.interactions.ContactDeletionInteraction;
+import com.android.contacts.interactions.ContactMultiDeletionInteraction;
+import com.android.contacts.interactions.ContactMultiDeletionInteraction.MultiContactDeleteListener;
+import com.android.contacts.interactions.JoinContactsDialogFragment;
+import com.android.contacts.interactions.JoinContactsDialogFragment.JoinContactsListener;
+import com.android.contacts.list.ContactTileListFragment;
+import com.android.contacts.list.ContactsIntentResolver;
+import com.android.contacts.list.ContactsRequest;
+import com.android.contacts.list.ContactsUnavailableFragment;
+import com.android.contacts.list.MultiSelectContactsListFragment;
+import com.android.contacts.list.MultiSelectContactsListFragment.OnCheckBoxListActionListener;
+import com.android.contacts.list.OnContactBrowserActionListener;
+import com.android.contacts.list.OnContactsUnavailableActionListener;
+import com.android.contacts.list.ProviderStatusWatcher;
+import com.android.contacts.list.ProviderStatusWatcher.ProviderStatusListener;
import com.android.contacts.quickcontact.QuickContactActivity;
import com.android.contacts.util.AccountPromptUtils;
-import com.android.contacts.common.util.Constants;
-import com.android.contacts.util.PhoneCapabilityTester;
import com.android.contacts.util.DialogManager;
+import com.android.contacts.util.PhoneCapabilityTester;
import com.android.contactsbind.HelpUtils;
import java.util.List;
@@ -1024,10 +1024,7 @@
@Override
public void onAddAccountAction() {
- Intent intent = new Intent(Settings.ACTION_ADD_ACCOUNT);
- intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
- intent.putExtra(Settings.EXTRA_AUTHORITIES,
- new String[]{ContactsContract.AUTHORITY});
+ final Intent intent = AccountPromptUtils.getIntentForAddingAccount();
ImplicitIntentsUtil.startActivityOutsideApp(PeopleActivity.this, intent);
}
diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java
index 734eb73..577eebe 100644
--- a/src/com/android/contacts/quickcontact/QuickContactActivity.java
+++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java
@@ -494,6 +494,9 @@
@Override
public void onAggregationSuggestionChange() {
+ if (mAggregationSuggestionEngine == null) {
+ return;
+ }
mSuggestions = mAggregationSuggestionEngine.getSuggestions();
mCollapsedSuggestionCardView.setVisibility(View.GONE);
mExpandSuggestionCardView.setVisibility(View.GONE);
@@ -2307,6 +2310,8 @@
if (imageViewDrawable == mPhotoView.getDrawable()) {
mHasComputedThemeColor = true;
setThemeColor(palette);
+ // update color and photo in suggestion card
+ onAggregationSuggestionChange();
}
}
}.execute();
diff --git a/src/com/android/contacts/util/AccountPromptUtils.java b/src/com/android/contacts/util/AccountPromptUtils.java
index 172d274..4fc95a5 100644
--- a/src/com/android/contacts/util/AccountPromptUtils.java
+++ b/src/com/android/contacts/util/AccountPromptUtils.java
@@ -24,9 +24,12 @@
import android.accounts.OperationCanceledException;
import android.app.Activity;
import android.content.Context;
+import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
+import android.provider.ContactsContract;
+import android.provider.Settings;
import android.util.Log;
import com.android.contacts.R;
@@ -100,6 +103,18 @@
activity, getAccountManagerCallback(activity), null);
}
+ /**
+ * When adding account
+ * open the same UI screen for user to choose account
+ */
+ public static Intent getIntentForAddingAccount() {
+ final Intent intent = new Intent(Settings.ACTION_ADD_ACCOUNT);
+ intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
+ intent.putExtra(Settings.EXTRA_AUTHORITIES,
+ new String[]{ContactsContract.AUTHORITY});
+ return intent;
+ }
+
private static AccountManagerCallback<Bundle> getAccountManagerCallback(
final Activity activity) {
return new AccountManagerCallback<Bundle>() {