This function returns the hardware (slave) gdk.Device that has
triggered the event, falling back to the virtual (master) device
(as in Event.getDevice) if the event wasn’t caused by
interaction with a hardware device. This may happen for example
in synthesized crossing events after a gdk.Window 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) gdk.Device that has triggered the event, falling back to the virtual (master) device (as in Event.getDevice) if the event wasn’t caused by interaction with a hardware device. This may happen for example in synthesized crossing events after a gdk.Window updates its geometry or a grab is acquired/released.
If the event does not contain a device field, this function will return NULL.