Loading src/com/android/contacts/common/list/ContactListFilter.java +6 −3 Original line number Diff line number Diff line Loading @@ -335,9 +335,12 @@ public final class ContactListFilter implements Comparable<ContactListFilter>, P throw new IllegalStateException( "filterType must be FILTER_TYPE_ACCOUNT or FILER_TYPE_GROUP_MEMBERS"); } // null account names are not valid, see ContactsProvider2#appendAccountFromParameter if (accountName != null) { uriBuilder.appendQueryParameter(RawContacts.ACCOUNT_NAME, accountName); uriBuilder.appendQueryParameter(RawContacts.ACCOUNT_TYPE, accountType); if (!TextUtils.isEmpty(dataSet)) { } if (dataSet != null) { uriBuilder.appendQueryParameter(RawContacts.DATA_SET, dataSet); } return uriBuilder; Loading src/com/android/contacts/group/GroupMembersFragment.java +3 −3 Original line number Diff line number Diff line Loading @@ -318,7 +318,7 @@ public class GroupMembersFragment extends MultiSelectContactsListFragment<GroupM final long[] contactIds = getAdapter().getSelectedContactIdsArray(); new UpdateGroupMembersAsyncTask(UpdateGroupMembersAsyncTask.TYPE_REMOVE, getContext(), contactIds, mGroupMetaData.groupId, mGroupMetaData.accountName, mGroupMetaData.accountType).execute(); mGroupMetaData.accountType, mGroupMetaData.dataSet).execute(); mActionBarAdapter.setSelectionMode(false); } Loading @@ -340,7 +340,7 @@ public class GroupMembersFragment extends MultiSelectContactsListFragment<GroupM new UpdateGroupMembersAsyncTask( UpdateGroupMembersAsyncTask.TYPE_ADD, getContext(), contactIds, mGroupMetaData.groupId, mGroupMetaData.accountName, mGroupMetaData.accountType).execute(); mGroupMetaData.accountType, mGroupMetaData.dataSet).execute(); } } Loading Loading @@ -636,7 +636,7 @@ public class GroupMembersFragment extends MultiSelectContactsListFragment<GroupM contactIds[0] = contactId; new UpdateGroupMembersAsyncTask(UpdateGroupMembersAsyncTask.TYPE_REMOVE, getContext(), contactIds, mGroupMetaData.groupId, mGroupMetaData.accountName, mGroupMetaData.accountType).execute(); mGroupMetaData.accountType, mGroupMetaData.dataSet).execute(); } } Loading src/com/android/contacts/group/UpdateGroupMembersAsyncTask.java +14 −5 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.database.Cursor; import android.net.Uri; import android.os.AsyncTask; import android.provider.ContactsContract; import android.provider.ContactsContract.RawContacts; import android.widget.Toast; import com.android.contacts.ContactSaveService; Loading @@ -42,15 +43,17 @@ public class UpdateGroupMembersAsyncTask extends AsyncTask<Void, Void, Intent> { private final long mGroupId; private final String mAccountName; private final String mAccountType; private final String mDataSet; public UpdateGroupMembersAsyncTask(int type, Context context, long[] contactIds, long groupId, String accountName, String accountType) { long groupId, String accountName, String accountType, String dataSet) { mContext = context; mType = type; mContactIds = contactIds; mGroupId = groupId; mAccountName = accountName; mAccountType = accountType; mDataSet = dataSet; } @Override Loading Loading @@ -81,10 +84,16 @@ public class UpdateGroupMembersAsyncTask extends AsyncTask<Void, Void, Intent> { // TODO(wjang): prune raw contacts that are already in the group; ContactSaveService will // log a warning if the raw contact is already a member and keep going but it is not ideal. private long[] getRawContactIds() { final Uri rawContactUri = ContactsContract.RawContacts.CONTENT_URI.buildUpon() .appendQueryParameter(ContactsContract.RawContacts.ACCOUNT_NAME, mAccountName) .appendQueryParameter(ContactsContract.RawContacts.ACCOUNT_TYPE, mAccountType) .build(); final Uri.Builder builder = RawContacts.CONTENT_URI.buildUpon(); // null account names are not valid, see ContactsProvider2#appendAccountFromParameter if (mAccountName != null) { builder.appendQueryParameter(RawContacts.ACCOUNT_NAME, mAccountName); builder.appendQueryParameter(RawContacts.ACCOUNT_TYPE, mAccountType); } if (mDataSet != null) { builder.appendQueryParameter(RawContacts.DATA_SET, mDataSet); } final Uri rawContactUri = builder.build(); final String[] projection = new String[]{ContactsContract.RawContacts._ID}; final StringBuilder selection = new StringBuilder(); final String[] selectionArgs = new String[mContactIds.length]; Loading Loading
src/com/android/contacts/common/list/ContactListFilter.java +6 −3 Original line number Diff line number Diff line Loading @@ -335,9 +335,12 @@ public final class ContactListFilter implements Comparable<ContactListFilter>, P throw new IllegalStateException( "filterType must be FILTER_TYPE_ACCOUNT or FILER_TYPE_GROUP_MEMBERS"); } // null account names are not valid, see ContactsProvider2#appendAccountFromParameter if (accountName != null) { uriBuilder.appendQueryParameter(RawContacts.ACCOUNT_NAME, accountName); uriBuilder.appendQueryParameter(RawContacts.ACCOUNT_TYPE, accountType); if (!TextUtils.isEmpty(dataSet)) { } if (dataSet != null) { uriBuilder.appendQueryParameter(RawContacts.DATA_SET, dataSet); } return uriBuilder; Loading
src/com/android/contacts/group/GroupMembersFragment.java +3 −3 Original line number Diff line number Diff line Loading @@ -318,7 +318,7 @@ public class GroupMembersFragment extends MultiSelectContactsListFragment<GroupM final long[] contactIds = getAdapter().getSelectedContactIdsArray(); new UpdateGroupMembersAsyncTask(UpdateGroupMembersAsyncTask.TYPE_REMOVE, getContext(), contactIds, mGroupMetaData.groupId, mGroupMetaData.accountName, mGroupMetaData.accountType).execute(); mGroupMetaData.accountType, mGroupMetaData.dataSet).execute(); mActionBarAdapter.setSelectionMode(false); } Loading @@ -340,7 +340,7 @@ public class GroupMembersFragment extends MultiSelectContactsListFragment<GroupM new UpdateGroupMembersAsyncTask( UpdateGroupMembersAsyncTask.TYPE_ADD, getContext(), contactIds, mGroupMetaData.groupId, mGroupMetaData.accountName, mGroupMetaData.accountType).execute(); mGroupMetaData.accountType, mGroupMetaData.dataSet).execute(); } } Loading Loading @@ -636,7 +636,7 @@ public class GroupMembersFragment extends MultiSelectContactsListFragment<GroupM contactIds[0] = contactId; new UpdateGroupMembersAsyncTask(UpdateGroupMembersAsyncTask.TYPE_REMOVE, getContext(), contactIds, mGroupMetaData.groupId, mGroupMetaData.accountName, mGroupMetaData.accountType).execute(); mGroupMetaData.accountType, mGroupMetaData.dataSet).execute(); } } Loading
src/com/android/contacts/group/UpdateGroupMembersAsyncTask.java +14 −5 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.database.Cursor; import android.net.Uri; import android.os.AsyncTask; import android.provider.ContactsContract; import android.provider.ContactsContract.RawContacts; import android.widget.Toast; import com.android.contacts.ContactSaveService; Loading @@ -42,15 +43,17 @@ public class UpdateGroupMembersAsyncTask extends AsyncTask<Void, Void, Intent> { private final long mGroupId; private final String mAccountName; private final String mAccountType; private final String mDataSet; public UpdateGroupMembersAsyncTask(int type, Context context, long[] contactIds, long groupId, String accountName, String accountType) { long groupId, String accountName, String accountType, String dataSet) { mContext = context; mType = type; mContactIds = contactIds; mGroupId = groupId; mAccountName = accountName; mAccountType = accountType; mDataSet = dataSet; } @Override Loading Loading @@ -81,10 +84,16 @@ public class UpdateGroupMembersAsyncTask extends AsyncTask<Void, Void, Intent> { // TODO(wjang): prune raw contacts that are already in the group; ContactSaveService will // log a warning if the raw contact is already a member and keep going but it is not ideal. private long[] getRawContactIds() { final Uri rawContactUri = ContactsContract.RawContacts.CONTENT_URI.buildUpon() .appendQueryParameter(ContactsContract.RawContacts.ACCOUNT_NAME, mAccountName) .appendQueryParameter(ContactsContract.RawContacts.ACCOUNT_TYPE, mAccountType) .build(); final Uri.Builder builder = RawContacts.CONTENT_URI.buildUpon(); // null account names are not valid, see ContactsProvider2#appendAccountFromParameter if (mAccountName != null) { builder.appendQueryParameter(RawContacts.ACCOUNT_NAME, mAccountName); builder.appendQueryParameter(RawContacts.ACCOUNT_TYPE, mAccountType); } if (mDataSet != null) { builder.appendQueryParameter(RawContacts.DATA_SET, mDataSet); } final Uri rawContactUri = builder.build(); final String[] projection = new String[]{ContactsContract.RawContacts._ID}; final StringBuilder selection = new StringBuilder(); final String[] selectionArgs = new String[mContactIds.length]; Loading