: set-theme ( -- )
NSAppearance -> currentAppearance -> name CF>string
"NSAppearanceNameDarkAqua" = dark-theme light-theme ?
- switch-theme t default-theme? set-global ;
+ switch-theme ;
SYMBOL: cocoa-startup-hook
! Light/Dark Mode
METHOD: void viewDidChangeEffectiveAppearance [
- default-theme? get [
- self -> effectiveAppearance -> name [
- CF>string "NSAppearanceNameDarkAqua" =
- dark-theme light-theme ? switch-theme
- t default-theme? set-global
- ] when*
- ] when
+ self -> effectiveAppearance -> name [
+ CF>string "NSAppearanceNameDarkAqua" =
+ dark-theme light-theme ? switch-theme
+ ] when*
] ;
! Events
sequences ui.theme ui.tools.listener vocabs.prettyprint words ;
IN: ui.theme.switching
-SYMBOL: default-theme?
-t default-theme? set-global
-
<PRIVATE
: update-style ( style color elt -- )
PRIVATE>
: switch-theme ( theme -- )
- theme set-global update-stylesheet
- f default-theme? set-global ;
+ theme set-global update-stylesheet ;
: light-mode ( -- ) light-theme switch-theme ;