From 564370ec7aad946a813d0745668c1fcfffd266ac Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Mon, 11 Apr 2022 12:31:57 +0200 Subject: [PATCH 1/3] compile .css into .bss file --- pom.xml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/pom.xml b/pom.xml index 6518a2d53..c7ec6e77e 100644 --- a/pom.xml +++ b/pom.xml @@ -298,6 +298,41 @@ + + org.codehaus.mojo + exec-maven-plugin + 3.0.0 + + + compile-light-theme + compile + + java + + + javafx.graphics/com.sun.javafx.css.parser.Css2Bin + + ${project.basedir}/src/main/resources/css/light_theme.css + ${project.build.outputDirectory}/css/light_theme.bss + + + + + compile-dark-theme + compile + + java + + + javafx.graphics/com.sun.javafx.css.parser.Css2Bin + + ${project.basedir}/src/main/resources/css/dark_theme.css + ${project.build.outputDirectory}/css/dark_theme.bss + + + + + org.apache.maven.plugins maven-jar-plugin From b656b591ed0b9e2da8ccd41a92721fed44e42a94 Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Mon, 11 Apr 2022 12:32:07 +0200 Subject: [PATCH 2/3] prefer .bss over .css --- .../ui/fxapp/FxApplicationStyle.java | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java b/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java index da2a4a800..dd81d200d 100644 --- a/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java +++ b/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java @@ -83,12 +83,26 @@ public class FxApplicationStyle { } private void applyLightTheme() { - Application.setUserAgentStylesheet(getClass().getResource("/css/light_theme.css").toString()); - appearanceProvider.ifPresent(provider -> provider.adjustToTheme(Theme.LIGHT)); + var stylesheet = Optional // + .ofNullable(getClass().getResource("/css/light_theme.bss")) // + .orElse(getClass().getResource("/css/light_theme.css")); + if (stylesheet == null) { + LOG.warn("Failed to load light_theme stylesheet"); + } else { + Application.setUserAgentStylesheet(stylesheet.toString()); + appearanceProvider.ifPresent(provider -> provider.adjustToTheme(Theme.LIGHT)); + } } private void applyDarkTheme() { - Application.setUserAgentStylesheet(getClass().getResource("/css/dark_theme.css").toString()); - appearanceProvider.ifPresent(provider -> provider.adjustToTheme(Theme.DARK)); + var stylesheet = Optional // + .ofNullable(getClass().getResource("/css/dark_theme.bss")) // + .orElse(getClass().getResource("/css/dark_theme.css")); + if (stylesheet == null) { + LOG.warn("Failed to load light_theme stylesheet"); + } else { + Application.setUserAgentStylesheet(stylesheet.toString()); + appearanceProvider.ifPresent(provider -> provider.adjustToTheme(Theme.DARK)); + } } } From 0ace5bb42b21db7c9a7719c7608c44bdb7fc92ae Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Mon, 11 Apr 2022 12:34:50 +0200 Subject: [PATCH 3/3] fix copy-paste error in log message --- src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java b/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java index dd81d200d..711da7948 100644 --- a/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java +++ b/src/main/java/org/cryptomator/ui/fxapp/FxApplicationStyle.java @@ -99,7 +99,7 @@ public class FxApplicationStyle { .ofNullable(getClass().getResource("/css/dark_theme.bss")) // .orElse(getClass().getResource("/css/dark_theme.css")); if (stylesheet == null) { - LOG.warn("Failed to load light_theme stylesheet"); + LOG.warn("Failed to load dark_theme stylesheet"); } else { Application.setUserAgentStylesheet(stylesheet.toString()); appearanceProvider.ifPresent(provider -> provider.adjustToTheme(Theme.DARK));