Sebastian Stenzel 4 년 전
부모
커밋
29182156df
1개의 변경된 파일7개의 추가작업 그리고 3개의 파일을 삭제
  1. 7 3
      main/ui/src/main/java/org/cryptomator/ui/launcher/UiLauncher.java

+ 7 - 3
main/ui/src/main/java/org/cryptomator/ui/launcher/UiLauncher.java

@@ -62,10 +62,10 @@ public class UiLauncher {
 		Desktop.getDesktop().addAppEventListener((AppReopenedListener) e -> showMainWindowAsync(hasTrayIcon));
 
 		// auto unlock
-		Collection<Vault> vaultsWithAutoUnlockEnabled = vaults.filtered(v -> v.getVaultSettings().unlockAfterStartup().get());
-		if (!vaultsWithAutoUnlockEnabled.isEmpty()) {
+		Collection<Vault> vaultsToAutoUnlock = vaults.filtered(this::shouldAttemptAutoUnlock);
+		if (!vaultsToAutoUnlock.isEmpty()) {
 			fxApplicationStarter.get(hasTrayIcon).thenAccept(app -> {
-				for (Vault vault : vaultsWithAutoUnlockEnabled){
+				for (Vault vault : vaultsToAutoUnlock){
 					app.startUnlockWorkflow(vault);
 				}
 			});
@@ -73,6 +73,10 @@ public class UiLauncher {
 
 		launchEventHandler.startHandlingLaunchEvents(hasTrayIcon);
 	}
+	
+	private boolean shouldAttemptAutoUnlock(Vault vault) {
+		return vault.isLocked() && vault.getVaultSettings().unlockAfterStartup().get();
+	}
 
 	private void showMainWindowAsync(boolean hasTrayIcon) {
 		fxApplicationStarter.get(hasTrayIcon).thenAccept(FxApplication::showMainWindow);