From 7a6ebe487f044b33b04c6941b8f4113f2dddb224 Mon Sep 17 00:00:00 2001 From: crschnick Date: Wed, 19 Jun 2024 20:19:56 +0000 Subject: [PATCH] Fixes --- .../io/xpipe/app/core/window/ModifiedStage.java | 14 ++++++++------ .../io/xpipe/app/fxcomps/impl/PrettyImageComp.java | 11 +++++++---- .../io/xpipe/app/fxcomps/impl/PrettySvgComp.java | 11 +++++++---- 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/io/xpipe/app/core/window/ModifiedStage.java b/app/src/main/java/io/xpipe/app/core/window/ModifiedStage.java index 74a245a0..2b38da4f 100644 --- a/app/src/main/java/io/xpipe/app/core/window/ModifiedStage.java +++ b/app/src/main/java/io/xpipe/app/core/window/ModifiedStage.java @@ -33,12 +33,14 @@ public class ModifiedStage extends Stage { private static void hookUpStage(Stage stage) { applyModes(stage); - AppPrefs.get().theme.addListener((observable, oldValue, newValue) -> { - updateStage(stage); - }); - AppPrefs.get().performanceMode().addListener((observable, oldValue, newValue) -> { - updateStage(stage); - }); + if (AppPrefs.get() != null) { + AppPrefs.get().theme.addListener((observable, oldValue, newValue) -> { + updateStage(stage); + }); + AppPrefs.get().performanceMode().addListener((observable, oldValue, newValue) -> { + updateStage(stage); + }); + } } private static void applyModes(Stage stage) { diff --git a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java index cc741e62..97980fd3 100644 --- a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java +++ b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java @@ -93,8 +93,9 @@ public class PrettyImageComp extends SimpleComp { stack.getChildren().add(storeIcon); Consumer update = val -> { + var useDark = AppPrefs.get() != null && AppPrefs.get().theme.get() != null && AppPrefs.get().theme.get().isDark(); var fixed = val != null - ? FileNames.getBaseName(val) + (AppPrefs.get().theme.get().isDark() ? "-dark" : "") + "." + ? FileNames.getBaseName(val) + (useDark ? "-dark" : "") + "." + FileNames.getExtension(val) : null; image.set(fixed); @@ -107,9 +108,11 @@ public class PrettyImageComp extends SimpleComp { }; PlatformThread.sync(value).subscribe(update); - AppPrefs.get().theme.addListener((observable, oldValue, newValue) -> { - update.accept(value.getValue()); - }); + if (AppPrefs.get() != null) { + AppPrefs.get().theme.addListener((observable, oldValue, newValue) -> { + update.accept(value.getValue()); + }); + } stack.setFocusTraversable(false); stack.setPrefWidth(width); diff --git a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettySvgComp.java b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettySvgComp.java index 3fb8cf80..6b4409a7 100644 --- a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettySvgComp.java +++ b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettySvgComp.java @@ -88,17 +88,20 @@ public class PrettySvgComp extends SimpleComp { } Consumer update = val -> { + var useDark = AppPrefs.get() != null && AppPrefs.get().theme.get() != null && AppPrefs.get().theme.get().isDark(); var fixed = val != null - ? FileNames.getBaseName(val) + (AppPrefs.get().theme.get().isDark() ? "-dark" : "") + "." + ? FileNames.getBaseName(val) + (useDark ? "-dark" : "") + "." + FileNames.getExtension(val) : null; image.set(fixed); }; syncValue.subscribe(update); - AppPrefs.get().theme.addListener((observable, oldValue, newValue) -> { - update.accept(syncValue.getValue()); - }); + if (AppPrefs.get() != null) { + AppPrefs.get().theme.addListener((observable, oldValue, newValue) -> { + update.accept(syncValue.getValue()); + }); + } stack.setFocusTraversable(false); stack.setPrefWidth(width);