;;; cus-face.el --- customization support for faces
;;
;; Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
-;; 2005, 2006 Free Software Foundation, Inc.
+;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
;;
;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Keywords: help, faces
;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
+;; the Free Software Foundation; either version 3, or (at your option)
;; any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
(make-empty-face face)
;; Create frame-local faces
(dolist (frame (frame-list))
- (face-spec-set face value frame)
+ (face-spec-set-2 face frame value)
(when (memq (window-system frame) '(x w32 mac))
(setq have-window-system t)))
;; When making a face after frames already exist
(unless (facep face)
(make-empty-face face))
(put face 'face-comment comment)
- (face-spec-set face spec))
- (setq args (cdr args)))
- ;; Old format, a plist of FACE SPEC pairs.
- (let ((face (nth 0 args))
- (spec (nth 1 args)))
- (if (get face 'face-alias)
- (setq face (get face 'face-alias)))
- (put face 'saved-face spec)
- (custom-push-theme 'theme-face face theme 'set spec))
- (setq args (cdr (cdr args))))))))
+ (put face 'face-override-spec nil)
+ (face-spec-set face spec t))
+ (setq args (cdr args)))
+ ;; Old format, a plist of FACE SPEC pairs.
+ (let ((face (nth 0 args))
+ (spec (nth 1 args)))
+ (if (get face 'face-alias)
+ (setq face (get face 'face-alias)))
+ (put face 'saved-face spec)
+ (custom-push-theme 'theme-face face theme 'set spec))
+ (setq args (cdr (cdr args))))))))
;; XEmacs compability function. In XEmacs, when you reset a Custom
;; Theme, you have to specify the theme to reset it to. We just apply