From bd87defe2950775a90201c28a717b97e0fb18f93 Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Fri, 23 Jul 2021 09:23:08 +0200 Subject: [PATCH] Resiliency fixes for missing integrations-api implementation --- .../java/org/cryptomator/ui/fxapp/FxApplication.java | 9 ++++++--- .../ui/preferences/GeneralPreferencesController.java | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/cryptomator/ui/fxapp/FxApplication.java b/src/main/java/org/cryptomator/ui/fxapp/FxApplication.java index 02a2e5b9e..1812d38bd 100644 --- a/src/main/java/org/cryptomator/ui/fxapp/FxApplication.java +++ b/src/main/java/org/cryptomator/ui/fxapp/FxApplication.java @@ -188,9 +188,12 @@ public class FxApplication extends Application { } private void applySystemTheme() { - appearanceProvider.ifPresent(appearanceProvider -> { - systemInterfaceThemeChanged(appearanceProvider.getSystemTheme()); - }); + if (appearanceProvider.isPresent()) { + systemInterfaceThemeChanged(appearanceProvider.get().getSystemTheme()); + } else { + LOG.warn("No UiAppearanceProvider present, assuming LIGHT theme..."); + applyLightTheme(); + } } private void applyLightTheme() { diff --git a/src/main/java/org/cryptomator/ui/preferences/GeneralPreferencesController.java b/src/main/java/org/cryptomator/ui/preferences/GeneralPreferencesController.java index 9b22b2c97..fafea3f2f 100644 --- a/src/main/java/org/cryptomator/ui/preferences/GeneralPreferencesController.java +++ b/src/main/java/org/cryptomator/ui/preferences/GeneralPreferencesController.java @@ -224,7 +224,7 @@ public class GeneralPreferencesController implements FxController { if (string == null) { return null; } else { - return keychainAccessProviders.stream().filter(provider -> provider.getClass().getName().equals(string)).findAny().orElseThrow(); + return keychainAccessProviders.stream().filter(provider -> provider.getClass().getName().equals(string)).findAny().orElse(null); } } }