diff options
author | Daniel Colascione <dancol@dancol.org> | 2018-06-16 15:42:56 -0700 |
---|---|---|
committer | Daniel Colascione <dancol@dancol.org> | 2018-06-16 15:44:23 -0700 |
commit | aabaa9f8c8b79df44887392fcaa199e17b016afd (patch) | |
tree | 7c7f15543866bad5acaa5ca9ce49877bfb5740fb /lisp/cus-face.el | |
parent | 6021e1db92e355fbf5c66765fb0bc4658a80180a (diff) | |
download | emacs-aabaa9f8c8b79df44887392fcaa199e17b016afd.tar.gz |
Apply non-user themes only when asked
Theme settings now generally aren't actually applied until a call to
`enable-theme-, either one made explicitly or implicitly through
`load-theme' with NO-ENABLE nil. This change has the effect of not
applying theme changes just because we load a lisp file containing a
theme specification. The previous behavior is preserved for the
special case of the `user' theme, which is frequently used for
ad-hoc customization.
* lisp/cus-face.el (custom-theme-set-faces): Call
`custom--should-apply-setting' to decide whether to apply
a setting.
* lisp/custom.el (custom--should-apply-setting): New function.
(custom--inhibit-theme-enable): Add `apply-only-user' option;
default to it.
(custom-push-theme, custom-theme-set-variables): Call
`custom--should-apply-setting' to decide whether to apply
a setting.
Diffstat (limited to 'lisp/cus-face.el')
-rw-r--r-- | lisp/cus-face.el | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lisp/cus-face.el b/lisp/cus-face.el index 2b352b3dc60..039c1fafa70 100644 --- a/lisp/cus-face.el +++ b/lisp/cus-face.el @@ -342,7 +342,7 @@ argument list." ;; is aliased to. (if (get face 'face-alias) (setq face (get face 'face-alias))) - (if custom--inhibit-theme-enable + (if (custom--should-apply-setting theme) ;; Just update theme settings. (custom-push-theme 'theme-face face theme 'set spec) ;; Update theme settings and set the face spec. |