From: Richard M. Stallman Date: Wed, 28 May 2003 11:17:33 +0000 (+0000) Subject: (set-face-attribute): Set face-modified prop to t X-Git-Tag: ttn-vms-21-2-B4~9904 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=680da3f83b0b79c968cb4a73c861356436dcf0c0;p=emacs.git (set-face-attribute): Set face-modified prop to t when we change the new-frame defaults. (face-spec-set): Set face-modified prop to nil when we change the new-frame defaults. --- diff --git a/lisp/faces.el b/lisp/faces.el index ee3a9d78cb4..2cf9f7dcdc6 100644 --- a/lisp/faces.el +++ b/lisp/faces.el @@ -664,6 +664,9 @@ of face names. Attributes from inherited faces are merged into the face like an underlying face would be, with higher priority than underlying faces." (let ((where (if (null frame) 0 frame))) (setq args (purecopy args)) + ;; If we set the new-frame defaults, this face is modified outside Custom. + (if (memq where '(0 t)) + (put face 'face-modified t)) (while args (internal-set-lisp-face-attribute face (car args) (purecopy (cadr args)) @@ -1378,7 +1381,11 @@ If SPEC is nil, do nothing." (setq attribute nil)))) (when attribute (set-face-attribute face frame attribute value))) - (setq attrs (cdr (cdr attrs)))))) + (setq attrs (cdr (cdr attrs))))) + ;; When we reset the face based on its spec, then it is unmodified + ;; as far as Custom is concerned. + (if (null frame) + (put face 'face-modified nil))) (defun face-attr-match-p (face attrs &optional frame)