Mercurial > hg > xemacs-beta
diff lisp/font-menu.el @ 3094:ad2f4ae9895b
[xemacs-hg @ 2005-11-26 11:45:47 by stephent]
Xft merge. <87k6ev4p8q.fsf@tleepslib.sk.tsukuba.ac.jp>
author | stephent |
---|---|
date | Sat, 26 Nov 2005 11:46:25 +0000 |
parents | 491f8cf78a9c |
children | 049dc907c17a |
line wrap: on
line diff
--- a/lisp/font-menu.el Fri Nov 25 22:51:38 2005 +0000 +++ b/lisp/font-menu.el Sat Nov 26 11:46:25 2005 +0000 @@ -264,7 +264,9 @@ (member 0 (aref entry 2)))) (enable-menu-item item) (disable-menu-item item)) - (if (eq size s) + ;; #### God save the Queen! + ;; well, if this fails because s or size is non-numeric, fuck 'em + (if (= size (if (featurep 'xft-fonts) (float s) s)) (select-toggle-menu-item item) (deselect-toggle-menu-item item)) item) @@ -345,6 +347,7 @@ (or weight from-weight) (or size from-size)) (error + (message "Error updating font of `%s'" face) (display-error c nil) (sit-for 1))))) ;; Set the default face's font after hacking the other faces, so that @@ -356,16 +359,18 @@ (set-face-font 'default new-default-face-font (and font-menu-this-frame-only-p (selected-frame))) ;; OK Let Customize do it. - (custom-set-face-update-spec 'default - (list (list 'type (device-type))) - (list :family (or family from-family) - :size (concat - (int-to-string - (/ (or size from-size) - (specifier-instance font-menu-size-scaling - (selected-device)))) - "pt"))) - (message "Font %s" (face-font-name 'default))))) + (let ((fsize (if (featurep 'xft-fonts) + (int-to-string (or size from-size)) + (concat (int-to-string + (/ (or size from-size) + (specifier-instance font-menu-size-scaling + (selected-device)))) + "pt")))) + (custom-set-face-update-spec 'default + (list (list 'type (device-type))) + (list :family (or family from-family) + :size fsize)))) + (message "Font %s" (face-font-name 'default)))) ;; #### This should be called `font-menu-maybe-change-face'