From 28dc888159301d3d07a8770091fad81c77f4c9b8 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Sun, 19 Jun 2016 11:08:17 +0200 Subject: [PATCH] display toast on pgp error --- .../eu/siacs/conversations/crypto/PgpEngine.java | 2 +- .../services/XmppConnectionService.java | 14 ++++++++++++-- .../conversations/ui/ConversationActivity.java | 8 +++----- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java b/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java index fe3ac04b8..bddc86cab 100644 --- a/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java +++ b/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java @@ -256,7 +256,7 @@ public class PgpEngine { account); return; case OpenPgpApi.RESULT_CODE_ERROR: - callback.error(R.string.openpgp_error, account); + callback.error(R.string.unable_to_connect_to_keychain, account); } } }); diff --git a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java index 26dcb461c..b85e6f426 100644 --- a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java +++ b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java @@ -452,7 +452,12 @@ public class XmppConnectionService extends Service { getFileBackend().copyFileToPrivateStorage(message, uri); getFileBackend().updateFileParams(message); if (message.getEncryption() == Message.ENCRYPTION_DECRYPTED) { - getPgpEngine().encrypt(message, callback); + final PgpEngine pgpEngine = getPgpEngine(); + if (pgpEngine != null) { + pgpEngine.encrypt(message, callback); + } else if (callback != null){ + callback.error(R.string.unable_to_connect_to_keychain, null); + } } else { callback.success(message); } @@ -492,7 +497,12 @@ public class XmppConnectionService extends Service { try { getFileBackend().copyImageToPrivateStorage(message, uri); if (conversation.getNextEncryption() == Message.ENCRYPTION_PGP) { - getPgpEngine().encrypt(message, callback); + final PgpEngine pgpEngine = getPgpEngine(); + if (pgpEngine != null) { + pgpEngine.encrypt(message, callback); + } else if (callback != null){ + callback.error(R.string.unable_to_connect_to_keychain, null); + } } else { callback.success(message); } diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java index a9f4888f1..e328084f8 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java @@ -541,7 +541,7 @@ public class ConversationActivity extends XmppActivity @Override public void error(int error, Contact contact) { - displayErrorDialog(error); + replaceToast(getString(error)); } }); } else if (mode == Conversation.MODE_MULTI && conversation.getMucOptions().pgpKeysInUse()) { @@ -1465,8 +1465,7 @@ public class ConversationActivity extends XmppActivity @Override public void error(int errorCode, Message message) { - hidePrepareFileToast(prepareFileToast); - displayErrorDialog(errorCode); + replaceToast(getString(errorCode)); } @Override @@ -1498,8 +1497,7 @@ public class ConversationActivity extends XmppActivity @Override public void error(int error, Message message) { - hidePrepareFileToast(prepareFileToast); - displayErrorDialog(error); + replaceToast(getString(error)); } }); }