From ec7d6eafec51deacc90fe0320b28f6bbad802bc0 Mon Sep 17 00:00:00 2001 From: Armin Schrenk Date: Fri, 24 Mar 2023 18:11:39 +0100 Subject: [PATCH] add new password screen for convert hub vault flow --- .../org/cryptomator/ui/common/FxmlFile.java | 3 +- .../convertvault/ConvertVaultComponent.java | 2 +- .../ui/convertvault/ConvertVaultModule.java | 30 +++++++++++--- .../HubToLocalConvertController.java | 41 +++++++++++++++++++ .../HubToLocalStartController.java | 12 ++++-- .../fxml/convertvault_hubtolocal_convert.fxml | 32 +++++++++++++++ .../fxml/convertvault_hubtolocal_start.fxml | 2 +- 7 files changed, 111 insertions(+), 11 deletions(-) create mode 100644 src/main/java/org/cryptomator/ui/convertvault/HubToLocalConvertController.java create mode 100644 src/main/resources/fxml/convertvault_hubtolocal_convert.fxml diff --git a/src/main/java/org/cryptomator/ui/common/FxmlFile.java b/src/main/java/org/cryptomator/ui/common/FxmlFile.java index a1c41b3a1..5a2cd3d6f 100644 --- a/src/main/java/org/cryptomator/ui/common/FxmlFile.java +++ b/src/main/java/org/cryptomator/ui/common/FxmlFile.java @@ -9,7 +9,8 @@ public enum FxmlFile { ADDVAULT_SUCCESS("/fxml/addvault_success.fxml"), // ADDVAULT_WELCOME("/fxml/addvault_welcome.fxml"), // CHANGEPASSWORD("/fxml/changepassword.fxml"), // - CONVERTVAULT_HUBTOLOCAL("/fxml/convertvault_hubtolocal_start.fxml"), // + CONVERTVAULT_HUBTOLOCAL_START("/fxml/convertvault_hubtolocal_start.fxml"), // + CONVERTVAULT_HUBTOLOCAL_CONVERT("/fxml/convertvault_hubtolocal_convert.fxml"), // ERROR("/fxml/error.fxml"), // FORGET_PASSWORD("/fxml/forget_password.fxml"), // HEALTH_START("/fxml/health_start.fxml"), // diff --git a/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultComponent.java b/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultComponent.java index 384bdeb5f..f51e80723 100644 --- a/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultComponent.java +++ b/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultComponent.java @@ -23,7 +23,7 @@ public interface ConvertVaultComponent { @ConvertVaultWindow Stage window(); - @FxmlScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL) + @FxmlScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL_START) Lazy hubToLocalScene(); default void showHubToLocalWindow() { diff --git a/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultModule.java b/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultModule.java index 6c0978630..e277e5404 100644 --- a/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultModule.java +++ b/src/main/java/org/cryptomator/ui/convertvault/ConvertVaultModule.java @@ -6,6 +6,8 @@ import dagger.Provides; import dagger.multibindings.IntoMap; import org.cryptomator.common.vaults.Vault; import org.cryptomator.cryptofs.VaultConfig; +import org.cryptomator.ui.changepassword.NewPasswordController; +import org.cryptomator.ui.changepassword.PasswordStrengthUtil; import org.cryptomator.ui.common.DefaultSceneFactory; import org.cryptomator.ui.common.FxController; import org.cryptomator.ui.common.FxControllerKey; @@ -13,8 +15,6 @@ import org.cryptomator.ui.common.FxmlFile; import org.cryptomator.ui.common.FxmlLoaderFactory; import org.cryptomator.ui.common.FxmlScene; import org.cryptomator.ui.common.StageFactory; -import org.cryptomator.ui.quit.QuitController; -import org.cryptomator.ui.quit.QuitForcedController; import org.cryptomator.ui.recoverykey.RecoveryKeyFactory; import org.cryptomator.ui.recoverykey.RecoveryKeyValidateController; @@ -70,10 +70,17 @@ abstract class ConvertVaultModule { } @Provides - @FxmlScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL) + @FxmlScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL_START) @ConvertVaultScoped - static Scene provideHubToLocalScene(@ConvertVaultWindow FxmlLoaderFactory fxmlLoaders) { - return fxmlLoaders.createScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL); + static Scene provideHubToLocalStartScene(@ConvertVaultWindow FxmlLoaderFactory fxmlLoaders) { + return fxmlLoaders.createScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL_START); + } + + @Provides + @FxmlScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL_CONVERT) + @ConvertVaultScoped + static Scene provideHubToLocalConvertScene(@ConvertVaultWindow FxmlLoaderFactory fxmlLoaders) { + return fxmlLoaders.createScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL_CONVERT); } // ------------------ @@ -83,6 +90,19 @@ abstract class ConvertVaultModule { @FxControllerKey(HubToLocalStartController.class) abstract FxController bindHubToLocalStartController(HubToLocalStartController controller); + @Binds + @IntoMap + @FxControllerKey(HubToLocalConvertController.class) + abstract FxController bindHubToLocalConvertController(HubToLocalConvertController controller); + + + @Provides + @IntoMap + @FxControllerKey(NewPasswordController.class) + static FxController provideNewPasswordController(ResourceBundle resourceBundle, PasswordStrengthUtil strengthRater) { + return new NewPasswordController(resourceBundle, strengthRater); + } + @Provides @IntoMap @FxControllerKey(RecoveryKeyValidateController.class) diff --git a/src/main/java/org/cryptomator/ui/convertvault/HubToLocalConvertController.java b/src/main/java/org/cryptomator/ui/convertvault/HubToLocalConvertController.java new file mode 100644 index 000000000..a1639afc8 --- /dev/null +++ b/src/main/java/org/cryptomator/ui/convertvault/HubToLocalConvertController.java @@ -0,0 +1,41 @@ +package org.cryptomator.ui.convertvault; + +import org.cryptomator.ui.changepassword.NewPasswordController; +import org.cryptomator.ui.common.FxController; + +import javax.inject.Inject; +import javafx.fxml.FXML; +import javafx.stage.Stage; + +public class HubToLocalConvertController implements FxController { + + private final Stage window; + + @FXML + NewPasswordController newPasswordController; + + @Inject + public HubToLocalConvertController(@ConvertVaultWindow Stage window) { + this.window = window; + } + + @FXML + public void initialize() { + } + + @FXML + public void close() { + window.close(); + } + + @FXML + public void convert() { + //window.setScene(resetPasswordScene.get()); + } + + /* Getter/Setter */ + + public NewPasswordController getNewPasswordController() { + return newPasswordController; + } +} diff --git a/src/main/java/org/cryptomator/ui/convertvault/HubToLocalStartController.java b/src/main/java/org/cryptomator/ui/convertvault/HubToLocalStartController.java index 00e3b21cf..d8b3cbb14 100644 --- a/src/main/java/org/cryptomator/ui/convertvault/HubToLocalStartController.java +++ b/src/main/java/org/cryptomator/ui/convertvault/HubToLocalStartController.java @@ -1,22 +1,28 @@ package org.cryptomator.ui.convertvault; +import dagger.Lazy; import org.cryptomator.ui.common.FxController; +import org.cryptomator.ui.common.FxmlFile; +import org.cryptomator.ui.common.FxmlScene; import org.cryptomator.ui.recoverykey.RecoveryKeyValidateController; import javax.inject.Inject; import javafx.fxml.FXML; +import javafx.scene.Scene; import javafx.stage.Stage; public class HubToLocalStartController implements FxController { private final Stage window; + private final Lazy convertScene; @FXML RecoveryKeyValidateController recoveryKeyValidateController; @Inject - public HubToLocalStartController(@ConvertVaultWindow Stage window) { + public HubToLocalStartController(@ConvertVaultWindow Stage window, @FxmlScene(FxmlFile.CONVERTVAULT_HUBTOLOCAL_CONVERT) Lazy convertScene) { this.window = window; + this.convertScene = convertScene; } @FXML @@ -29,8 +35,8 @@ public class HubToLocalStartController implements FxController { } @FXML - public void convert() { - //window.setScene(resetPasswordScene.get()); + public void next() { + window.setScene(convertScene.get()); } /* Getter/Setter */ diff --git a/src/main/resources/fxml/convertvault_hubtolocal_convert.fxml b/src/main/resources/fxml/convertvault_hubtolocal_convert.fxml new file mode 100644 index 000000000..3a370555c --- /dev/null +++ b/src/main/resources/fxml/convertvault_hubtolocal_convert.fxml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + +