diff --git a/main/ui/src/main/java/org/cryptomator/ui/changepassword/ChangePasswordController.java b/main/ui/src/main/java/org/cryptomator/ui/changepassword/ChangePasswordController.java index 7a641b1e7..2d9998fb1 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/changepassword/ChangePasswordController.java +++ b/main/ui/src/main/java/org/cryptomator/ui/changepassword/ChangePasswordController.java @@ -53,9 +53,10 @@ public class ChangePasswordController implements FxController { @FXML public void initialize() { - BooleanBinding hasNotConfirmedCheckbox = finalConfirmationCheckbox.selectedProperty().not(); - BooleanBinding isInvalidNewPassword = Bindings.createBooleanBinding(() -> newPassword.get() == null || newPassword.get().length() == 0, newPassword); - finishButton.disableProperty().bind(hasNotConfirmedCheckbox.or(isInvalidNewPassword)); + BooleanBinding checkboxNotConfirmed = finalConfirmationCheckbox.selectedProperty().not(); + BooleanBinding oldPasswordFieldEmpty = oldPasswordField.textProperty().isEmpty(); + BooleanBinding newPasswordInvalid = Bindings.createBooleanBinding(() -> newPassword.get() == null || newPassword.get().length() == 0, newPassword); + finishButton.disableProperty().bind(checkboxNotConfirmed.or(oldPasswordFieldEmpty).or(newPasswordInvalid)); } @FXML @@ -96,5 +97,5 @@ public class ChangePasswordController implements FxController { public Vault getVault() { return vault; } - + }