From d0afeab74badd7bc5433bb0c347e77d1dc4a208c Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Tue, 8 Mar 2016 15:31:10 +0100 Subject: [PATCH] UI refinements, fixes #166 --- .../cryptomator/ui/controllers/MainController.java | 5 +++++ .../ui/controllers/SettingsController.java | 10 ++++++++++ main/ui/src/main/resources/fxml/main.fxml | 13 ++++++++++++- main/ui/src/main/resources/fxml/settings.fxml | 5 +++-- main/ui/src/main/resources/fxml/unlocked.fxml | 9 ++++++--- main/ui/src/main/resources/fxml/welcome.fxml | 6 ++++-- main/ui/src/main/resources/localization.properties | 2 ++ .../src/main/resources/localization_de.properties | 2 ++ 8 files changed, 44 insertions(+), 8 deletions(-) diff --git a/main/ui/src/main/java/org/cryptomator/ui/controllers/MainController.java b/main/ui/src/main/java/org/cryptomator/ui/controllers/MainController.java index 6549f78ee..54f766845 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/controllers/MainController.java +++ b/main/ui/src/main/java/org/cryptomator/ui/controllers/MainController.java @@ -36,6 +36,7 @@ import org.slf4j.LoggerFactory; import dagger.Lazy; import javafx.application.Platform; import javafx.beans.binding.Binding; +import javafx.beans.binding.Bindings; import javafx.beans.binding.BooleanBinding; import javafx.beans.property.ObjectProperty; import javafx.beans.property.SimpleObjectProperty; @@ -120,6 +121,9 @@ public class MainController extends AbstractFXMLViewController { @FXML private Pane contentPane; + @FXML + private Pane emptyListInstructions; + @Override public void initialize() { vaultList.setItems(vaults); @@ -127,6 +131,7 @@ public class MainController extends AbstractFXMLViewController { activeController.set(welcomeController.get()); selectedVault.bind(vaultList.getSelectionModel().selectedItemProperty()); removeVaultButton.disableProperty().bind(canEditSelectedVault); + emptyListInstructions.visibleProperty().bind(Bindings.isEmpty(vaults)); EasyBind.subscribe(activeController, this::activeControllerDidChange); EasyBind.subscribe(selectedVault, this::selectedVaultDidChange); diff --git a/main/ui/src/main/java/org/cryptomator/ui/controllers/SettingsController.java b/main/ui/src/main/java/org/cryptomator/ui/controllers/SettingsController.java index b7e768f23..eae4dab26 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/controllers/SettingsController.java +++ b/main/ui/src/main/java/org/cryptomator/ui/controllers/SettingsController.java @@ -9,6 +9,7 @@ package org.cryptomator.ui.controllers; import java.net.URL; +import java.util.Optional; import java.util.ResourceBundle; import javax.inject.Inject; @@ -21,6 +22,7 @@ import org.fxmisc.easybind.EasyBind; import javafx.fxml.FXML; import javafx.scene.control.CheckBox; +import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.scene.input.KeyEvent; @@ -42,12 +44,16 @@ public class SettingsController extends AbstractFXMLViewController { @FXML private TextField portField; + @FXML + private Label versionLabel; + @Override public void initialize() { checkForUpdatesCheckbox.setDisable(areUpdatesManagedExternally()); checkForUpdatesCheckbox.setSelected(settings.isCheckForUpdatesEnabled() && !areUpdatesManagedExternally()); portField.setText(String.valueOf(settings.getPort())); portField.addEventFilter(KeyEvent.KEY_TYPED, this::filterNumericKeyEvents); + versionLabel.setText(String.format(localization.getString("settings.version.label"), applicationVersion().orElse("SNAPSHOT"))); EasyBind.subscribe(portField.textProperty(), this::portDidChange); EasyBind.subscribe(checkForUpdatesCheckbox.selectedProperty(), settings::setCheckForUpdatesEnabled); @@ -63,6 +69,10 @@ public class SettingsController extends AbstractFXMLViewController { return localization; } + private Optional applicationVersion() { + return Optional.ofNullable(getClass().getPackage().getImplementationVersion()); + } + private void portDidChange(String newValue) { try { int port = Integer.parseInt(newValue); diff --git a/main/ui/src/main/resources/fxml/main.fxml b/main/ui/src/main/resources/fxml/main.fxml index 0891651a4..19e374c79 100644 --- a/main/ui/src/main/resources/fxml/main.fxml +++ b/main/ui/src/main/resources/fxml/main.fxml @@ -20,6 +20,9 @@ + + + @@ -49,7 +52,15 @@ - + + + + + + + + diff --git a/main/ui/src/main/resources/fxml/settings.fxml b/main/ui/src/main/resources/fxml/settings.fxml index 63f8e0de4..98499ed4a 100644 --- a/main/ui/src/main/resources/fxml/settings.fxml +++ b/main/ui/src/main/resources/fxml/settings.fxml @@ -16,8 +16,9 @@ - - + +