]> gitweb.factorcode.org Git - factor.git/commitdiff
ui.backend.cocoa: change theme automatically if we haven't set it yet.
authorJohn Benediktsson <mrjbq7@gmail.com>
Fri, 31 Dec 2021 06:29:31 +0000 (22:29 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 31 Dec 2021 06:29:31 +0000 (22:29 -0800)
basis/ui/backend/cocoa/cocoa.factor
basis/ui/backend/cocoa/views/views.factor

index 81553f5a5f246ffcc52a65cf2f13760e3f0bfbbc..050f4b2e3c9f0fd9163c2af79efc7ea36dad6fe7 100644 (file)
@@ -210,7 +210,7 @@ M: cocoa-ui-backend system-alert
 : set-theme ( -- )
     NSAppearance -> currentAppearance -> name CF>string
     "NSAppearanceNameDarkAqua" = dark-theme light-theme ?
-    switch-theme ;
+    switch-theme t default-theme? set-global ;
 
 SYMBOL: cocoa-startup-hook
 
index 3373d80407ec920020538ad98aa3775561bdfb72..5bcc404ed57db8c75e955abf8fe92c11faa47882 100644 (file)
@@ -333,10 +333,13 @@ PRIVATE>
     ! Light/Dark Mode
 
     METHOD: void viewDidChangeEffectiveAppearance [
-        self -> effectiveAppearance -> name [
-            CF>string "NSAppearanceNameDarkAqua" =
-            dark-theme light-theme ? switch-theme
-        ] when*
+        default-theme? get [
+            self -> effectiveAppearance -> name [
+                CF>string "NSAppearanceNameDarkAqua" =
+                dark-theme light-theme ? switch-theme
+                t default-theme? set-global
+            ] when*
+        ] when
     ] ;
 
     ! Events