From 5bdfffd151714f039611a442a084c15b39b8ef76 Mon Sep 17 00:00:00 2001 From: Jan-Peter Klein Date: Mon, 23 Jun 2025 09:20:25 +0200 Subject: [PATCH] directoryChooser cancelable --- .../ChooseExistingVaultController.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/cryptomator/ui/addvaultwizard/ChooseExistingVaultController.java b/src/main/java/org/cryptomator/ui/addvaultwizard/ChooseExistingVaultController.java index 05c6801fb..e92439b83 100644 --- a/src/main/java/org/cryptomator/ui/addvaultwizard/ChooseExistingVaultController.java +++ b/src/main/java/org/cryptomator/ui/addvaultwizard/ChooseExistingVaultController.java @@ -135,16 +135,16 @@ public class ChooseExistingVaultController implements FxController { public void restoreVaultConfigWithRecoveryKey() { DirectoryChooser directoryChooser = new DirectoryChooser(); - File selectedDirectory; - do { - selectedDirectory = directoryChooser.showDialog(window); - boolean hasSubfolderD = new File(selectedDirectory, "d").isDirectory(); + File selectedDirectory = directoryChooser.showDialog(window); + if (selectedDirectory == null) { + return; + } - if (!hasSubfolderD) { - dialogs.prepareNoDDirectorySelectedDialog(window).build().showAndWait(); - selectedDirectory = null; - } - } while (selectedDirectory == null); + boolean hasSubfolderD = new File(selectedDirectory, "d").isDirectory(); + if (!hasSubfolderD) { + dialogs.prepareNoDDirectorySelectedDialog(window).build().showAndWait(); + return; + } Optional optionalVault = prepareVault(selectedDirectory,vaultComponentFactory, mountServices);