Skip to content

Commit a4e3620

Browse files
committed
xinput: add DeviceChangedEvent support
1 parent a1f18f0 commit a4e3620

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

Xlib/ext/xinput.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -618,6 +618,15 @@ def ungrab_keycode(self, deviceid, keycode, modifiers):
618618
ButtonState('buttons'),
619619
)
620620

621+
DeviceChangedEventData = rq.Struct(
622+
DEVICEID('deviceid'),
623+
rq.Card32('time'),
624+
rq.LengthOf('classes', 2),
625+
DEVICEID('sourceid'),
626+
rq.Card8('reason'),
627+
rq.Pad(11),
628+
rq.List('classes', ClassInfo),
629+
)
621630

622631
def init(disp, info):
623632
disp.extension_add_method('display', 'xinput_query_version', query_version)
@@ -630,4 +639,5 @@ def init(disp, info):
630639

631640
for device_event in (ButtonPress, ButtonRelease, KeyPress, KeyRelease, Motion):
632641
disp.ge_add_event_data(info.major_opcode, device_event, DeviceEventData)
642+
disp.ge_add_event_data(info.major_opcode, DeviceChanged, DeviceEventData)
633643
disp.ge_add_event_data(info.major_opcode, HierarchyChanged, HierarchyEventData)

0 commit comments

Comments
 (0)