aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Straub <andy@strb.org>2015-07-19 23:35:03 +0200
committerAndreas Straub <andy@strb.org>2015-07-19 23:35:03 +0200
commit480b1cde810e0ed2afc6ea424fb36fd973ae24b9 (patch)
tree3811628d5bfac6ac2c0b0c96fb3ebfebbed01531
parent14010bf5a6198e4e53ba3f86328d061cf20b8da1 (diff)
Add clear devices to overflow menu in EditAccount
-rw-r--r--src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java14
-rw-r--r--src/main/res/menu/editaccount.xml4
-rw-r--r--src/main/res/values/strings.xml2
3 files changed, 17 insertions, 3 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java b/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
index 77ca2a67..1f5b76a3 100644
--- a/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
@@ -363,6 +363,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
final MenuItem showBlocklist = menu.findItem(R.id.action_show_block_list);
final MenuItem showMoreInfo = menu.findItem(R.id.action_server_info_show_more);
final MenuItem changePassword = menu.findItem(R.id.action_change_password_on_server);
+ final MenuItem clearDevices = menu.findItem(R.id.action_clear_devices);
if (mAccount != null && mAccount.isOnlineAndConnected()) {
if (!mAccount.getXmppConnection().getFeatures().blocking()) {
showBlocklist.setVisible(false);
@@ -370,6 +371,10 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
if (!mAccount.getXmppConnection().getFeatures().register()) {
changePassword.setVisible(false);
}
+ Set<Integer> otherDevices = mAccount.getAxolotlService().getOwnDeviceIds();
+ if (otherDevices == null || otherDevices.isEmpty()) {
+ clearDevices.setVisible(false);
+ }
} else {
showQrCode.setVisible(false);
showBlocklist.setVisible(false);
@@ -440,6 +445,9 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
changePasswordIntent.putExtra("account", mAccount.getJid().toString());
startActivity(changePasswordIntent);
break;
+ case R.id.action_clear_devices:
+ showWipePepDialog();
+ break;
}
return super.onOptionsItemSelected(item);
}
@@ -621,11 +629,11 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
public void showWipePepDialog() {
Builder builder = new Builder(this);
- builder.setTitle("Wipe PEP");
+ builder.setTitle(getString(R.string.clear_other_devices));
builder.setIconAttribute(android.R.attr.alertDialogIcon);
- builder.setMessage("Are you sure you want to wipe all other devices from the PEP device ID list?");
+ builder.setMessage(getString(R.string.clear_other_devices_desc));
builder.setNegativeButton(getString(R.string.cancel), null);
- builder.setPositiveButton("Yes",
+ builder.setPositiveButton(getString(R.string.accept),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
diff --git a/src/main/res/menu/editaccount.xml b/src/main/res/menu/editaccount.xml
index 4ce9e1f3..2076805e 100644
--- a/src/main/res/menu/editaccount.xml
+++ b/src/main/res/menu/editaccount.xml
@@ -20,4 +20,8 @@
<item android:id="@+id/action_change_password_on_server"
android:title="@string/change_password"
android:showAsAction="never" />
+
+ <item android:id="@+id/action_clear_devices"
+ android:title="@string/clear_other_devices"
+ android:showAsAction="never"/>
</menu> \ No newline at end of file
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index 8537c118..0f992884 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -391,6 +391,8 @@
<string name="copy_axolotl_clipboard_description">Copy Axolotl fingerprint to clipboard</string>
<string name="regenerate_axolotl_key">Copy Axolotl fingerprint to clipboard</string>
<string name="wipe_axolotl_pep">Wipe other devices from PEP</string>
+ <string name="clear_other_devices">Clear devices</string>
+ <string name="clear_other_devices_desc">Are you sure you want to clear all other devices from the axolotl announcement? The next time your devices connect, they will reannounce themselves, but they might not receive messages sent in the meantime.</string>
<string name="fetching_history_from_server">Fetching history from server</string>
<string name="no_more_history_on_server">No more history on server</string>
<string name="updating">Updating…</string>