Fixing issues with default selection in GAL results
Change-Id: I6246b3c409a0ffd24029e3cc276dfc2644bcb931
diff --git a/src/com/android/contacts/list/ContactBrowseListFragment.java b/src/com/android/contacts/list/ContactBrowseListFragment.java
index 03684f2..372e4e1 100644
--- a/src/com/android/contacts/list/ContactBrowseListFragment.java
+++ b/src/com/android/contacts/list/ContactBrowseListFragment.java
@@ -556,6 +556,7 @@
public void reloadData() {
if (mStartedLoading) {
mSelectionVerified = false;
+ mLastSelectedPosition = -1;
super.reloadData();
}
}
diff --git a/src/com/android/contacts/list/ContactListAdapter.java b/src/com/android/contacts/list/ContactListAdapter.java
index ffe9fc6..ed38fa3 100644
--- a/src/com/android/contacts/list/ContactListAdapter.java
+++ b/src/com/android/contacts/list/ContactListAdapter.java
@@ -218,7 +218,8 @@
return true;
}
- return getSelectedContactId() == cursor.getLong(CONTACT_ID_COLUMN_INDEX);
+ return directoryId != Directory.DEFAULT && directoryId != Directory.LOCAL_INVISIBLE
+ && getSelectedContactId() == cursor.getLong(CONTACT_ID_COLUMN_INDEX);
}
@Override
@@ -321,7 +322,9 @@
break;
}
}
- if (mSelectedContactId != 0) {
+ if (mSelectedContactId != 0 &&
+ mSelectedContactDirectoryId != Directory.DEFAULT &&
+ mSelectedContactDirectoryId != Directory.LOCAL_INVISIBLE) {
long contactId = cursor.getLong(CONTACT_ID_COLUMN_INDEX);
if (contactId == mSelectedContactId) {
offset = cursor.getPosition();