mirror of
https://github.com/protesilaos/modus-themes.git
synced 2026-09-10 07:16:30 -04:00
Improve core palette loading logic
Enhance theme palette loading by ensuring core palette is loaded before accessing its value.
This commit is contained in:
parent
a071a9d8e7
commit
89e40be4d8
|
|
@ -3828,11 +3828,25 @@ If THEME does not have at least a `:modus-core-palette' among its
|
||||||
|
|
||||||
Else return (append OVERRIDES USER CORE)."
|
Else return (append OVERRIDES USER CORE)."
|
||||||
(when-let* ((properties (get theme 'theme-properties))
|
(when-let* ((properties (get theme 'theme-properties))
|
||||||
(core-palette (symbol-value (plist-get properties :modus-core-palette))))
|
(core-palette-name (plist-get properties :modus-core-palette)))
|
||||||
(let* ((user-palette (when with-user-palette (symbol-value (plist-get properties :modus-user-palette))))
|
;; If the palette variable hasn't been loaded into memory yet, load the theme silently
|
||||||
(overrides-palette (when with-overrides (symbol-value (plist-get properties :modus-overrides-palette))))
|
(unless (boundp core-palette-name)
|
||||||
(all-overrides (when with-overrides (append overrides-palette modus-themes-common-palette-overrides))))
|
(load-theme theme t t))
|
||||||
(append all-overrides user-palette core-palette))))
|
(when (boundp core-palette-name)
|
||||||
|
(let* ((core-palette (symbol-value core-palette-name))
|
||||||
|
(user-palette-name (plist-get properties :modus-user-palette))
|
||||||
|
(user-palette (when (and with-user-palette
|
||||||
|
user-palette-name
|
||||||
|
(boundp user-palette-name))
|
||||||
|
(symbol-value user-palette-name)))
|
||||||
|
(overrides-palette-name (plist-get properties :modus-overrides-palette))
|
||||||
|
(overrides-palette (when (and with-overrides
|
||||||
|
overrides-palette-name
|
||||||
|
(boundp overrides-palette-name))
|
||||||
|
(symbol-value overrides-palette-name)))
|
||||||
|
(all-overrides (when with-overrides
|
||||||
|
(append overrides-palette modus-themes-common-palette-overrides))))
|
||||||
|
(append all-overrides user-palette core-palette)))))
|
||||||
|
|
||||||
(defun modus-themes-get-theme-palette (&optional theme with-overrides with-user-palette)
|
(defun modus-themes-get-theme-palette (&optional theme with-overrides with-user-palette)
|
||||||
"Return palette value of active `modus-themes-get-themes' THEME.
|
"Return palette value of active `modus-themes-get-themes' THEME.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue