• Daniel Colascione's avatar
    Apply non-user themes only when asked · aabaa9f8
    Daniel Colascione authored
    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.
    aabaa9f8
cus-face.el 12.9 KB