Further fixes to work around certain accelerators being missed, and additional command bleed-through.

This commit is contained in:
Areloch 2015-09-27 15:43:47 -05:00
parent 4c13906865
commit 9f7513dc0b

View file

@ -90,7 +90,9 @@ void WindowInputGenerator::generateInputEvent( InputEventInfo &inputEvent )
for (int i = 0; i < mAcceleratorMap.size(); ++i) for (int i = 0; i < mAcceleratorMap.size(); ++i)
{ {
const AccKeyMap &acc = mAcceleratorMap[i]; const AccKeyMap &acc = mAcceleratorMap[i];
if( acc.modifier & inputEvent.modifier && acc.keyCode == inputEvent.objInst ) if (!mWindow->getKeyboardTranslation() &&
(acc.modifier & inputEvent.modifier || (acc.modifier == 0 && inputEvent.modifier == 0))
&& acc.keyCode == inputEvent.objInst)
{ {
Con::evaluatef(acc.cmd); Con::evaluatef(acc.cmd);
return; return;
@ -106,9 +108,7 @@ void WindowInputGenerator::generateInputEvent( InputEventInfo &inputEvent )
return; return;
if (mWindow->getKeyboardTranslation()) if (mWindow->getKeyboardTranslation())
{
return; return;
}
// If we get here we failed to process it with anything prior... so let // If we get here we failed to process it with anything prior... so let
// the ActionMap handle it. // the ActionMap handle it.