Rémi Bernon (@rbernon) commented about dlls/winewayland.drv/wayland_pointer.c:
- if (!(surface = wayland_surface_lock_hwnd(hwnd))) return;
- window_rect = surface->window.rect;
- wayland_surface_coords_to_window(surface,
wl_fixed_to_double(dx),
wl_fixed_to_double(dy),
(int *)&screen.x, (int *)&screen.y);
- pthread_mutex_unlock(&surface->mutex);
- if (screen.x >= 0)
- {
origin.x = window_rect.left;
screen.x += origin.x;
if (screen.x >= window_rect.right) screen.x = window_rect.right - 1;
Why forbidding relative motion larger than the window?