diff options
-rw-r--r-- | engines/kyra/gui_eob.cpp | 10 | ||||
-rw-r--r-- | engines/kyra/gui_lol.cpp | 12 |
2 files changed, 22 insertions, 0 deletions
diff --git a/engines/kyra/gui_eob.cpp b/engines/kyra/gui_eob.cpp index d60fa47571..611eab1bff 100644 --- a/engines/kyra/gui_eob.cpp +++ b/engines/kyra/gui_eob.cpp @@ -29,6 +29,7 @@ #include "kyra/timer.h" #include "kyra/util.h" +#include "backends/keymapper/keymapper.h" #include "common/system.h" #include "common/savefile.h" #include "graphics/scaler.h" @@ -2419,6 +2420,11 @@ void GUI_EoB::updateBoxFrameHighLight(int box) { } int GUI_EoB::getTextInput(char *dest, int x, int y, int destMaxLen, int textColor1, int textColor2, int cursorColor) { +#ifdef ENABLE_KEYMAPPER + Common::Keymapper *const keymapper = _vm->getEventManager()->getKeymapper(); + keymapper->pushKeymap(Common::kGlobalKeymapName); +#endif + uint8 cursorState = 1; char sufx[] = " "; @@ -2533,6 +2539,10 @@ int GUI_EoB::getTextInput(char *dest, int x, int y, int destMaxLen, int textColo } while (_keyPressed.keycode != Common::KEYCODE_RETURN && _keyPressed.keycode != Common::KEYCODE_ESCAPE && !_vm->shouldQuit()); +#ifdef ENABLE_KEYMAPPER + keymapper->popKeymap(Common::kGlobalKeymapName); +#endif + return _keyPressed.keycode == Common::KEYCODE_ESCAPE ? -1 : len; } diff --git a/engines/kyra/gui_lol.cpp b/engines/kyra/gui_lol.cpp index 80052c70f2..b025aefbd0 100644 --- a/engines/kyra/gui_lol.cpp +++ b/engines/kyra/gui_lol.cpp @@ -35,6 +35,8 @@ #include "graphics/scaler.h" +#include "backends/keymapper/keymapper.h" + #include "base/version.h" namespace Kyra { @@ -2549,6 +2551,11 @@ int GUI_LoL::getInput() { if (!_displayMenu) return 0; +#ifdef ENABLE_KEYMAPPER + Common::Keymapper *const keymapper = _vm->getEventManager()->getKeymapper(); + keymapper->pushKeymap(Common::kGlobalKeymapName); +#endif + Common::Point p = _vm->getMousePos(); _vm->_mouseX = p.x; _vm->_mouseY = p.y; @@ -2585,6 +2592,11 @@ int GUI_LoL::getInput() { _displayMenu = false; _vm->delay(8); + +#ifdef ENABLE_KEYMAPPER + keymapper->popKeymap(Common::kGlobalKeymapName); +#endif + return inputFlag & 0x8000 ? 1 : 0; } |