From c204ed2601cd4f85ab560533f02609155cf675e3 Mon Sep 17 00:00:00 2001 From: jellemdekker Date: Fri, 24 Apr 2020 14:30:19 +0200 Subject: [PATCH 1/3] Allow password field to be cleared with Ctrl/Command + backspace, implements #885. --- .../org/cryptomator/ui/controls/SecurePasswordField.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java b/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java index eb3019102..23bcf22bb 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java +++ b/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java @@ -22,6 +22,8 @@ import javafx.scene.control.TextField; import javafx.scene.input.DragEvent; import javafx.scene.input.Dragboard; import javafx.scene.input.KeyCode; +import javafx.scene.input.KeyCodeCombination; +import javafx.scene.input.KeyCombination; import javafx.scene.input.KeyEvent; import javafx.scene.input.TransferMode; @@ -43,6 +45,7 @@ public class SecurePasswordField extends TextField { private static final int GROW_BUFFER_SIZE = 50; private static final String DEFAULT_PLACEHOLDER = "●"; private static final String STYLE_CLASS = "secure-password-field"; + private static final KeyCodeCombination SHORTCUT_BACKSPACE = new KeyCodeCombination(KeyCode.BACK_SPACE, KeyCombination.SHORTCUT_DOWN); private final String placeholderChar; private final BooleanProperty capsLocked = new SimpleBooleanProperty(); @@ -100,6 +103,9 @@ public class SecurePasswordField extends TextField { if (e.getCode() == KeyCode.CAPS) { updateCapsLocked(); } + if (SHORTCUT_BACKSPACE.match(e)) { + swipe(); + } } private void revealPasswordChanged(@SuppressWarnings("unused") Observable observable) { From 96990788d949c2cc197b2d1e29b86988d1f10dfc Mon Sep 17 00:00:00 2001 From: jellemdekker Date: Fri, 24 Apr 2020 15:22:33 +0200 Subject: [PATCH 2/3] Indent using tabs instead of spaces. --- .../org/cryptomator/ui/controls/SecurePasswordField.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java b/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java index 23bcf22bb..f34c71eb1 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java +++ b/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java @@ -45,7 +45,7 @@ public class SecurePasswordField extends TextField { private static final int GROW_BUFFER_SIZE = 50; private static final String DEFAULT_PLACEHOLDER = "●"; private static final String STYLE_CLASS = "secure-password-field"; - private static final KeyCodeCombination SHORTCUT_BACKSPACE = new KeyCodeCombination(KeyCode.BACK_SPACE, KeyCombination.SHORTCUT_DOWN); + private static final KeyCodeCombination SHORTCUT_BACKSPACE = new KeyCodeCombination(KeyCode.BACK_SPACE, KeyCombination.SHORTCUT_DOWN); private final String placeholderChar; private final BooleanProperty capsLocked = new SimpleBooleanProperty(); @@ -103,9 +103,9 @@ public class SecurePasswordField extends TextField { if (e.getCode() == KeyCode.CAPS) { updateCapsLocked(); } - if (SHORTCUT_BACKSPACE.match(e)) { - swipe(); - } + if (SHORTCUT_BACKSPACE.match(e)) { + swipe(); + } } private void revealPasswordChanged(@SuppressWarnings("unused") Observable observable) { From f6c834fee2b8db790f1aa931ff80c3db2ccd0a3f Mon Sep 17 00:00:00 2001 From: jellemdekker Date: Fri, 24 Apr 2020 15:23:08 +0200 Subject: [PATCH 3/3] Merged if-statements. --- .../java/org/cryptomator/ui/controls/SecurePasswordField.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java b/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java index f34c71eb1..f5aa6dbd5 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java +++ b/main/ui/src/main/java/org/cryptomator/ui/controls/SecurePasswordField.java @@ -102,8 +102,7 @@ public class SecurePasswordField extends TextField { private void handleKeyEvent(KeyEvent e) { if (e.getCode() == KeyCode.CAPS) { updateCapsLocked(); - } - if (SHORTCUT_BACKSPACE.match(e)) { + } else if (SHORTCUT_BACKSPACE.match(e)) { swipe(); } }