mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-04 11:40:22 +00:00
* faces.el (face-spec-set): Stop supporting deprecated form of third arg.
This commit is contained in:
parent
c2d1019e35
commit
eeddc5310a
3
etc/NEWS
3
etc/NEWS
@ -138,6 +138,9 @@ Only variables defined using `defcustom' are considered user options.
|
||||
The function `user-variable-p' is now an obsolete alias for
|
||||
`custom-variable-p'.
|
||||
|
||||
** `face-spec-set' no longer sets frame-specific attributes when the
|
||||
third argument is a frame (that usage was obsolete since Emacs 22.2).
|
||||
|
||||
|
||||
* Lisp changes in Emacs 24.2
|
||||
|
||||
|
@ -6,6 +6,9 @@
|
||||
"reset-saved" operation bring back the default (Bug#9509).
|
||||
(custom-face-state): Properly detect themed faces.
|
||||
|
||||
* faces.el (face-spec-set): Stop supporting deprecated form of
|
||||
third arg.
|
||||
|
||||
2012-04-22 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
Move functions from C to Lisp. Make non-blocking method calls
|
||||
|
@ -1532,35 +1532,29 @@ If SPEC is nil, return nil."
|
||||
face-attribute-name-alist)))))
|
||||
|
||||
(defun face-spec-set (face spec &optional for-defface)
|
||||
"Set FACE's face spec, which controls its appearance, to SPEC.
|
||||
If FOR-DEFFACE is t, set the base spec, the one that `defface'
|
||||
and Custom set. (In that case, the caller must put it in the
|
||||
appropriate property, because that depends on the caller.)
|
||||
If FOR-DEFFACE is nil, set the overriding spec (and store it
|
||||
in the `face-override-spec' property of FACE).
|
||||
"Set and apply the face spec for FACE.
|
||||
If the optional argument FOR-DEFFACE is omitted or nil, set the
|
||||
overriding spec to SPEC, recording it in the `face-override-spec'
|
||||
property of FACE. See `defface' for the format of SPEC.
|
||||
|
||||
The appearance of FACE is controlled by the base spec,
|
||||
by any custom theme specs on top of that, and by the
|
||||
overriding spec on top of all the rest.
|
||||
If FOR-DEFFACE is non-nil, set the base spec (the one set by
|
||||
`defface' and Custom). In this case, SPEC is ignored; the caller
|
||||
is responsible for putting the face spec in the `saved-face',
|
||||
`customized-face', or `face-defface-spec', as appropriate.
|
||||
|
||||
FOR-DEFFACE can also be a frame, in which case we set the
|
||||
frame-specific attributes of FACE for that frame based on SPEC.
|
||||
That usage is deprecated.
|
||||
|
||||
See `defface' for information about the format and meaning of SPEC."
|
||||
(if (framep for-defface)
|
||||
;; Handle the deprecated case where third arg is a frame.
|
||||
(face-spec-set-2 face for-defface spec)
|
||||
(if for-defface
|
||||
;; When we reset the face based on its custom spec, then it is
|
||||
;; unmodified as far as Custom is concerned.
|
||||
(put (or (get face 'face-alias) face) 'face-modified nil)
|
||||
;; When we change a face based on a spec from outside custom,
|
||||
;; record it for future frames.
|
||||
(put (or (get face 'face-alias) face) 'face-override-spec spec))
|
||||
;; Reset each frame according to the rules implied by all its specs.
|
||||
(dolist (frame (frame-list))
|
||||
(face-spec-recalc face frame))))
|
||||
The appearance of FACE is controlled by the base spec, by any
|
||||
custom theme specs on top of that, and by the overriding spec on
|
||||
top of all the rest."
|
||||
(if for-defface
|
||||
;; When we reset the face based on its custom spec, then it is
|
||||
;; unmodified as far as Custom is concerned.
|
||||
(put (or (get face 'face-alias) face) 'face-modified nil)
|
||||
;; When we change a face based on a spec from outside custom,
|
||||
;; record it for future frames.
|
||||
(put (or (get face 'face-alias) face) 'face-override-spec spec))
|
||||
;; Reset each frame according to the rules implied by all its specs.
|
||||
(dolist (frame (frame-list))
|
||||
(face-spec-recalc face frame)))
|
||||
|
||||
(defun face-spec-recalc (face frame)
|
||||
"Reset the face attributes of FACE on FRAME according to its specs.
|
||||
|
Loading…
Reference in New Issue
Block a user