if (cursor_x != x || cursor_y != y) { last_pointer_motion_time = dnow(); }
static void update_x11_pointer_position(int x, int y) {	int rc;	if (raw_fb && ! dpy) return;	/* raw_fb hack */	X_LOCK;	if (use_xwarppointer) {		/*		 * off_x and off_y not needed with XWarpPointer since		 * window is used:		 */		XWarpPointer(dpy, None, window, 0, 0, 0, 0, x + coff_x,		    y + coff_y);	} else {		XTestFakeMotionEvent_wr(dpy, scr, x + off_x + coff_x,		    y + off_y + coff_y, CurrentTime);	}	X_UNLOCK;	cursor_x = x;	cursor_y = y;	/* record the x, y position for the rfb screen as well. */	cursor_position(x, y);	/* change the cursor shape if necessary */	rc = set_cursor(x, y, get_which_cursor());	cursor_changes += rc;	last_event = last_input = last_pointer_input = time(0);}