# HG changeset patch # User Didier Verna # Date 1325006879 -3600 # Node ID 6fa0c5fb6154bb38516fce02e2d5306126f3a0e8 # Parent c39052c921b57b532e0f18c859c4ca293d8eeac6 One comment. -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2011-12-27 Didier Verna * faces.c: Add a comment about the way background pixmaps are handled right now, just above MAYBE_UNFROB_BACKGROUND_PIXMAP. diff -r c39052c921b5 -r 6fa0c5fb6154 src/ChangeLog --- a/src/ChangeLog Tue Dec 27 17:07:23 2011 +0100 +++ b/src/ChangeLog Tue Dec 27 18:27:59 2011 +0100 @@ -1,3 +1,8 @@ +2011-12-27 Didier Verna + + * faces.c: Add a comment about the way background pixmaps are + handled right now, just above MAYBE_UNFROB_BACKGROUND_PIXMAP. + 2011-12-27 Didier Verna * faces.h (struct Lisp_Face): New 'foreback slot. diff -r c39052c921b5 -r 6fa0c5fb6154 src/faces.c --- a/src/faces.c Tue Dec 27 17:07:23 2011 +0100 +++ b/src/faces.c Tue Dec 27 18:27:59 2011 +0100 @@ -1351,16 +1351,29 @@ cachel->field##_specified = (bound || default_face); \ } while (0) -/* - * A face's background pixmap will override the face's - * background color. But the background pixmap of the - * default face should not override the background color of - * a face if the background color has been specified or - * inherited. - * - * To accomplish this we remove the background pixmap of the - * cachel and mark it as having been specified so that cachel - * merging won't override it later. + +/* #### FIXME: + + This is shaky and might not even be what's desired from time to time. Why + restrict to the default face? Somebody could want to specify the background + color of *any* face, and make it have precedence over inherited pixmaps. + + What's really needed is a more general background property: + - type: color or pixmap + - color (for the color type) + - pixmap + fg color / bg color (in case of bitmap) for the pixmap type. + + And, BTW, the foreground property could also behave like this. + + -- dvl + + A face's background pixmap will override the face's background color. But + the background pixmap of the default face should not override the + background color of a face if the background color has been specified or + inherited. + + To accomplish this we remove the background pixmap of the cachel and mark + it as having been specified so that cachel merging won't override it later. */ #define MAYBE_UNFROB_BACKGROUND_PIXMAP \ do \