From 18da0d8ad4e5036185acbad3238cbfe2aaf3ca66 Mon Sep 17 00:00:00 2001 From: Dmitry Antipov Date: Wed, 18 Sep 2013 13:23:10 +0400 Subject: * frame.c (x_redo_mouse_highlight): New function to factor out common code used in W32 and X ports. * dispextern.h (x_redo_mouse_highlight): Add prototype. * xterm.h (struct x_display_info): * w32term.h (struct w32_display_info): * nsterm.h (struct ns_display_info): New members last_mouse_motion_frame, last_mouse_motion_x and last_mouse_motion_y, going to replace static variables below. * xterm.c (last_mouse_motion_event, last_mouse_motion_frame) (redo_mouse_highlight): Remove. (note_mouse_movement, syms_of_xterm): Adjust user. (handle_one_xevent): Likewise. Use x_redo_mouse_highlight. * w32term.c (last_mouse_motion_event, last_mouse_motion_frame) (redo_mouse_highlight): Remove. (note_mouse_movement, syms_of_w32term): Adjust user. (w32_read_socket): Likewise. Use x_redo_mouse_highlight. * nsterm.m (last_mouse_motion_position, last_mouse_motion_frame): Remove. (note_mouse_movement, mouseMoved, syms_of_nsterm): * nsfns.m (compute_tip_xy): Adjust user. --- src/frame.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/frame.c') diff --git a/src/frame.c b/src/frame.c index a31bf35aa6b..997cc9c73ae 100644 --- a/src/frame.c +++ b/src/frame.c @@ -3442,6 +3442,19 @@ bool x_mouse_grabbed (Display_Info *dpyinfo) && FRAME_LIVE_P (dpyinfo->last_mouse_frame)); } +/* Re-highlight something with mouse-face properties + on DPYINFO using saved frame and mouse position. */ + +void +x_redo_mouse_highlight (Display_Info *dpyinfo) +{ + if (dpyinfo->last_mouse_motion_frame + && FRAME_LIVE_P (dpyinfo->last_mouse_motion_frame)) + note_mouse_highlight (dpyinfo->last_mouse_motion_frame, + dpyinfo->last_mouse_motion_x, + dpyinfo->last_mouse_motion_y); +} + /* Subroutines of creating an X frame. */ /* Make sure that Vx_resource_name is set to a reasonable value. -- cgit v1.2.1