mirror of
https://github.com/brl/mutter.git
synced 2024-12-23 19:42:05 +00:00
device/xi2: Translate the axis data after setting devices
We need the devices (source and virtual) to be set before translating the axis data from XI2 to the Clutter event.
This commit is contained in:
parent
dd5f6ca7e1
commit
405e611279
@ -700,12 +700,6 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
|
||||
event->scroll.modifier_state =
|
||||
_clutter_input_device_xi2_translate_state (&xev->mods,
|
||||
&xev->buttons);
|
||||
event->scroll.axes = translate_axes (event->scroll.device,
|
||||
event->scroll.x,
|
||||
event->scroll.y,
|
||||
stage_x11,
|
||||
&xev->valuators);
|
||||
|
||||
device = g_hash_table_lookup (manager_xi2->devices_by_id,
|
||||
GINT_TO_POINTER (xev->sourceid));
|
||||
_clutter_event_set_source_device (event, device);
|
||||
@ -713,6 +707,13 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
|
||||
device = g_hash_table_lookup (manager_xi2->devices_by_id,
|
||||
GINT_TO_POINTER (xev->deviceid));
|
||||
_clutter_event_set_device (event, device);
|
||||
|
||||
event->scroll.axes = translate_axes (event->scroll.device,
|
||||
event->scroll.x,
|
||||
event->scroll.y,
|
||||
stage_x11,
|
||||
&xev->valuators);
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -729,11 +730,6 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
|
||||
event->button.modifier_state =
|
||||
_clutter_input_device_xi2_translate_state (&xev->mods,
|
||||
&xev->buttons);
|
||||
event->button.axes = translate_axes (event->button.device,
|
||||
event->button.x,
|
||||
event->button.y,
|
||||
stage_x11,
|
||||
&xev->valuators);
|
||||
|
||||
device = g_hash_table_lookup (manager_xi2->devices_by_id,
|
||||
GINT_TO_POINTER (xev->sourceid));
|
||||
@ -742,6 +738,12 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
|
||||
device = g_hash_table_lookup (manager_xi2->devices_by_id,
|
||||
GINT_TO_POINTER (xev->deviceid));
|
||||
_clutter_event_set_device (event, device);
|
||||
|
||||
event->button.axes = translate_axes (event->button.device,
|
||||
event->button.x,
|
||||
event->button.y,
|
||||
stage_x11,
|
||||
&xev->valuators);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -786,6 +788,12 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
|
||||
GINT_TO_POINTER (xev->deviceid));
|
||||
_clutter_event_set_device (event, device);
|
||||
|
||||
event->motion.axes = translate_axes (event->motion.device,
|
||||
event->motion.x,
|
||||
event->motion.y,
|
||||
stage_x11,
|
||||
&xev->valuators);
|
||||
|
||||
CLUTTER_NOTE (EVENT, "motion: win:0x%x device:%s (x:%.2f, y:%.2f)",
|
||||
(unsigned int) stage_x11->xwin,
|
||||
event->motion.device->device_name,
|
||||
|
Loading…
Reference in New Issue
Block a user