+2001-03-21 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c (x_update_window_end): Handle overwritten mouse face
+ also for tool bar windows.
+ (show_mouse_face): Set the glyph row's mouse_face_p flag also when
+ DRAW is DRAW_IMAGE_RAISED.
+
2001-03-20 Gerd Moellmann <gerd@gnu.org>
* print.c (syms_of_print): Doc fixes.
struct window *w;
int cursor_on_p, mouse_face_overwritten_p;
{
+ struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (XFRAME (w->frame));
+
if (!w->pseudo_window_p)
{
- struct x_display_info *dpyinfo
- = FRAME_X_DISPLAY_INFO (XFRAME (w->frame));
-
BLOCK_INPUT;
- /* If a row with mouse-face was overwritten, arrange for
- XTframe_up_to_date to redisplay the mouse highlight. */
- if (mouse_face_overwritten_p)
- {
- dpyinfo->mouse_face_beg_row = dpyinfo->mouse_face_beg_col = -1;
- dpyinfo->mouse_face_end_row = dpyinfo->mouse_face_end_col = -1;
- dpyinfo->mouse_face_window = Qnil;
- }
-
if (cursor_on_p)
x_display_and_set_cursor (w, 1, output_cursor.hpos,
output_cursor.vpos,
UNBLOCK_INPUT;
}
+ /* If a row with mouse-face was overwritten, arrange for
+ XTframe_up_to_date to redisplay the mouse highlight. */
+ if (mouse_face_overwritten_p)
+ {
+ dpyinfo->mouse_face_beg_row = dpyinfo->mouse_face_beg_col = -1;
+ dpyinfo->mouse_face_end_row = dpyinfo->mouse_face_end_col = -1;
+ dpyinfo->mouse_face_window = Qnil;
+ }
+
updated_window = NULL;
}
int i;
Lisp_Object enabled_p;
int prop_idx;
- enum draw_glyphs_face draw = DRAW_IMAGE_RAISED;
+ enum draw_glyphs_face draw;
int mouse_down_p, rc;
/* Function note_mouse_highlight is called with negative x(y
return;
}
else if (rc == 0)
- /* On same tool-bar item as before. */
goto set_help_echo;
clear_mouse_face (dpyinfo);
if (end_hpos > start_hpos)
{
- row->mouse_face_p = draw == DRAW_MOUSE_FACE;
+ row->mouse_face_p = draw == DRAW_MOUSE_FACE || DRAW_IMAGE_RAISED;
x_draw_glyphs (w, start_x, row, TEXT_AREA,
start_hpos, end_hpos, draw, NULL, NULL, 0);
}