Revert "Use recipientId's in ContactSelectionListAdapter."

This reverts commit 89e075c56e.
master
Greyson Parrelli 2019-10-02 19:26:24 -04:00
parent b38a3e6259
commit 066df77abf
9 changed files with 32 additions and 35 deletions

View File

@ -25,7 +25,6 @@ import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.components.ContactFilterToolbar;
import org.thoughtcrime.securesms.contacts.ContactsCursorLoader.DisplayMode;
import org.thoughtcrime.securesms.recipients.RecipientId;
import org.thoughtcrime.securesms.util.DirectoryHelper;
import org.thoughtcrime.securesms.util.DynamicLanguage;
import org.thoughtcrime.securesms.util.DynamicNoActionBarTheme;
@ -114,10 +113,10 @@ public abstract class ContactSelectionActivity extends PassphraseRequiredActionB
}
@Override
public void onContactSelected(RecipientId recipientId) {}
public void onContactSelected(String number) {}
@Override
public void onContactDeselected(RecipientId recipientId) {}
public void onContactDeselected(String number) {}
private static class RefreshDirectoryTask extends AsyncTask<Context, Void, Void> {

View File

@ -50,7 +50,6 @@ import org.thoughtcrime.securesms.contacts.ContactsCursorLoader.DisplayMode;
import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.permissions.Permissions;
import org.thoughtcrime.securesms.recipients.RecipientId;
import org.thoughtcrime.securesms.util.DirectoryHelper;
import org.thoughtcrime.securesms.util.StickyHeaderDecoration;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
@ -81,7 +80,7 @@ public final class ContactSelectionListFragment extends Fragment
public static final String RECENTS = "recents";
private TextView emptyText;
private Set<RecipientId> selectedContacts;
private Set<String> selectedContacts;
private OnContactSelectedListener onContactSelectedListener;
private SwipeRefreshLayout swipeRefresh;
private View showContactsLayout;
@ -162,8 +161,8 @@ public final class ContactSelectionListFragment extends Fragment
Permissions.onRequestPermissionsResult(this, requestCode, permissions, grantResults);
}
public @NonNull List<RecipientId> getSelectedContacts() {
List<RecipientId> selected = new LinkedList<>();
public @NonNull List<String> getSelectedContacts() {
List<String> selected = new LinkedList<>();
if (selectedContacts != null) {
selected.addAll(selectedContacts);
}
@ -324,14 +323,14 @@ public final class ContactSelectionListFragment extends Fragment
private class ListClickListener implements ContactSelectionListAdapter.ItemClickListener {
@Override
public void onItemClick(ContactSelectionListItem contact) {
if (!isMulti() || !selectedContacts.contains(contact.getRecipientId())) {
selectedContacts.add(contact.getRecipientId());
if (!isMulti() || !selectedContacts.contains(contact.getNumber())) {
selectedContacts.add(contact.getNumber());
contact.setChecked(true);
if (onContactSelectedListener != null) onContactSelectedListener.onContactSelected(contact.getRecipientId());
if (onContactSelectedListener != null) onContactSelectedListener.onContactSelected(contact.getNumber());
} else {
selectedContacts.remove(contact.getRecipientId());
selectedContacts.remove(contact.getNumber());
contact.setChecked(false);
if (onContactSelectedListener != null) onContactSelectedListener.onContactDeselected(contact.getRecipientId());
if (onContactSelectedListener != null) onContactSelectedListener.onContactDeselected(contact.getNumber());
}
}
}
@ -345,8 +344,8 @@ public final class ContactSelectionListFragment extends Fragment
}
public interface OnContactSelectedListener {
void onContactSelected(RecipientId recipientId);
void onContactDeselected(RecipientId recipientId);
void onContactSelected(String number);
void onContactDeselected(String number);
}
public interface InviteCallback {

View File

@ -284,10 +284,10 @@ public class GroupCreateActivity extends PassphraseRequiredActionBarActivity
switch (reqCode) {
case PICK_CONTACT:
List<RecipientId> selected = data.getParcelableArrayListExtra("contacts");
List<String> selected = data.getStringArrayListExtra("contacts");
for (RecipientId id : selected) {
Recipient recipient = Recipient.resolved(id);
for (String contact : selected) {
Recipient recipient = Recipient.external(this, contact);
addSelectedContacts(recipient);
}
break;

View File

@ -29,7 +29,6 @@ import org.thoughtcrime.securesms.components.ContactFilterToolbar.OnFilterChange
import org.thoughtcrime.securesms.contacts.ContactsCursorLoader.DisplayMode;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.recipients.RecipientId;
import org.thoughtcrime.securesms.sms.MessageSender;
import org.thoughtcrime.securesms.sms.OutgoingTextMessage;
import org.thoughtcrime.securesms.util.ViewUtil;
@ -98,12 +97,12 @@ public class InviteActivity extends PassphraseRequiredActionBarActivity implemen
}
@Override
public void onContactSelected(RecipientId recipientId) {
public void onContactSelected(String number) {
updateSmsButtonText();
}
@Override
public void onContactDeselected(RecipientId recipientId) {
public void onContactDeselected(String number) {
updateSmsButtonText();
}

View File

@ -27,7 +27,6 @@ import org.thoughtcrime.securesms.conversation.ConversationActivity;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.ThreadDatabase;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.recipients.RecipientId;
/**
* Activity container for starting a new conversation.
@ -50,8 +49,8 @@ public class NewConversationActivity extends ContactSelectionActivity
}
@Override
public void onContactSelected(RecipientId recipientId) {
Recipient recipient = Recipient.resolved(recipientId);
public void onContactSelected(String number) {
Recipient recipient = Recipient.external(this, number);
Intent intent = new Intent(this, ConversationActivity.class);
intent.putExtra(ConversationActivity.RECIPIENT_EXTRA, recipient.getId());

View File

@ -19,8 +19,6 @@ package org.thoughtcrime.securesms;
import android.content.Intent;
import android.os.Bundle;
import org.thoughtcrime.securesms.recipients.RecipientId;
import java.util.ArrayList;
import java.util.List;
@ -43,9 +41,11 @@ public class PushContactSelectionActivity extends ContactSelectionActivity {
getToolbar().setNavigationIcon(R.drawable.ic_check_white_24dp);
getToolbar().setNavigationOnClickListener(v -> {
Intent resultIntent = getIntent();
List<RecipientId> selectedContacts = contactsFragment.getSelectedContacts();
List<String> selectedContacts = contactsFragment.getSelectedContacts();
resultIntent.putParcelableArrayListExtra("contacts", new ArrayList<>(selectedContacts));
if (selectedContacts != null) {
resultIntent.putStringArrayListExtra("contacts", new ArrayList<>(selectedContacts));
}
setResult(RESULT_OK, resultIntent);
finish();

View File

@ -272,9 +272,9 @@ public class ShareActivity extends PassphraseRequiredActionBarActivity
}
@Override
public void onContactSelected(RecipientId recipientId) {
public void onContactSelected(String number) {
SimpleTask.run(this.getLifecycle(), () -> {
Recipient recipient = Recipient.resolved(recipientId);
Recipient recipient = Recipient.external(this, number);
long existingThread = DatabaseFactory.getThreadDatabase(this).getThreadIdIfExistsFor(recipient);
return new Pair<>(existingThread, recipient);
}, result -> {
@ -284,7 +284,8 @@ public class ShareActivity extends PassphraseRequiredActionBarActivity
}
@Override
public void onContactDeselected(RecipientId recipientId) {
public void onContactDeselected(String number) {
}
@Override

View File

@ -70,7 +70,7 @@ public class ContactSelectionListAdapter extends CursorRecyclerViewAdapter<ViewH
private final ItemClickListener clickListener;
private final GlideRequests glideRequests;
private final Set<RecipientId> selectedContacts = new HashSet<>();
private final Set<String> selectedContacts = new HashSet<>();
public abstract static class ViewHolder extends RecyclerView.ViewHolder {
@ -189,7 +189,7 @@ public class ContactSelectionListAdapter extends CursorRecyclerViewAdapter<ViewH
viewHolder.unbind(glideRequests);
viewHolder.bind(glideRequests, id, contactType, name, number, labelText, color, multiSelect);
viewHolder.setChecked(selectedContacts.contains(id));
viewHolder.setChecked(selectedContacts.contains(number));
}
@Override
@ -222,7 +222,7 @@ public class ContactSelectionListAdapter extends CursorRecyclerViewAdapter<ViewH
return getHeaderString(position);
}
public Set<RecipientId> getSelectedContacts() {
public Set<String> getSelectedContacts() {
return selectedContacts;
}

View File

@ -129,8 +129,8 @@ public class ContactSelectionListItem extends LinearLayout implements RecipientF
}
}
public @Nullable RecipientId getRecipientId() {
return recipient != null ? recipient.getId() : null;
public String getNumber() {
return number;
}
@Override