From dca773ef10f41c76a5fabbe89f95e60ea06ac158 Mon Sep 17 00:00:00 2001 From: Darcy Wong Date: Mon, 13 May 2019 16:11:00 +0700 Subject: [PATCH] Update ConfirmDialog to optionally dismiss calling activity --- .../java/com/tavultesoft/kmea/ConfirmDialogFragment.java | 9 +++++++-- .../tavultesoft/kmea/KMKeyboardDownloaderActivity.java | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/android/KMEA/app/src/main/java/com/tavultesoft/kmea/ConfirmDialogFragment.java b/android/KMEA/app/src/main/java/com/tavultesoft/kmea/ConfirmDialogFragment.java index af849d0690..044f198a7f 100644 --- a/android/KMEA/app/src/main/java/com/tavultesoft/kmea/ConfirmDialogFragment.java +++ b/android/KMEA/app/src/main/java/com/tavultesoft/kmea/ConfirmDialogFragment.java @@ -15,6 +15,7 @@ public class ConfirmDialogFragment extends DialogFragment { public static final String ARG_TITLE = "ConfirmDialogFragment.title"; public static final String ARG_MESSAGE = "ConfirmDialogFragment.message"; public static final String ARG_KEYBOARD_KEY = "confirmDialogFragment.keyboardKey"; + private boolean dismissOnSelect = false; public static ConfirmDialogFragment newInstance(String title, String message) { ConfirmDialogFragment frag = new ConfirmDialogFragment(); @@ -56,7 +57,7 @@ public class ConfirmDialogFragment extends DialogFragment { KMKeyboardDownloaderActivity.download(getActivity(), true); } else { Toast.makeText(getActivity(), "No internet connection", Toast.LENGTH_SHORT).show(); - } + } } else { // Confirmation to delete item int keyboardIndex = KeyboardPickerActivity.getKeyboardIndex(getActivity(), keyboardKey); @@ -64,11 +65,15 @@ public class ConfirmDialogFragment extends DialogFragment { if (result) { Toast.makeText(getActivity(), "Keyboard deleted", Toast.LENGTH_SHORT).show(); } + dismissOnSelect = true; } if (dialog != null) { dialog.dismiss(); } - getActivity().finish(); + + if (dismissOnSelect && !getActivity().isFinishing()) { + getActivity().finish(); + } } }) .setNegativeButton(getString(R.string.label_cancel), new DialogInterface.OnClickListener() { diff --git a/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMKeyboardDownloaderActivity.java b/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMKeyboardDownloaderActivity.java index d4f86f83c7..4af4555c70 100644 --- a/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMKeyboardDownloaderActivity.java +++ b/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMKeyboardDownloaderActivity.java @@ -323,6 +323,7 @@ public class KMKeyboardDownloaderActivity extends AppCompatActivity { try { JSONObject modelInfo = lmData.getJSONObject(0); if (modelInfo.has("packageFilename")) { + // TODO: Confirm if user wants to overwrite exisiting model version urls.add(modelInfo.getString("packageFilename")); } } catch (JSONException e) {