From 42a0dff86a53d5321830aa270157d580a666e60d Mon Sep 17 00:00:00 2001 From: tobiasKaminsky Date: Thu, 18 Mar 2021 16:51:58 +0100 Subject: [PATCH 1/2] Password dialog: - enforced password: prevent dismiss if empty password - optional password: rename cancel button to skip Signed-off-by: tobiasKaminsky --- .../android/ui/dialog/SendShareDialog.java | 2 +- .../dialog/SharePasswordDialogFragment.java | 39 +++++++++++-------- src/main/res/values/strings.xml | 1 + 3 files changed, 25 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/owncloud/android/ui/dialog/SendShareDialog.java b/src/main/java/com/owncloud/android/ui/dialog/SendShareDialog.java index aac91af25b..f6f62c5b34 100644 --- a/src/main/java/com/owncloud/android/ui/dialog/SendShareDialog.java +++ b/src/main/java/com/owncloud/android/ui/dialog/SendShareDialog.java @@ -175,7 +175,7 @@ public class SendShareDialog extends BottomSheetDialogFragment { private void shareByLink() { if (file.isSharedViaLink()) { ((FileActivity) getActivity()).getFileOperationsHelper().getFileWithLink(file); - } else if (sharingPublicPasswordEnforced) { + } else if (sharingPublicPasswordEnforced || sharingPublicAskForPassword) { // password enforced by server, request to the user before trying to create requestPasswordForShareViaLink(); } else { diff --git a/src/main/java/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java b/src/main/java/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java index 2d46a9db5f..b362f7ac16 100644 --- a/src/main/java/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java +++ b/src/main/java/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java @@ -72,6 +72,23 @@ public class SharePasswordDialogFragment extends DialogFragment implements Dialo alertDialog.getButton(AlertDialog.BUTTON_NEGATIVE)); ThemeButtonUtils.themeBorderlessButton(getResources().getColor(R.color.highlight_textColor_Warning), alertDialog.getButton(AlertDialog.BUTTON_NEUTRAL)); + + alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(v -> { + String password = binding.sharePassword.getText().toString(); + + if (!askForPassword && TextUtils.isEmpty(password)) { + DisplayUtils.showSnackMessage(binding.getRoot(), R.string.share_link_empty_password); + return; + } + + if (share == null) { + setPassword(createShare, file, password); + } else { + setPassword(share, password); + } + + alertDialog.dismiss(); + }); } } @@ -143,19 +160,22 @@ public class SharePasswordDialogFragment extends DialogFragment implements Dialo ThemeColorUtils.primaryColor(getActivity())); binding.sharePassword.requestFocus(); + int negativeButtonCaption; int title; if (askForPassword) { title = R.string.share_link_optional_password_title; + negativeButtonCaption = R.string.common_skip; } else { title = R.string.share_link_password_title; + negativeButtonCaption = R.string.common_cancel; } // Build the dialog AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setView(view) - .setPositiveButton(R.string.common_ok, this) - .setNegativeButton(R.string.common_cancel, this) + .setPositiveButton(R.string.common_ok, null) + .setNegativeButton(negativeButtonCaption, this) .setNeutralButton(R.string.common_delete, this) .setTitle(title); Dialog d = builder.create(); @@ -170,20 +190,7 @@ public class SharePasswordDialogFragment extends DialogFragment implements Dialo @Override public void onClick(DialogInterface dialog, int which) { - if (which == AlertDialog.BUTTON_POSITIVE) { - String password = binding.sharePassword.getText().toString(); - - if (!askForPassword && TextUtils.isEmpty(password)) { - DisplayUtils.showSnackMessage(binding.getRoot(), R.string.share_link_empty_password); - return; - } - - if (share == null) { - setPassword(createShare, file, password); - } else { - setPassword(share, password); - } - } else if (which == AlertDialog.BUTTON_NEUTRAL) { + if (which == AlertDialog.BUTTON_NEUTRAL) { if (share == null) { setPassword(createShare, file, null); } else { diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 83a8ba7d03..cd91cb0e2b 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -126,6 +126,7 @@ Delete Send Share + Skip About Remove account Remove account %s and delete all local files?\n\nDeletion cannot be undone. From 3d8418f078179e7f95689e2af570cb57d92520ca Mon Sep 17 00:00:00 2001 From: tobiasKaminsky Date: Thu, 18 Mar 2021 17:01:01 +0100 Subject: [PATCH 2/2] Password dialog: - enforced password: prevent dismiss if empty password - optional password: rename cancel button to skip Signed-off-by: tobiasKaminsky --- ...gFragmentIT_testEnforcedPasswordDialog.png | Bin 0 -> 6898 bytes ...gFragmentIT_testOptionalPasswordDialog.png | Bin 0 -> 6959 bytes .../android/ui/dialog/DialogFragmentIT.java | 20 ++++++++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 screenshots/gplay/debug/com.owncloud.android.ui.dialog.DialogFragmentIT_testEnforcedPasswordDialog.png create mode 100644 screenshots/gplay/debug/com.owncloud.android.ui.dialog.DialogFragmentIT_testOptionalPasswordDialog.png diff --git a/screenshots/gplay/debug/com.owncloud.android.ui.dialog.DialogFragmentIT_testEnforcedPasswordDialog.png b/screenshots/gplay/debug/com.owncloud.android.ui.dialog.DialogFragmentIT_testEnforcedPasswordDialog.png new file mode 100644 index 0000000000000000000000000000000000000000..a12ea9f52e51c3eeac98bb4af9513f32191281d2 GIT binary patch literal 6898 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 literal 0 HcmV?d00001 diff --git a/src/androidTest/java/com/owncloud/android/ui/dialog/DialogFragmentIT.java b/src/androidTest/java/com/owncloud/android/ui/dialog/DialogFragmentIT.java index f79c71384d..68ed246d1a 100644 --- a/src/androidTest/java/com/owncloud/android/ui/dialog/DialogFragmentIT.java +++ b/src/androidTest/java/com/owncloud/android/ui/dialog/DialogFragmentIT.java @@ -136,6 +136,26 @@ public class DialogFragmentIT extends AbstractIT { showDialog(sut); } + @Test + @ScreenshotTest + public void testEnforcedPasswordDialog() { + if (Looper.myLooper() == null) { + Looper.prepare(); + } + SharePasswordDialogFragment sut = SharePasswordDialogFragment.newInstance(new OCFile("/"), true, false); + showDialog(sut); + } + + @Test + @ScreenshotTest + public void testOptionalPasswordDialog() { + if (Looper.myLooper() == null) { + Looper.prepare(); + } + SharePasswordDialogFragment sut = SharePasswordDialogFragment.newInstance(new OCFile("/"), true, true); + showDialog(sut); + } + @Test @ScreenshotTest public void testAccountChooserDialog() throws AccountUtils.AccountNotFoundException {