k->x = wx;
k->y = wy;
k->state = msk;
+// also clear modifiers state if a key is to be released
+ if( !press ) k->state = 0;
k->keycode = key;
k->same_screen = 1;
wdw->top_level->put_event((XEvent *) k);
fprintf(stderr, "key(%d, %d) out of range\n", code + EVENT_CODE_KEY1, value);
return;
}
+// Show help if Alt is pressed on the keyboard together with a shuttle button
+ if( wdw && wdw->alt_down() && value ) {
+ wdw->context_help_show("Shuttle key default arrangement");
+ return;
+ }
send_stroke_sequence(value ? KJS_KEY_DOWN : KJS_KEY_UP, code);
}
} shuttle_devs[] = {
{ "/dev/input/by-id/usb-Contour_Design_ShuttleXpress-event-if00",
0x0b33, 0x0020 },
+ { "/dev/input/by-id/usb-Contour_Design_ShuttleXpress-event-mouse",
+ 0x0b33, 0x0020 },
{ "/dev/input/by-id/usb-Contour_Design_ShuttlePRO_v2-event-if00",
0x0b33, 0x0030 },
+ { "/dev/input/by-id/usb-Contour_Design_ShuttlePRO_v2-event-mouse",
+ 0x0b33, 0x0030 },
{ "/dev/input/by-id/usb-Contour_Design_ShuttlePro-event-if00",
0x0b33, 0x0030 },
+ { "/dev/input/by-id/usb-Contour_Design_ShuttlePro-event-mouse",
+ 0x0b33, 0x0030 },
{ "/dev/input/by-id/usb-Contour_Design_ShuttlePRO_v2-event-joystick",
0x0b33, 0x0030 },
};