From 9eca05aeb745de1e5454f5fe435672a575942b99 Mon Sep 17 00:00:00 2001 From: Jan-Peter Klein Date: Mon, 30 Mar 2026 12:15:09 +0200 Subject: [PATCH] address infeos review: drop paths injection, close on locked vault, clear mapping on close --- .../ui/decryptname/DecryptFileNamesViewController.java | 5 +++-- .../cryptomator/ui/decryptname/DecryptNameComponent.java | 7 ++----- .../ui/mainwindow/VaultDetailUnlockedController.java | 2 +- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/cryptomator/ui/decryptname/DecryptFileNamesViewController.java b/src/main/java/org/cryptomator/ui/decryptname/DecryptFileNamesViewController.java index 516551a6f..47f260ae2 100644 --- a/src/main/java/org/cryptomator/ui/decryptname/DecryptFileNamesViewController.java +++ b/src/main/java/org/cryptomator/ui/decryptname/DecryptFileNamesViewController.java @@ -68,12 +68,12 @@ public class DecryptFileNamesViewController implements FxController { public TableView cipherToCleartextTable; @Inject - public DecryptFileNamesViewController(@DecryptNameWindow Stage window, @DecryptNameWindow Vault vault, @DecryptNameWindow List pathsToDecrypt, ResourceBundle resourceBundle) { + public DecryptFileNamesViewController(@DecryptNameWindow Stage window, @DecryptNameWindow Vault vault, ResourceBundle resourceBundle) { this.window = window; this.vault = vault; this.resourceBundle = resourceBundle; this.mapping = new SimpleListProperty<>(FXCollections.observableArrayList()); - this.initialList = pathsToDecrypt; + this.initialList = List.of(); } @FXML @@ -124,6 +124,7 @@ public class DecryptFileNamesViewController implements FxController { } }); decrypt(initialList); + window.setOnHidden(_ -> mapping.clear()); } private void copySingleCelltoClipboard() { diff --git a/src/main/java/org/cryptomator/ui/decryptname/DecryptNameComponent.java b/src/main/java/org/cryptomator/ui/decryptname/DecryptNameComponent.java index e2b21b5b7..4abf7ee3f 100644 --- a/src/main/java/org/cryptomator/ui/decryptname/DecryptNameComponent.java +++ b/src/main/java/org/cryptomator/ui/decryptname/DecryptNameComponent.java @@ -33,10 +33,6 @@ public interface DecryptNameComponent { @DecryptNameWindow Vault vault(); - default void showDecryptFileNameWindow() { - showDecryptFileNameWindow(List.of()); - } - default void showDecryptFileNameWindow(List pathsToDecrypt) { Stage s = window(); s.setScene(decryptNamesView().get()); @@ -47,12 +43,13 @@ public interface DecryptNameComponent { s.requestFocus(); } else { LOG.error("Aborted showing DecryptFileName window: vault state is not {}, but {}.", VaultState.Value.UNLOCKED, vault().getState()); + s.close(); } } @Subcomponent.Factory interface Factory { - DecryptNameComponent create(@BindsInstance @DecryptNameWindow Vault vault, @BindsInstance @Named("windowOwner") Stage owner, @BindsInstance @DecryptNameWindow List pathsToDecrypt); + DecryptNameComponent create(@BindsInstance @DecryptNameWindow Vault vault, @BindsInstance @Named("windowOwner") Stage owner); } } diff --git a/src/main/java/org/cryptomator/ui/mainwindow/VaultDetailUnlockedController.java b/src/main/java/org/cryptomator/ui/mainwindow/VaultDetailUnlockedController.java index bfc4750b5..eadad0149 100644 --- a/src/main/java/org/cryptomator/ui/mainwindow/VaultDetailUnlockedController.java +++ b/src/main/java/org/cryptomator/ui/mainwindow/VaultDetailUnlockedController.java @@ -223,7 +223,7 @@ public class VaultDetailUnlockedController implements FxController { } private DecryptNameComponent buildDecryptNameWindow(Vault vault) { - return decryptNameWindowFactory.create(vault, mainWindow, List.of()); + return decryptNameWindowFactory.create(vault, mainWindow); } @FXML