This function returns the hardware (slave) #GdkDevice that has
triggered the event, falling back to the virtual (master) device
(as in gdk_event_get_device()) if the event wasn’t caused by
interaction with a hardware device. This may happen for example
in synthesized crossing events after a #GdkWindow updates its
geometry or a grab is acquired/released.
If the event does not contain a device field, this function will
return %NULL.
This function returns the hardware (slave) #GdkDevice that has triggered the event, falling back to the virtual (master) device (as in gdk_event_get_device()) if the event wasn’t caused by interaction with a hardware device. This may happen for example in synthesized crossing events after a #GdkWindow updates its geometry or a grab is acquired/released.
If the event does not contain a device field, this function will return %NULL.