The ::device-changed signal is emitted whenever a device
has changed in the hierarchy, either slave devices being
disconnected from their master device or connected to
another one, or master devices being added or removed
a slave device.
If a slave device is detached from all master devices
(Device.getAssociatedDevice returns NULL), its
GdkDeviceType will change to GDK_DEVICE_TYPE_FLOATING,
if it's attached, it will change to GDK_DEVICE_TYPE_SLAVE.
The ::device-changed signal is emitted whenever a device has changed in the hierarchy, either slave devices being disconnected from their master device or connected to another one, or master devices being added or removed a slave device.
If a slave device is detached from all master devices (Device.getAssociatedDevice returns NULL), its GdkDeviceType will change to GDK_DEVICE_TYPE_FLOATING, if it's attached, it will change to GDK_DEVICE_TYPE_SLAVE.