aboutsummaryrefslogtreecommitdiffstats
path: root/app/src
diff options
context:
space:
mode:
authorJeremy Klein <jlklein@google.com>2015-07-23 14:54:30 -0700
committerJeremy Klein <jlklein@google.com>2015-07-29 15:28:04 -0700
commitebeaa5265f91c8ab68058df702465d45c3131d6f (patch)
tree95daead183d2571b041f622f550f501b90703bca /app/src
parenta50c117765c8795346187a950b1407fe827f3f11 (diff)
downloadconnectbot-ebeaa5265f91c8ab68058df702465d45c3131d6f.tar.gz
connectbot-ebeaa5265f91c8ab68058df702465d45c3131d6f.tar.bz2
connectbot-ebeaa5265f91c8ab68058df702465d45c3131d6f.zip
Add a confirm dialog for the disconnect all action.
Diffstat (limited to 'app/src')
-rw-r--r--app/src/main/java/org/connectbot/HostListActivity.java37
-rw-r--r--app/src/main/res/values/strings.xml4
2 files changed, 29 insertions, 12 deletions
diff --git a/app/src/main/java/org/connectbot/HostListActivity.java b/app/src/main/java/org/connectbot/HostListActivity.java
index f0fdf16..a0d7901 100644
--- a/app/src/main/java/org/connectbot/HostListActivity.java
+++ b/app/src/main/java/org/connectbot/HostListActivity.java
@@ -442,27 +442,40 @@ public class HostListActivity extends ListActivity {
* Disconnects all active connections and closes the activity if appropriate.
*/
private void disconnectAll() {
- // TODO(jklein24): Show a confirm dialog before actually disconnecting.
if (bound == null) {
waitingForDisconnectAll = true;
return;
}
- bound.disconnectAll(true, false);
- updateHandler.sendEmptyMessage(-1);
- waitingForDisconnectAll = false;
-
- if (closeOnDisconnectAll) {
- // Clear the intent so that the activity can be relaunched without closing.
- // TODO(jlklein): Find a better way to do this.
- setIntent(new Intent());
- finish();
- }
+ new AlertDialog.Builder(HostListActivity.this)
+ .setMessage(getString(R.string.disconnect_all_message))
+ .setPositiveButton(R.string.disconnect_all_pos, new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int which) {
+ bound.disconnectAll(true, false);
+ updateHandler.sendEmptyMessage(-1);
+ waitingForDisconnectAll = false;
+
+ // Clear the intent so that the activity can be relaunched without closing.
+ // TODO(jlklein): Find a better way to do this.
+ setIntent(new Intent());
+
+ if (closeOnDisconnectAll) {
+ finish();
+ }
+ }
+ })
+ .setNegativeButton(R.string.disconnect_all_neg, new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int which) {
+ waitingForDisconnectAll = false;
+ // Clear the intent so that the activity can be relaunched without closing.
+ // TODO(jlklein): Find a better way to do this.
+ setIntent(new Intent());
+ }
+ }).create().show();
}
/**
- * @param text
* @return
*/
private boolean startConsoleActivity() {
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 7d351a4..939ee9a 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -424,6 +424,10 @@
<string name="delete_pos">"Yes, delete"</string>
<string name="delete_neg">"Cancel"</string>
+ <string name="disconnect_all_message">"Are you sure you want to disconnect from all connected hosts?"</string>
+ <string name="disconnect_all_pos">"Yes, disconnect"</string>
+ <string name="disconnect_all_neg">"Cancel"</string>
+
<!-- Button to agree to license terms. -->
<string name="wizard_agree">"Agree"</string>
<!-- Button to go to the next page in the first time start-up wizard. -->