On Mon, 18 Dec 2023 11:19:18 GMT, Jose Pereda <[email protected]> wrote:
>> This PR replaces the deprecated `gdk_pointer_grab` with `gdk_seat_grab`, and
>> `gdk_pointer_ungrab ` with `gdk_seat_ungrab`, using runtime checks and
>> wrapped functions for GTK 3.20+ (so systems without it still run with GTK
>> 3.8+), and fixes the dragging issue on Wayland.
>
> Jose Pereda has updated the pull request incrementally with one additional
> commit since the last revision:
>
> Add compile-time checks to GdkSeat
The rationale was:
This tells which events get delivered to the window while grabbing. XWayland
might be sensitive to `GDK_TOUCH_MASK` while Xorg is not.
So the Idea was to keep the current way (with `gdk_pointer_grab` or
`gdk_device_grab`, and adding the "deliver TOUCH events to me" might fix it.
Another place to investigate is:
#define GDK_FILTERED_EVENTS_MASK static_cast<GdkEventMask>(GDK_ALL_EVENTS_MASK \
& ~GDK_TOUCH_MASK)
It seems that Xorg converts touch events to regular mouse events, but XWayland
might be different.
-------------
PR Comment: https://git.openjdk.org/jfx/pull/1305#issuecomment-1952278279