|
@@ -101,6 +101,9 @@ public class UnlockController implements ViewController {
|
|
|
@FXML
|
|
|
private Button unlockButton;
|
|
|
|
|
|
+ @FXML
|
|
|
+ private Label successMessage;
|
|
|
+
|
|
|
@FXML
|
|
|
private CheckBox savePassword;
|
|
|
|
|
@@ -194,7 +197,7 @@ public class UnlockController implements ViewController {
|
|
|
passwordField.requestFocus();
|
|
|
}
|
|
|
|
|
|
- void setVault(Vault vault) {
|
|
|
+ void setVault(Vault vault, State state) {
|
|
|
vaultSubs.unsubscribe();
|
|
|
vaultSubs = Subscription.EMPTY;
|
|
|
|
|
@@ -209,6 +212,8 @@ public class UnlockController implements ViewController {
|
|
|
advancedOptions.setVisible(false);
|
|
|
advancedOptionsButton.setText(localization.getString("unlock.button.advancedOptions.show"));
|
|
|
progressIndicator.setVisible(false);
|
|
|
+ successMessage.setVisible(state.successMessage().isPresent());
|
|
|
+ state.successMessage().map(localization::getString).ifPresent(successMessage::setText);
|
|
|
if (SystemUtils.IS_OS_WINDOWS) {
|
|
|
winDriveLetter.valueProperty().removeListener(driveLetterChangeListener);
|
|
|
winDriveLetter.getItems().clear();
|
|
@@ -265,6 +270,7 @@ public class UnlockController implements ViewController {
|
|
|
|
|
|
@FXML
|
|
|
private void didClickAdvancedOptionsButton(ActionEvent event) {
|
|
|
+ successMessage.setVisible(false);
|
|
|
advancedOptions.setVisible(!advancedOptions.isVisible());
|
|
|
if (advancedOptions.isVisible()) {
|
|
|
advancedOptionsButton.setText(localization.getString("unlock.button.advancedOptions.hide"));
|
|
@@ -463,4 +469,24 @@ public class UnlockController implements ViewController {
|
|
|
void didUnlock(Vault vault);
|
|
|
}
|
|
|
|
|
|
+ /* state */
|
|
|
+
|
|
|
+ public enum State {
|
|
|
+ UNLOCKING(null),
|
|
|
+ INITIALIZED("unlock.successLabel.vaultCreated"),
|
|
|
+ PASSWORD_CHANGED("unlock.successLabel.passwordChanged"),
|
|
|
+ UPGRADED("unlock.successLabel.upgraded");
|
|
|
+
|
|
|
+ private Optional<String> successMessage;
|
|
|
+
|
|
|
+ State(String successMessage) {
|
|
|
+ this.successMessage = Optional.ofNullable(successMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ public Optional<String> successMessage() {
|
|
|
+ return successMessage;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|