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 980a253c6..97d838ed6 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 @@ -14,17 +14,8 @@ import javax.inject.Inject; import javax.inject.Named; import javax.inject.Singleton; -import javafx.beans.value.ObservableValue; -import javafx.scene.layout.GridPane; -import javafx.util.StringConverter; -import org.apache.commons.lang3.SystemUtils; -import org.cryptomator.common.settings.Settings; -import org.cryptomator.ui.l10n.Localization; -import org.cryptomator.common.settings.NioAdapterImpl; - import com.google.common.base.CharMatcher; import com.google.common.base.Strings; - import javafx.beans.binding.Bindings; import javafx.event.ActionEvent; import javafx.fxml.FXML; @@ -35,8 +26,13 @@ import javafx.scene.control.ChoiceBox; import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.scene.input.KeyEvent; +import javafx.scene.layout.GridPane; import javafx.scene.layout.VBox; -import org.fxmisc.easybind.EasyBind; +import javafx.util.StringConverter; +import org.apache.commons.lang3.SystemUtils; +import org.cryptomator.common.settings.NioAdapterImpl; +import org.cryptomator.common.settings.Settings; +import org.cryptomator.ui.l10n.Localization; @Singleton public class SettingsController implements ViewController { diff --git a/main/ui/src/main/java/org/cryptomator/ui/model/WebDavVolume.java b/main/ui/src/main/java/org/cryptomator/ui/model/WebDavVolume.java index 77ecabfce..ad9282bd8 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/model/WebDavVolume.java +++ b/main/ui/src/main/java/org/cryptomator/ui/model/WebDavVolume.java @@ -10,6 +10,8 @@ import org.cryptomator.frontend.webdav.mount.Mounter; import org.cryptomator.frontend.webdav.servlet.WebDavServletController; import javax.inject.Inject; +import javax.inject.Provider; + import java.net.InetAddress; import java.net.UnknownHostException; @@ -18,22 +20,26 @@ public class WebDavVolume implements Volume { private static final String LOCALHOST_ALIAS = "cryptomator-vault"; - private final WebDavServer server; + private final Provider serverProvider; private final VaultSettings vaultSettings; private final Settings settings; + private WebDavServer server; private WebDavServletController servlet; private Mounter.Mount mount; @Inject - public WebDavVolume(WebDavServer server, VaultSettings vaultSettings, Settings settings) { - this.server = server; + public WebDavVolume(Provider serverProvider, VaultSettings vaultSettings, Settings settings) { + this.serverProvider = serverProvider; this.vaultSettings = vaultSettings; this.settings = settings; } @Override public void prepare(CryptoFileSystem fs) { + if (server == null) { + server = serverProvider.get(); + } if (!server.isRunning()) { server.start(); }