Commit 8a6f24e5 authored by Glenn Morris's avatar Glenn Morris
Browse files

faces.el fix for bug#7966.

* lisp/faces.el (face-attr-match-p): Handle the obsolete :bold and
:italic props, so that frame-set-background-mode works.
(Otherwise such faces were always thought to be locally modified.)
parent 3caced0b
2011-02-08 Glenn Morris <rgm@gnu.org>
* faces.el (face-attr-match-p): Handle the obsolete :bold and
:italic props, so that frame-set-background-mode works. (Bug#7966)
2011-02-07 Glenn Morris <rgm@gnu.org> 2011-02-07 Glenn Morris <rgm@gnu.org>
* simple.el (next-error): Doc fix. * simple.el (next-error): Doc fix.
......
...@@ -1605,13 +1605,25 @@ Optional parameter FRAME is the frame whose definition of FACE ...@@ -1605,13 +1605,25 @@ Optional parameter FRAME is the frame whose definition of FACE
is used. If nil or omitted, use the selected frame." is used. If nil or omitted, use the selected frame."
(unless frame (unless frame
(setq frame (selected-frame))) (setq frame (selected-frame)))
(let ((list face-attribute-name-alist) (let* ((list face-attribute-name-alist)
(match t)) (match t)
(bold (and (plist-member attrs :bold)
(not (plist-member attrs :weight))))
(italic (and (plist-member attrs :italic)
(not (plist-member attrs :slant))))
(plist (if (or bold italic)
(copy-sequence attrs)
attrs)))
;; Handle the Emacs 20 :bold and :italic properties.
(if bold
(plist-put plist :weight (if bold 'bold 'normal)))
(if italic
(plist-put plist :slant (if italic 'italic 'normal)))
(while (and match (not (null list))) (while (and match (not (null list)))
(let* ((attr (car (car list))) (let* ((attr (car (car list)))
(specified-value (specified-value
(if (plist-member attrs attr) (if (plist-member plist attr)
(plist-get attrs attr) (plist-get plist attr)
'unspecified)) 'unspecified))
(value-now (face-attribute face attr frame))) (value-now (face-attribute face attr frame)))
(setq match (equal specified-value value-now)) (setq match (equal specified-value value-now))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment