Mercurial > emacs
changeset 102312:473a26ad93a9
(menu-set-font): Fix last fix.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Fri, 27 Feb 2009 15:13:07 +0000 |
parents | d54a31f60e54 |
children | 5feec5ab8088 |
files | lisp/menu-bar.el |
diffstat | 1 files changed, 8 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/menu-bar.el Fri Feb 27 15:12:46 2009 +0000 +++ b/lisp/menu-bar.el Fri Feb 27 15:13:07 2009 +0000 @@ -637,16 +637,14 @@ (mouse-select-font))) spec) (when font - ;; We used to call set-face-attribute with a nil argument here, - ;; but this does the wrong thing (Bug#2476). The reason is - ;; subtle: when Emacs looks for a font matching the `font' - ;; argument, it tries to guess the best matching font by - ;; examining the other face attributes. The attributes for - ;; future frames are generally unspecified, so this matching - ;; process works poorly. What we do instead is assign `font' to - ;; the selected frame, then use that font object and assign it - ;; to all other frames (and to future frames). - (set-face-attribute 'default (selected-frame) :font font) + ;; Be careful here: when set-face-attribute is called for the + ;; :font attribute, Emacs tries to guess the best matching font + ;; by examining the other face attributes (Bug#2476). + (set-face-attribute 'default (selected-frame) + :width 'normal + :weight 'normal + :slant 'normal + :font font) (let ((font-object (face-attribute 'default :font))) (dolist (f (frame-list)) (and (not (eq f (selected-frame)))