Rémi Bernon (@rbernon) commented about dlls/winewayland.drv/wayland_pointer.c:
+static void pointer_unlock_surface(void) +{
- pthread_mutex_unlock(&process_wayland.pointer.surface->mutex);
- pthread_mutex_unlock(&process_wayland.pointer.mutex);
+}
static void pointer_handle_motion(void *data, struct wl_pointer *wl_pointer, uint32_t time, wl_fixed_t sx, wl_fixed_t sy) {
- INPUT input = {0};
- RECT window_rect;
- struct wayland_surface *surface;
- int screen_x, screen_y;
- if (!(surface = pointer_lock_surface())) return;
We get `enter, motion*, leave` sequences, can we instead assume that the hwnd under the cursor stays the same?