From ef0bc6714a71555b05ca3dea10c274a40605810c Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Fri, 9 May 2014 21:20:34 +0200 Subject: [PATCH] added dialog for otr file transfer --- res/menu/conversations.xml | 4 +-- res/values/strings.xml | 3 +++ .../ui/ConversationActivity.java | 26 ++++++++++++++++++- 3 files changed, 30 insertions(+), 3 deletions(-) diff --git a/res/menu/conversations.xml b/res/menu/conversations.xml index 58fd3bfa9..68bcc9576 100644 --- a/res/menu/conversations.xml +++ b/res/menu/conversations.xml @@ -4,13 +4,13 @@ android:id="@+id/action_add" android:orderInCategory="10" android:icon="@drawable/ic_action_add" - android:showAsAction="always" + android:showAsAction="ifRoom" android:title="@string/action_add" /> diff --git a/res/values/strings.xml b/res/values/strings.xml index 43ef5069a..5c8449644 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -89,4 +89,7 @@ Encrypted message received. Touch to view and decrypt. Encrypted image received. Touch to view and decrypt. Image received. Touch to view + OTR encryption not available + Unfortunaly OTR encryption is not available for file transfer. You can choose either openPGP or no encryption. + Use openPGP encryption diff --git a/src/eu/siacs/conversations/ui/ConversationActivity.java b/src/eu/siacs/conversations/ui/ConversationActivity.java index d3e3737fa..234730fc2 100644 --- a/src/eu/siacs/conversations/ui/ConversationActivity.java +++ b/src/eu/siacs/conversations/ui/ConversationActivity.java @@ -2,7 +2,6 @@ package eu.siacs.conversations.ui; import java.io.FileNotFoundException; import java.lang.ref.WeakReference; -import java.math.BigInteger; import java.util.ArrayList; import java.util.Hashtable; import java.util.List; @@ -390,6 +389,31 @@ public class ConversationActivity extends XmppActivity { } } else if (getSelectedConversation().getNextEncryption() == Message.ENCRYPTION_NONE) { attachFileDialog(); + } else { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle(getString(R.string.otr_file_transfer)); + builder.setMessage(getString(R.string.otr_file_transfer_msg)); + builder.setNegativeButton(getString(R.string.cancel), null); + if (conversation.getContact().getPgpKeyId()==0) { + builder.setPositiveButton(getString(R.string.send_unencrypted), new OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + conversation.setNextEncryption(Message.ENCRYPTION_NONE); + attachFile(); + } + }); + } else { + builder.setPositiveButton(getString(R.string.use_pgp_encryption), new OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + conversation.setNextEncryption(Message.ENCRYPTION_PGP); + attachFile(); + } + }); + } + builder.create().show(); } }