Conversation
using setButtonDownEvent and setButtonUpEvent with non-US keyboard layouts sends the identifier from the keymap, not the keycode, this leads to some keys not registering at all (e.g. the "`" key between the esc and tab keys, on my azerty keyboard "²", reports as <` -> none "²"> when printing Ursina.win.get_keyboard_map()`, resulting in no event being triggered) when using the Raw versions, the event gets triggered with the scancode and therefore correctly reports "`" to the input method since buttonHold (setButtonRepeatEvent) triggers from a repeated Keystroke, this is not relevant there (as it also does not have a raw version, and is not used for held_keys)
|
This breaks key combinations, like Shift+Q to trigger the exit_button. |
|
whoops, lemme see if I can fix that then (tbh, personally not a big fan of how the combo key flow is written, but that's just my opinion ofcourse) |
|
@pokepetter got some progress but running into one last bump when it comes to Considering the Thank you for considering this potential enhancement for keyboard input (and input rebinding) |
Using
setButtonDownEventandsetButtonUpEventwith non-US keyboard layouts sends the identifier from the keymap, not the scancode, this leads to some keys not registering at all (e.g. the"`"key between the esc and tab keys, on my azerty keyboard"²", reports as<` -> none "²">when printingUrsina().win.get_keyboard_map(), resulting in no event being triggered)When using the
Rawversions, the event gets triggered with the scancode and therefore correctly reports`to the input methodSince
setButtonRepeatEvent('buttonHold')references a repeated Keystroke, this is not relevant there (it also does not have a raw version, and is not used forheld_keys)