ANDROID: Add basic keymapper support (#2026)

* ANDROID: Remove hard-coded key mappings

* ANDROID: Add default key bindings
This commit is contained in:
Cameron Cawley 2020-02-26 08:23:47 +00:00 committed by GitHub
parent 00a7626a8a
commit fffb25a47a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 23 additions and 111 deletions

View file

@ -58,76 +58,6 @@ void OSystem_Android::pushEvent(int type, int arg1, int arg2, int arg3,
switch (type) {
case JE_SYS_KEY:
switch (arg1) {
case JACTION_DOWN:
e.type = Common::EVENT_KEYDOWN;
break;
case JACTION_UP:
e.type = Common::EVENT_KEYUP;
break;
default:
LOGE("unhandled jaction on system key: %d", arg1);
return;
}
switch (arg2) {
case JKEYCODE_BACK:
if (_swap_menu_and_back) {
if (arg1 == JACTION_DOWN) {
e.type = Common::EVENT_MAINMENU;
pushEvent(e);
}
} else {
e.kbd.keycode = Common::KEYCODE_ESCAPE;
e.kbd.ascii = Common::ASCII_ESCAPE;
pushEvent(e);
}
return;
case JKEYCODE_MENU:
if (_swap_menu_and_back) {
e.kbd.keycode = Common::KEYCODE_ESCAPE;
e.kbd.ascii = Common::ASCII_ESCAPE;
pushEvent(e);
} else {
if (arg1 == JACTION_DOWN) {
e.type = Common::EVENT_MAINMENU;
pushEvent(e);
}
}
return;
case JKEYCODE_MEDIA_PAUSE:
case JKEYCODE_MEDIA_PLAY:
case JKEYCODE_MEDIA_PLAY_PAUSE:
if (arg1 == JACTION_DOWN) {
e.type = Common::EVENT_MAINMENU;
pushEvent(e);
}
return;
case JKEYCODE_CAMERA:
case JKEYCODE_SEARCH:
if (arg1 == JACTION_DOWN)
e.type = Common::EVENT_RBUTTONDOWN;
else
e.type = Common::EVENT_RBUTTONUP;
e.mouse = dynamic_cast<AndroidGraphicsManager *>(_graphicsManager)->getMousePosition();
pushEvent(e);
return;
default:
break;
}
// fall through
case JE_KEY:
switch (arg1) {
case JACTION_DOWN: