diff options
author | D G Turner | 2014-04-29 00:24:47 +0100 |
---|---|---|
committer | D G Turner | 2014-04-29 00:24:47 +0100 |
commit | 1544feb02cb72c1d63f2d5da743412b4b887ab14 (patch) | |
tree | 8d2eb5e65788a25b461870e80b0ba7cfdab3815c /backends/events/maemosdl | |
parent | 4ebbdaa59ba446d1ad69be083dad73b54691920a (diff) | |
download | scummvm-rg350-1544feb02cb72c1d63f2d5da743412b4b887ab14.tar.gz scummvm-rg350-1544feb02cb72c1d63f2d5da743412b4b887ab14.tar.bz2 scummvm-rg350-1544feb02cb72c1d63f2d5da743412b4b887ab14.zip |
MAEMO: Use virtual keyboard event directly, rather than using keycode.
As the virtual keyboard trigger has been moved to CTRL-F7, the previous
code which generates a unmodified F7 event to do this will not work.
Rather than just adding the CTRL modifier, this code changes the
backend to directly generate the virtual keyboard trigger event
directly. This avoids any future breakage if the key combination is
changed again.
Diffstat (limited to 'backends/events/maemosdl')
-rw-r--r-- | backends/events/maemosdl/maemosdl-events.cpp | 32 |
1 files changed, 10 insertions, 22 deletions
diff --git a/backends/events/maemosdl/maemosdl-events.cpp b/backends/events/maemosdl/maemosdl-events.cpp index 5045363286..8b7514004a 100644 --- a/backends/events/maemosdl/maemosdl-events.cpp +++ b/backends/events/maemosdl/maemosdl-events.cpp @@ -86,12 +86,11 @@ bool MaemoSdlEventSource::remapKey(SDL_Event &ev, Common::Event &event) { return true; } else if (ev.key.keysym.sym == SDLK_F6) { if (!model.hasHwKeyboard) { - event.type = Common::EVENT_KEYDOWN; - event.kbd.keycode = Common::KEYCODE_F7; - event.kbd.ascii = Common::ASCII_F7; - event.kbd.flags = 0; - debug(9, "remapping to F7 down (virtual keyboard)"); +#ifdef ENABLE_VKEYBD + event.type = Common::EVENT_VIRTUAL_KEYBOARD; + debug(9, "remapping to virtual keyboard trigger"); return true; +#endif } else { // handled in keyup } @@ -102,12 +101,11 @@ bool MaemoSdlEventSource::remapKey(SDL_Event &ev, Common::Event &event) { return true; } else if (ev.key.keysym.sym == SDLK_F8) { if (ev.key.keysym.mod & KMOD_CTRL) { - event.type = Common::EVENT_KEYDOWN; - event.kbd.keycode = Common::KEYCODE_F7; - event.kbd.ascii = Common::ASCII_F7; - event.kbd.flags = 0; - debug(9, "remapping to F7 down (virtual keyboard)"); +#ifdef ENABLE_VKEYBD + event.type = Common::EVENT_VIRTUAL_KEYBOARD; + debug(9, "remapping to virtual keyboard trigger"); return true; +#endif } else { // handled in keyup return true; @@ -125,12 +123,7 @@ bool MaemoSdlEventSource::remapKey(SDL_Event &ev, Common::Event &event) { return true; } else if (ev.key.keysym.sym == SDLK_F6) { if (!model.hasHwKeyboard) { - event.type = Common::EVENT_KEYUP; - event.kbd.keycode = Common::KEYCODE_F7; - event.kbd.ascii = Common::ASCII_F7; - event.kbd.flags = 0; - debug(9, "remapping to F7 down (virtual keyboard)"); - return true; + // handled in keydown } else { bool currentState = ((OSystem_SDL *)g_system)->getGraphicsManager()->getFeatureState(OSystem::kFeatureFullscreenMode); g_system->beginGFXTransaction(); @@ -146,12 +139,7 @@ bool MaemoSdlEventSource::remapKey(SDL_Event &ev, Common::Event &event) { return true; } else if (ev.key.keysym.sym == SDLK_F8) { if (ev.key.keysym.mod & KMOD_CTRL) { - event.type = Common::EVENT_KEYUP; - event.kbd.keycode = Common::KEYCODE_F7; - event.kbd.ascii = Common::ASCII_F7; - event.kbd.flags = 0; - debug(9, "remapping to F7 up (virtual keyboard)"); - return true; + // handled in key down } else { toggleClickMode(); debug(9, "remapping to click toggle"); |