Skip to content

gdk: always populate GDK_AXIS_{X,Y} in merged event history

hemidark requested to merge hemidark/gtk:push-history-position-fix into main

Since GdkTimeCoord stores only axis values, prior to this change, if a device didn't report GDK_AXIS_X or GDK_AXIS_Y, the history attached to merged motion events wouldn't contain any positional information.

Commit 60122760 already addressed this issue for devices without tools by storing the event position in GdkTimeCoord using GDK_AXIS_X and GDK_AXIS_Y and augmenting the GdkTimeCoord's axis bitmask accordingly.

This change generalizes that workaround to all devices. Note that if a device DOES report values for GDK_AXIS_X and GDK_AXIS_Y, those values won't be overwritten.

Closes #4809 (closed)

Merge request reports