aboutsummaryrefslogtreecommitdiffstats
path: root/src/eu/siacs/conversations/ui/XmppActivity.java
diff options
context:
space:
mode:
authorDaniel Gultsch <daniel@gultsch.de>2014-05-12 14:59:46 +0200
committerDaniel Gultsch <daniel@gultsch.de>2014-05-12 14:59:46 +0200
commit3455d10a4a87916bfe5da52ca9c401dafa8d5155 (patch)
treee7b6cc4520ad0dd64e348d2e9a27ffe7a81db696 /src/eu/siacs/conversations/ui/XmppActivity.java
parent4d0bf7971ec321a55f180b833b033ceaa6635fdf (diff)
Better error handling if attach file doesnt work (on permission denied)0.2-beta
and unified encrypted and unencrypted file attachment
Diffstat (limited to 'src/eu/siacs/conversations/ui/XmppActivity.java')
-rw-r--r--src/eu/siacs/conversations/ui/XmppActivity.java26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/eu/siacs/conversations/ui/XmppActivity.java b/src/eu/siacs/conversations/ui/XmppActivity.java
index 55dcecc9..dc894ad5 100644
--- a/src/eu/siacs/conversations/ui/XmppActivity.java
+++ b/src/eu/siacs/conversations/ui/XmppActivity.java
@@ -1,9 +1,8 @@
package eu.siacs.conversations.ui;
-import org.openintents.openpgp.OpenPgpError;
+import java.nio.channels.AlreadyConnectedException;
import eu.siacs.conversations.R;
-import eu.siacs.conversations.crypto.OnPgpEngineResult;
import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.entities.Conversation;
import eu.siacs.conversations.entities.Message;
@@ -164,7 +163,7 @@ public abstract class XmppActivity extends Activity {
}
protected void announcePgp(final Account account, final Conversation conversation) {
- xmppConnectionService.getPgpEngine().generateSignature(account, "online", new OnPgpEngineResult() {
+ xmppConnectionService.getPgpEngine().generateSignature(account, "online", new UiCallback() {
@Override
public void userInputRequried(PendingIntent pi) {
@@ -185,10 +184,25 @@ public abstract class XmppActivity extends Activity {
}
@Override
- public void error(OpenPgpError openPgpError) {
- // TODO Auto-generated method stub
-
+ public void error(int error) {
+ displayErrorDialog(error);
+ }
+ });
+ }
+
+ protected void displayErrorDialog(final int errorCode) {
+ runOnUiThread(new Runnable() {
+
+ @Override
+ public void run() {
+ AlertDialog.Builder builder = new AlertDialog.Builder(XmppActivity.this);
+ builder.setIconAttribute(android.R.attr.alertDialogIcon);
+ builder.setTitle(getString(R.string.error));
+ builder.setMessage(errorCode);
+ builder.setNeutralButton(R.string.accept, null);
+ builder.create().show();
}
});
+
}
}