Merge "Properly manage lifecycle of suggestion cursor" into jb-dev
diff --git a/src/com/android/contacts/editor/GroupMembershipView.java b/src/com/android/contacts/editor/GroupMembershipView.java
index 742c716..a92c49c 100644
--- a/src/com/android/contacts/editor/GroupMembershipView.java
+++ b/src/com/android/contacts/editor/GroupMembershipView.java
@@ -253,6 +253,7 @@
         mPopup.setAnchorView(mGroupList);
         mPopup.setAdapter(mAdapter);
         mPopup.setModal(true);
+        mPopup.setInputMethodMode(ListPopupWindow.INPUT_METHOD_NOT_NEEDED);
         mPopup.show();
 
         ListView listView = mPopup.getListView();
diff --git a/src/com/android/contacts/list/ContactListItemView.java b/src/com/android/contacts/list/ContactListItemView.java
index f3de16c..8d30c3c 100644
--- a/src/com/android/contacts/list/ContactListItemView.java
+++ b/src/com/android/contacts/list/ContactListItemView.java
@@ -415,7 +415,9 @@
 
         // Status view height is the biggest of the text view and the presence icon
         if (isVisible(mPresenceIcon)) {
-            mPresenceIcon.measure(mPresenceIconSize, mPresenceIconSize);
+            mPresenceIcon.measure(
+                    MeasureSpec.makeMeasureSpec(mPresenceIconSize, MeasureSpec.EXACTLY),
+                    MeasureSpec.makeMeasureSpec(mPresenceIconSize, MeasureSpec.EXACTLY));
             mStatusTextViewHeight = mPresenceIcon.getMeasuredHeight();
         }
 
diff --git a/src/com/android/contacts/quickcontact/ResolveCache.java b/src/com/android/contacts/quickcontact/ResolveCache.java
index aae2ee7..026e0f4 100644
--- a/src/com/android/contacts/quickcontact/ResolveCache.java
+++ b/src/com/android/contacts/quickcontact/ResolveCache.java
@@ -46,13 +46,18 @@
      * multiple {@link ResolveInfo} are found to match. This only happens when
      * the user has not selected a default app yet, and they will still be
      * presented with the system disambiguation dialog.
+     * If several of this list match (e.g. Android Browser vs. Chrome), we will pick either one
      */
     private static final HashSet<String> sPreferResolve = Sets.newHashSet(
             "com.android.email",
-            "com.android.calendar",
-            "com.android.contacts",
-            "com.android.mms",
+            "com.google.android.email",
+
             "com.android.phone",
+
+            "com.google.android.apps.maps",
+
+            "com.android.chrome",
+            "com.google.android.browser",
             "com.android.browser");
 
     private final Context mContext;