diff --git a/src/main/java/org/cryptomator/ui/addvaultwizard/CreateNewVaultNameController.java b/src/main/java/org/cryptomator/ui/addvaultwizard/CreateNewVaultNameController.java index 3068874ec..2ca73e172 100644 --- a/src/main/java/org/cryptomator/ui/addvaultwizard/CreateNewVaultNameController.java +++ b/src/main/java/org/cryptomator/ui/addvaultwizard/CreateNewVaultNameController.java @@ -40,19 +40,15 @@ public class CreateNewVaultNameController implements FxController { this.chooseLocationScene = chooseLocationScene; this.vaultPath = vaultPath; this.vaultName = vaultName; - this.validVaultName = Bindings.createBooleanBinding(this::isValidVaultNameInternal, vaultName); + this.validVaultName = Bindings.createBooleanBinding(this::isValidVaultName, vaultName); } @FXML public void initialize() { - vaultName.bind(textField.textProperty()); + vaultName.bindBidirectional(textField.textProperty()); vaultName.addListener(this::vaultNameChanged); } - private boolean isValidVaultNameInternal() { - return vaultName.get() != null && VALID_NAME_PATTERN.matcher(vaultName.get().trim()).matches(); - } - private void vaultNameChanged(@SuppressWarnings("unused") Observable observable) { if (isValidVaultName()) { if (vaultPath.get() != null) { @@ -70,6 +66,7 @@ public class CreateNewVaultNameController implements FxController { @FXML public void next() { window.setScene(chooseLocationScene.get()); + vaultName.set(vaultName.get().trim()); } /* Getter/Setter */ @@ -79,7 +76,7 @@ public class CreateNewVaultNameController implements FxController { } public boolean isValidVaultName() { - return validVaultName.get(); + return vaultName.get() != null && VALID_NAME_PATTERN.matcher(vaultName.get().trim()).matches(); } } diff --git a/src/main/resources/fxml/addvault_new_name.fxml b/src/main/resources/fxml/addvault_new_name.fxml index e7494e116..185f80ed4 100644 --- a/src/main/resources/fxml/addvault_new_name.fxml +++ b/src/main/resources/fxml/addvault_new_name.fxml @@ -71,7 +71,7 @@