diff --git a/main/ui/src/main/java/org/cryptomator/ui/unlock/UnlockController.java b/main/ui/src/main/java/org/cryptomator/ui/unlock/UnlockController.java index 7e887ced4..95a201a83 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/unlock/UnlockController.java +++ b/main/ui/src/main/java/org/cryptomator/ui/unlock/UnlockController.java @@ -74,6 +74,7 @@ public class UnlockController implements FxController { this.unlockButtonContentDisplay = Bindings.createObjectBinding(this::getUnlockButtonContentDisplay, passwordEntryLock.awaitingInteraction()); this.userInteractionDisabled = passwordEntryLock.awaitingInteraction().not(); this.unlockButtonDisabled = new SimpleBooleanProperty(); + this.window.setOnCloseRequest(windowEvent -> close()); } @FXML @@ -123,13 +124,19 @@ public class UnlockController implements FxController { passwordEntryLock.awaitingInteraction().addListener(observable -> stopUnlockAnimation()); } + @FXML public void cancel() { LOG.debug("Unlock canceled by user."); + close(); + } + + private void close() { window.close(); passwordEntryLock.interacted(UnlockModule.PasswordEntry.CANCELED); } + @FXML public void unlock() { LOG.trace("UnlockController.unlock()");