From 036dca33be1c192974d1b5c8fcd6435611aa2237 Mon Sep 17 00:00:00 2001 From: Tobias Hagemann Date: Fri, 26 Jul 2019 11:42:46 +0200 Subject: [PATCH] mac appearance changes with light/dark theme, updated jni --- main/pom.xml | 2 +- .../src/main/java/org/cryptomator/ui/FxApplication.java | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/main/pom.xml b/main/pom.xml index a49148e32..7f0bb2da4 100644 --- a/main/pom.xml +++ b/main/pom.xml @@ -26,7 +26,7 @@ 1.2.1 1.8.6 - 2.0.0 + 2.1.0 1.2.0 1.1.9 1.0.10 diff --git a/main/ui/src/main/java/org/cryptomator/ui/FxApplication.java b/main/ui/src/main/java/org/cryptomator/ui/FxApplication.java index eb362a50d..05faf7671 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/FxApplication.java +++ b/main/ui/src/main/java/org/cryptomator/ui/FxApplication.java @@ -6,6 +6,8 @@ import javafx.beans.value.ObservableValue; import javafx.stage.Stage; import org.cryptomator.common.settings.Settings; import org.cryptomator.common.settings.UiTheme; +import org.cryptomator.jni.MacApplicationUiAppearance; +import org.cryptomator.jni.MacFunctions; import org.cryptomator.ui.mainwindow.MainWindowComponent; import org.cryptomator.ui.preferences.PreferencesComponent; import org.slf4j.Logger; @@ -14,6 +16,7 @@ import org.slf4j.LoggerFactory; import javax.inject.Inject; import java.awt.Desktop; import java.awt.desktop.PreferencesEvent; +import java.util.Optional; @FxApplicationScoped public class FxApplication extends Application { @@ -23,12 +26,14 @@ public class FxApplication extends Application { private final Settings settings; private final MainWindowComponent.Builder mainWindow; private final PreferencesComponent.Builder preferencesWindow; + private final Optional macFunctions; @Inject - FxApplication(Settings settings, MainWindowComponent.Builder mainWindow, PreferencesComponent.Builder preferencesWindow) { + FxApplication(Settings settings, MainWindowComponent.Builder mainWindow, PreferencesComponent.Builder preferencesWindow, Optional macFunctions) { this.settings = settings; this.mainWindow = mainWindow; this.preferencesWindow = preferencesWindow; + this.macFunctions = macFunctions; } public void start() { @@ -69,10 +74,12 @@ public class FxApplication extends Application { break; case DARK: Application.setUserAgentStylesheet(getClass().getResource("/css/dark_theme.css").toString()); + macFunctions.map(MacFunctions::uiAppearance).ifPresent(MacApplicationUiAppearance::setToDarkAqua); break; case LIGHT: default: Application.setUserAgentStylesheet(getClass().getResource("/css/light_theme.css").toString()); + macFunctions.map(MacFunctions::uiAppearance).ifPresent(MacApplicationUiAppearance::setToAqua); break; } }