Wintab: set the right device field in the event structure

Even when sends_core is FALSE

Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3860
This commit is contained in:
Luca Bacci
2021-06-07 11:18:07 +02:00
parent 90e8d7ff1a
commit af747315d7

View File

@ -1279,6 +1279,8 @@ G_GNUC_END_IGNORE_DEPRECATIONS;
event->button.time = _gdk_win32_get_next_tick (msg->time);
if (source_device->sends_core)
gdk_event_set_device (event, device_manager->core_pointer);
else
gdk_event_set_device (event, GDK_DEVICE (source_device));
gdk_event_set_source_device (event, GDK_DEVICE (source_device));
gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
@ -1311,7 +1313,10 @@ G_GNUC_END_IGNORE_DEPRECATIONS;
{
event->motion.time = _gdk_win32_get_next_tick (msg->time);
event->motion.is_hint = FALSE;
gdk_event_set_device (event, device_manager->core_pointer);
if (source_device->sends_core)
gdk_event_set_device (event, device_manager->core_pointer);
else
gdk_event_set_device (event, GDK_DEVICE (source_device));
gdk_event_set_source_device (event, GDK_DEVICE (source_device));
gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));