From 55f198414bda52449f1aa3c375419d4638a96f50 Mon Sep 17 00:00:00 2001 From: Shamus Hammons Date: Sat, 7 Dec 2013 11:21:41 -0600 Subject: [PATCH] Fixed sticky keys on keyboard input handler. No longer sticky! :-D --- src/gui/mainwin.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/gui/mainwin.cpp b/src/gui/mainwin.cpp index 482b9cd..d05599d 100644 --- a/src/gui/mainwin.cpp +++ b/src/gui/mainwin.cpp @@ -567,12 +567,27 @@ void MainWin::HandleKeys(QKeyEvent * e, bool state) else if (e->key() == (int)vjs.p2KeyBindings[BUTTON_D]) keyHeld[P2DOWN] = state; +#if 0 // Next, check for conflicts and bail out if there are any... if ((keyHeld[P1LEFT] && keyHeld[P1RIGHT]) || (keyHeld[P1UP] && keyHeld[P1DOWN]) || (keyHeld[P2LEFT] && keyHeld[P2RIGHT]) || (keyHeld[P2UP] && keyHeld[P2DOWN])) return; +#else + // Next, check for conflicts and kill 'em if there are any... + if (keyHeld[P1LEFT] && keyHeld[P1RIGHT]) + keyHeld[P1LEFT] = keyHeld[P1RIGHT] = false; + + if (keyHeld[P1UP] && keyHeld[P1DOWN]) + keyHeld[P1UP] = keyHeld[P1DOWN] = false; + + if (keyHeld[P2LEFT] && keyHeld[P2RIGHT]) + keyHeld[P2LEFT] = keyHeld[P2RIGHT] = false; + + if (keyHeld[P2UP] && keyHeld[P2DOWN]) + keyHeld[P2UP] = keyHeld[P2DOWN] = false; +#endif #endif #endif -- 2.37.2