diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationListActivity.java b/src/main/java/org/thoughtcrime/securesms/ConversationListActivity.java
index 02c49f7ed..b02dbe696 100644
--- a/src/main/java/org/thoughtcrime/securesms/ConversationListActivity.java
+++ b/src/main/java/org/thoughtcrime/securesms/ConversationListActivity.java
@@ -86,7 +86,6 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
public static final String CLEAR_NOTIFICATIONS = "clear_notifications";
public static final String ACCOUNT_ID_EXTRA = "account_id";
public static final String FROM_WELCOME = "from_welcome";
- public static final String WARN_CANNOT_ENCRYPT = "warn_cannot_encrypt";
private ConversationListFragment conversationListFragment;
public TextView title;
@@ -275,11 +274,6 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
AccountManager.getInstance().switchAccountAndStartActivity(this, accountId);
}
- String warnAddr = getIntent().getStringExtra(WARN_CANNOT_ENCRYPT);
- if (!TextUtils.isEmpty(warnAddr)) {
- DcHelper.showEncryptionRequiredDialog(this, warnAddr);
- }
-
refreshAvatar();
refreshUnreadIndicator();
refreshTitle();
diff --git a/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java b/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java
index 8a624ae3d..f5a2967d4 100644
--- a/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java
+++ b/src/main/java/org/thoughtcrime/securesms/NewConversationActivity.java
@@ -106,8 +106,6 @@ public class NewConversationActivity extends ContactSelectionActivity {
int contactId = dcContext.lookupContactIdByAddr(addr);
if (contactId!=0 && dcContext.getChatIdByContactId(contactId)!=0) {
openConversation(dcContext.getChatIdByContactId(contactId));
- } else if (contactId == 0 && dcContext.isChatmail()) {
- DcHelper.showEncryptionRequiredDialog(this, addr);
} else {
String nameNAddr = contactId == 0 ? addr : dcContext.getContact(contactId).getNameNAddr();
new AlertDialog.Builder(this)
diff --git a/src/main/java/org/thoughtcrime/securesms/ShareActivity.java b/src/main/java/org/thoughtcrime/securesms/ShareActivity.java
index 2c706b522..f798f78ea 100644
--- a/src/main/java/org/thoughtcrime/securesms/ShareActivity.java
+++ b/src/main/java/org/thoughtcrime/securesms/ShareActivity.java
@@ -251,26 +251,18 @@ public class ShareActivity extends PassphraseRequiredActionBarActivity implement
}
*/
- String addr = null;
if(chatId == -1 && extraEmail != null && extraEmail.length > 0) {
- addr = extraEmail[0];
+ final String addr = extraEmail[0];
int contactId = dcContext.lookupContactIdByAddr(addr);
- if(contactId != 0 || !dcContext.isChatmail()) {
- if(contactId == 0) {
- contactId = dcContext.createContact(null, addr);
- }
-
- chatId = dcContext.createChatByContactId(contactId);
- addr = null;
+ if(contactId == 0) {
+ contactId = dcContext.createContact(null, addr);
}
+
+ chatId = dcContext.createChatByContactId(contactId);
}
Intent composeIntent;
- if (addr != null) {
- composeIntent = new Intent(this, ConversationListActivity.class);
- composeIntent.putExtra(ConversationListActivity.WARN_CANNOT_ENCRYPT, addr);
- startActivity(composeIntent);
- } else if (chatId != -1) {
+ if (chatId != -1) {
composeIntent = getBaseShareIntent(ConversationActivity.class);
composeIntent.putExtra(ConversationActivity.CHAT_ID_EXTRA, chatId);
RelayUtil.setSharedUris(composeIntent, resolvedExtras);
diff --git a/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java b/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java
index ab5900de6..cf18d2341 100644
--- a/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java
+++ b/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java
@@ -484,16 +484,6 @@ public class DcHelper {
.show();
}
- public static void showEncryptionRequiredDialog(Context context, String addr) {
- new AlertDialog.Builder(context)
- .setMessage(context.getString(R.string.encryption_required_for_new_contact, addr))
- .setNeutralButton(R.string.learn_more, (d, w) -> openHelp(context, "#howtoe2ee"))
- .setNegativeButton(R.string.qrscan_title, (d, w) -> context.startActivity(new Intent(context, QrActivity.class)))
- .setPositiveButton(R.string.ok, null)
- .setCancelable(true)
- .show();
- }
-
public static void openHelp(Context context, String section) {
Intent intent = new Intent(context, LocalHelpActivity.class);
if (section != null) { intent.putExtra(LocalHelpActivity.SECTION_EXTRA, section); }
diff --git a/src/main/java/org/thoughtcrime/securesms/util/LongClickCopySpan.java b/src/main/java/org/thoughtcrime/securesms/util/LongClickCopySpan.java
index cda3b41c2..3f8282b0d 100644
--- a/src/main/java/org/thoughtcrime/securesms/util/LongClickCopySpan.java
+++ b/src/main/java/org/thoughtcrime/securesms/util/LongClickCopySpan.java
@@ -58,18 +58,14 @@ public class LongClickCopySpan extends ClickableSpan {
String addr = prepareUrl(url);
Activity activity = (Activity) widget.getContext();
DcContext dcContext = DcHelper.getContext(activity);
- int contactId = dcContext.lookupContactIdByAddr(addr);
- DcContact contact = (contactId != 0)? dcContext.getContact(contactId) : null;
- if (contact != null && !contact.isBlocked() && dcContext.getChatIdByContactId(contactId) != 0) {
+ DcContact contact = dcContext.getContact(dcContext.createContact(null, addr));
+ if (contact.getId() != 0 && !contact.isBlocked() && dcContext.getChatIdByContactId(contact.getId()) != 0) {
openChat(activity, contact);
- } else if (contact == null && dcContext.isChatmail()) {
- DcHelper.showEncryptionRequiredDialog(activity, addr);
} else {
- String nameNAddr = contact != null ? contact.getNameNAddr() : addr;
new AlertDialog.Builder(activity)
- .setMessage(activity.getString(R.string.ask_start_chat_with, nameNAddr))
+ .setMessage(activity.getString(R.string.ask_start_chat_with, contact.getNameNAddr()))
.setPositiveButton(android.R.string.ok, (dialog, which) -> {
- openChat(activity, contact == null? dcContext.getContact(dcContext.createContact(null, addr)) : contact);
+ openChat(activity, contact);
})
.setNegativeButton(R.string.cancel, null)
.show();
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index 039bf980d..956557482 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -955,6 +955,7 @@
End-to-end encryption cannot be guaranteed anymore, likely because %1$s reinstalled Delta Chat or sent a message from another device.\n\nYou may meet them in person and scan their QR code again to reestablish guaranteed end-to-end encryption.
⚠️ %1$s requires end-to-end encryption which is not setup for this chat yet. Tap to learn more.
To establish end-to-end-encryption, you may meet contacts in person and scan their QR Code to introduce them.
+
End-to-end encryption is required but it is not setup for %1$s yet.\n\nYou may share your invite link with them or meet in person and scan their QR Code.
Learn More