From 3bea5b25cd5496cd3f14a66c208b34d0c8e48b03 Mon Sep 17 00:00:00 2001 From: Andreas Straub Date: Tue, 12 Jan 2016 09:32:22 +0100 Subject: [PATCH] Add additional warnings to OMEMO purge key function People continue to press the "don't press this" button. Maybe adding some warnings indicating that this button will not fix their problems will help... --- .../siacs/conversations/ui/XmppActivity.java | 28 +++++++++++++++++-- src/main/res/values/strings.xml | 2 ++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java index 36e82b2a7b7569c2c0acd72dcc9375c8613537dc..a9d2bc856edfaf635a565b19a73703cc906917ac 100644 --- a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java @@ -786,8 +786,32 @@ public abstract class XmppActivity extends Activity { new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - account.getAxolotlService().purgeKey(fingerprint); - refreshUi(); + Builder builder = new Builder(XmppActivity.this); + builder.setTitle(getString(R.string.purge_key)); + builder.setIconAttribute(android.R.attr.alertDialogIcon); + builder.setMessage(getString(R.string.purge_key_warning)); + builder.setNegativeButton(getString(R.string.cancel), null); + builder.setPositiveButton(getString(R.string.accept), + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + Builder builder = new Builder(XmppActivity.this); + builder.setTitle(getString(R.string.purge_key)); + builder.setIconAttribute(android.R.attr.alertDialogIcon); + builder.setMessage(getString(R.string.purge_key_warning2)); + builder.setNegativeButton(getString(R.string.cancel), null); + builder.setPositiveButton(getString(R.string.accept), + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + account.getAxolotlService().purgeKey(fingerprint); + refreshUi(); + } + }); + builder.create().show(); + } + }); + builder.create().show(); } }); builder.create().show(); diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index cdb5ae22bd5937aec9e8007c477d14319209313f..4eb518e50b6bd9dda3645c9d6c96e4936889edab 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -408,6 +408,8 @@ Purge key Are you sure you want to purge this key? It will irreversibly be considered compromised, and you can never build a session with it again. + Did you press purge because you are trying to fix some problem? If so, please cancel. This functionality will NOT fix your problem. + Are you sure? You CAN NOT undo this. You have been warned. There are no usable keys available for this contact. If you have purged any of their keys, they need to generate new ones. Error Fetching history from server