-
Notifications
You must be signed in to change notification settings - Fork 162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix SDL double input #782
fix SDL double input #782
Conversation
I can confirm that this also fixes this problem on Windows (compare with 2023.11.0 at least the portable one has bugs like Space being useless to pause, and Numpad +/- doing -2/+2 in the editor). I'll go through the unchecked items and fix those, it could be that I'm forgetting some places I just never use but those can always be fixed later. I think the list in the ticket covers all the important places anyway |
006a275
to
6b27ef9
Compare
I think this is ready for testing now. Please test the CI artifact and/or the branch and comment any input fields I've missed (or other input weirdness) on this ticket. The various Options screens, Party mode and Jukebox mode are particularly in need of testing, as those are the areas that I seldom/never use myself. |
I've asked a few people on Discord to test this and they could find no issues. I'm pretty confident that the editor, player names and song selection have no issues, whether you use the mouse or the keyboard or a combination thereof. I'm slightly less confident about Jukebox and Party, because while I did of course fix the obvious things, it's possible I've missed an edge case somewhere. I'll merge this tomorrow and I guess we'll figure out if/what was missed once 2024.1.0 is out. I do think that having a working editor and pausing with space is more important. |
fixes #743
this attempts to fix the double keypresses that cause issues like "pause not working" by defaulting to
SDL_StopTextInput
and only explicitly enabling (and subsequently disabling) it when we actually need it. Drawbacks are that manual disabling is required, although it will eventually fix itself if you go through a couple of screens/fields.FOR THE TIME BEING THIS IS A DRAFT UNTIL MORE TESTING HAS BEEN DONE. Currently, at least the following unchecked areas still need attention:
However, the upside is that it will generally manifest as "I can't edit field x on screen y". If you discover a non-working input field not covered by any of the _un_checked items above, please report them as a comment on this ticket.
I still don't like the
SDL_KEYDOWN, SDL_TEXTINPUT:
handler in UMain, but rewriting that is something I wouldn't consider until this has been merged for a while.