# HG changeset patch # User Richard M. Stallman # Date 789759839 0 # Node ID f9d713e8c77cedeffe7e09fe8ca070eaf1a2ab01 # Parent fb23ac6e61995c630ab79fda474265eca565e1ec (face-nontrivial-p): New function. diff -r fb23ac6e6199 -r f9d713e8c77c lisp/faces.el --- a/lisp/faces.el Tue Jan 10 17:20:39 1995 +0000 +++ b/lisp/faces.el Tue Jan 10 17:43:59 1995 +0000 @@ -425,7 +425,11 @@ A face is considered to be ``the same'' as the default face if it is actually specified in the same way (equivalent fonts, etc) or if it is fully unspecified, and thus inherits the attributes of any face it -is displayed on top of." +is displayed on top of. + +The optional argument FRAME specifies which frame to test; +if FRAME is t, test the default for new frames. +If FRAME is nil or omitted, test the selected frame." (let ((default (internal-get-face 'default frame))) (setq face (internal-get-face face frame)) (not (and (or (equal (face-foreground default frame) @@ -443,6 +447,18 @@ (face-underline-p face frame)) )))) +(defun face-nontrivial-p (face &optional frame) + "True if face FACE has some non-nil attribute. +The optional argument FRAME specifies which frame to test; +if FRAME is t, test the default for new frames. +If FRAME is nil or omitted, test the selected frame." + (setq face (internal-get-face face frame)) + (or (face-foreground face frame) + (face-background face frame) + (face-font face frame) + (face-stipple face frame) + (face-underline-p face frame))) + (defun invert-face (face &optional frame) "Swap the foreground and background colors of face FACE.