mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-09-20 08:45:50 +01:00
Switch MMS groups to use the group database infrastructure
Eliminate the concept of 'Recipients' (plural). There is now just a 'Recipient', which contains an Address that is either an individual or a group ID. MMS groups now exist as part of the group database, just like push groups. // FREEBIE
This commit is contained in:
@@ -24,7 +24,7 @@ import org.thoughtcrime.securesms.database.TextSecureDirectory;
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceContactUpdateJob;
|
||||
import org.thoughtcrime.securesms.notifications.MessageNotifier;
|
||||
import org.thoughtcrime.securesms.push.AccountManagerFactory;
|
||||
import org.thoughtcrime.securesms.recipients.Recipients;
|
||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
import org.thoughtcrime.securesms.sms.IncomingJoinedMessage;
|
||||
import org.thoughtcrime.securesms.util.DirectoryHelper.UserCapabilities.Capability;
|
||||
import org.whispersystems.libsignal.util.guava.Optional;
|
||||
@@ -123,12 +123,12 @@ public class DirectoryHelper {
|
||||
|
||||
public static UserCapabilities refreshDirectoryFor(@NonNull Context context,
|
||||
@Nullable MasterSecret masterSecret,
|
||||
@NonNull Recipients recipients)
|
||||
@NonNull Recipient recipient)
|
||||
throws IOException
|
||||
{
|
||||
TextSecureDirectory directory = TextSecureDirectory.getInstance(context);
|
||||
SignalServiceAccountManager accountManager = AccountManagerFactory.createManager(context);
|
||||
String number = recipients.getPrimaryRecipient().getAddress().serialize();
|
||||
String number = recipient.getAddress().serialize();
|
||||
Optional<ContactTokenDetails> details = accountManager.getContact(number);
|
||||
|
||||
if (details.isPresent()) {
|
||||
@@ -156,10 +156,10 @@ public class DirectoryHelper {
|
||||
}
|
||||
|
||||
public static @NonNull UserCapabilities getUserCapabilities(@NonNull Context context,
|
||||
@Nullable Recipients recipients)
|
||||
@Nullable Recipient recipient)
|
||||
{
|
||||
try {
|
||||
if (recipients == null) {
|
||||
if (recipient == null) {
|
||||
return UserCapabilities.UNSUPPORTED;
|
||||
}
|
||||
|
||||
@@ -167,15 +167,15 @@ public class DirectoryHelper {
|
||||
return UserCapabilities.UNSUPPORTED;
|
||||
}
|
||||
|
||||
if (!recipients.isSingleRecipient()) {
|
||||
if (recipient.isMmsGroupRecipient()) {
|
||||
return UserCapabilities.UNSUPPORTED;
|
||||
}
|
||||
|
||||
if (recipients.isGroupRecipient()) {
|
||||
if (recipient.isPushGroupRecipient()) {
|
||||
return new UserCapabilities(Capability.SUPPORTED, Capability.UNSUPPORTED, Capability.UNSUPPORTED);
|
||||
}
|
||||
|
||||
final Address address = recipients.getPrimaryRecipient().getAddress();
|
||||
final Address address = recipient.getAddress();
|
||||
|
||||
boolean secureText = TextSecureDirectory.getInstance(context).isSecureTextSupported(address);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user