(defvar font-menu-preferred-resolution
(make-specifier-and-init 'generic '((global ((mswindows) . ":")
+ ((gtk) . "*-*")
((x) . "*-*"))) t)
"Preferred horizontal and vertical font menu resolution (e.g. \"75:75\").")
(defvar font-menu-size-scaling
(make-specifier-and-init 'integer '((global ((mswindows) . 1)
+ ((gtk) . 10)
((x) . 10))) t)
"Scale factor used in defining font sizes.")
(condition-case c
(font-menu-change-face face
from-family from-weight from-size
- family weight size)
+ (or family from-family)
+ (or weight from-weight)
+ (or size from-size))
(error
(display-error c nil)
(sit-for 1)))))
;; OK Let Customize do it.
(custom-set-face-update-spec 'default
(list (list 'type (device-type)))
- (list :family family
+ (list :family (or family from-family)
:size (concat
(int-to-string
(/ (or size from-size)
(defun font-menu-change-face (face
from-family from-weight from-size
to-family to-weight to-size)
- (or (symbolp face) (setq face (wrong-type-argument 'symbolp face)))
+ (check-type face symbol)
(let* ((dcache (device-fonts-cache))
(font-data (font-menu-font-data face dcache))
(face-family (aref font-data 1))