Mercurial > emacs
changeset 5987:040bdc2fec7c
(dumpglyphs): Try various alternatives for foreground color
of a glyph with the cursor on it.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 18 Feb 1994 01:01:51 +0000 |
parents | fdb3959bbaf7 |
children | aaf6fe5d0a54 |
files | src/xterm.c |
diffstat | 1 files changed, 19 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xterm.c Thu Feb 17 23:33:02 1994 +0000 +++ b/src/xterm.c Fri Feb 18 01:01:51 1994 +0000 @@ -569,7 +569,25 @@ unsigned long mask; xgcv.background = f->display.x->cursor_pixel; - xgcv.foreground = f->display.x->cursor_foreground_pixel; + if (face == FRAME_DEFAULT_FACE (f)) + xgcv.foreground = f->display.x->cursor_foreground_pixel; + else + xgcv.foreground = face->foreground; + /* If the glyph would be invisible, + try a different foreground. */ + if (xgcv.foreground == xgcv.background) + xgcv.foreground = face->background; + if (xgcv.foreground == xgcv.background) + xgcv.foreground = f->display.x->cursor_foreground_pixel; + if (xgcv.foreground == xgcv.background) + xgcv.foreground = face->foreground; + /* Make sure the cursor is distinct from text in this face. */ + if (xgcv.background == face->background + && xgcv.foreground == face->foreground) + { + xgcv.background = face->foreground; + xgcv.foreground = face->background; + } xgcv.font = face->font->fid; xgcv.graphics_exposures = 0; mask = GCForeground | GCBackground | GCFont | GCGraphicsExposures;