diff --git a/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareActivity.java b/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareActivity.java index bb714c62d7..a88f74a7e2 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareActivity.java @@ -208,6 +208,10 @@ public class ShareActivity extends PassphraseRequiredActivity Toast.makeText(this, R.string.ShareActivity_you_do_not_have_permission_to_send_to_this_group, Toast.LENGTH_SHORT).show(); callback.accept(false); break; + case FALSE_AND_SHOW_SMS_MULTISELECT_TOAST: + Toast.makeText(this, R.string.ShareActivity__sharing_to_multiple_chats_is, Toast.LENGTH_LONG).show(); + callback.accept(false); + break; } })); } diff --git a/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareViewModel.java b/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareViewModel.java index de5ad1e38f..d0b02e34fb 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareViewModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareViewModel.java @@ -76,6 +76,9 @@ public class ShareViewModel extends ViewModel { if (record.isPresent() && record.get().isAnnouncementGroup() && !record.get().isAdmin(Recipient.self())) { return ContactSelectResult.FALSE_AND_SHOW_PERMISSION_TOAST; } + } else if (SmsShareRestriction.DISALLOW_SMS_CONTACTS.equals(smsShareRestriction.getValue()) && + (!recipient.isRegistered() || recipient.isForceSmsSelection())) { + return ContactSelectResult.FALSE_AND_SHOW_SMS_MULTISELECT_TOAST; } } @@ -165,7 +168,7 @@ public class ShareViewModel extends ViewModel { } enum ContactSelectResult { - TRUE, FALSE, FALSE_AND_SHOW_PERMISSION_TOAST + TRUE, FALSE, FALSE_AND_SHOW_PERMISSION_TOAST, FALSE_AND_SHOW_SMS_MULTISELECT_TOAST } enum SmsShareRestriction {