Reload QuickContact after unlinking to remove stale badges
Bug: 25230841
Change-Id: I697ab4822168f3320b9b2dc37014df15e5e2a3be
diff --git a/src/com/android/contacts/activities/ContactEditorBaseActivity.java b/src/com/android/contacts/activities/ContactEditorBaseActivity.java
index 383ae64..d19f467 100644
--- a/src/com/android/contacts/activities/ContactEditorBaseActivity.java
+++ b/src/com/android/contacts/activities/ContactEditorBaseActivity.java
@@ -67,6 +67,8 @@
public static final String ACTION_JOIN_COMPLETED = "joinCompleted";
public static final String ACTION_SAVE_COMPLETED = "saveCompleted";
+ public static final int RESULT_SPLIT_COMPLETED = 2;
+
protected int mActionBarTitleResId;
/**
@@ -305,6 +307,7 @@
@Override
public void onContactSplit(Uri newLookupUri) {
+ setResult(RESULT_SPLIT_COMPLETED, /* data */ null);
finish();
}
diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java
index af6dfdb..c49e50b 100644
--- a/src/com/android/contacts/quickcontact/QuickContactActivity.java
+++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java
@@ -99,6 +99,7 @@
import com.android.contacts.ContactsActivity;
import com.android.contacts.NfcHandler;
import com.android.contacts.R;
+import com.android.contacts.activities.ContactEditorBaseActivity;
import com.android.contacts.common.CallUtil;
import com.android.contacts.common.ClipboardUtils;
import com.android.contacts.common.Collapser;
@@ -1106,6 +1107,11 @@
resultCode == ContactDeletionInteraction.RESULT_CODE_DELETED) {
// The contact that we were showing has been deleted.
finish();
+ } else if (requestCode == REQUEST_CODE_CONTACT_EDITOR_ACTIVITY &&
+ resultCode == ContactEditorBaseActivity.RESULT_SPLIT_COMPLETED) {
+ // The contact that we were showing has been unlinked, and we reload this activity.
+ finish();
+ startActivity(getIntent());
} else if (requestCode == REQUEST_CODE_CONTACT_SELECTION_ACTIVITY &&
resultCode != RESULT_CANCELED) {
processIntent(data);