# HG changeset patch # User Eli Zaretskii # Date 946396589 0 # Node ID c56e0e887ba40a1cce33358e7ff11520e13d9de8 # Parent 78e14b5e988cc8cd71944043d36b837c86563096 (struct display_info): New. (struct x_output): Add the display_info member. (FRAME_X_DISPLAY_INFO): New macro. diff -r 78e14b5e988c -r c56e0e887ba4 src/ChangeLog Binary file src/ChangeLog has changed diff -r 78e14b5e988c -r c56e0e887ba4 src/msdos.h --- a/src/msdos.h Tue Dec 28 13:08:05 1999 +0000 +++ b/src/msdos.h Tue Dec 28 15:56:29 1999 +0000 @@ -55,6 +55,33 @@ #define PIX_TYPE int #define XDISPLAY +/* A stripped version of struct x_display_info in xterm.h, which see. */ +struct display_info +{ + /* These variables describe the range of text currently shown in its + mouse-face, together with the window they apply to. As long as + the mouse stays within this range, we need not redraw anything on + its account. Rows and columns are glyph matrix positions in + MOUSE_FACE_WINDOW. */ + int mouse_face_beg_row, mouse_face_beg_col; + int mouse_face_end_row, mouse_face_end_col; + int mouse_face_past_end; + Lisp_Object mouse_face_window; + int mouse_face_face_id; + + /* 1 if a mouse motion event came and we didn't handle it right away because + gc was in progress. */ + int mouse_face_deferred_gc; + + /* FRAME and X, Y position of mouse when last checked for + highlighting. X and Y can be negative or out of range for the frame. */ + struct frame *mouse_face_mouse_frame; + int mouse_face_mouse_x, mouse_face_mouse_y; + + /* Nonzero means defer mouse-motion highlighting. */ + int mouse_face_defer; +}; + /* This is a cut-down version of the one in xterm.h, which see. */ struct x_output { @@ -66,6 +93,7 @@ XFontStruct *font; /* used in x-popup-menu (xmenu.c) */ Window busy_window; /* currently unused (but maybe some day) */ unsigned busy_p : 1; /* ditto */ + struct display_info display_info; /* used for drawing mouse highlight */ }; extern struct x_output the_only_x_display; @@ -74,6 +102,7 @@ #define FRAME_FOREGROUND_PIXEL(f) (the_only_x_display.foreground_pixel) #define FRAME_BACKGROUND_PIXEL(f) (the_only_x_display.background_pixel) #define FRAME_FONT(f) (the_only_x_display.font) +#define FRAME_X_DISPLAY_INFO(f) (&the_only_x_display.display_info) /* Prototypes. */