You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
global.get_pointer() does not track touch input, so when initiating a drag via
touchscreen we would be incorrectly tracking the mouse position instead.
Unfortunately, in GNOME 50 there is no API to get information on the touch
point that is driving the window drag from Display::grab-op-begin.
The best we can do is track global events happening before grab-op-begin and
try to infer which touch point is driving the drag. Specifically, the global
stage receives a LEAVE event from the device starting the window drag
immediatly prior to Display::grab-op-begin.
For this implementation we use the Clutter.Sprite API which is new in GNOME 49,
and specifically Cluter.Sprite::get_coords() which is new in GNOME 50, but we
fall-back to global.get_pointer() to support older shell versions, where
however the bug will not be fixed.
0 commit comments