Add SDL_SCANCODE_SOFTLEFT and SDL_SCANCODE_SOFTRIGHT
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
diff --git a/include/SDL_keycode.h b/include/SDL_keycode.h
index 3560254..5e8edcb 100644
--- a/include/SDL_keycode.h
+++ b/include/SDL_keycode.h
@@ -318,7 +318,10 @@ typedef enum
SDLK_APP2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP2),
SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND),
- SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD)
+ SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD),
+
+ SDLK_SOFTLEFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTLEFT),
+ SDLK_SOFTRIGHT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTRIGHT)
} SDL_KeyCode;
/**
diff --git a/include/SDL_scancode.h b/include/SDL_scancode.h
index 5b2c67c..f203e30 100644
--- a/include/SDL_scancode.h
+++ b/include/SDL_scancode.h
@@ -402,6 +402,24 @@ typedef enum
/* @} *//* Usage page 0x0C (additional media keys) */
+ /**
+ * \name Mobile keys
+ *
+ * These are values that are often used on mobile phones.
+ */
+ /* @{ */
+
+ SDL_SCANCODE_SOFTLEFT = 287, /**< Usually situated below the display on phones and
+ used as a multi-function feature key for selecting
+ a software defined function shown on the bottom left
+ of the display. */
+ SDL_SCANCODE_SOFTRIGHT = 288, /**< Usually situated below the display on phones and
+ used as a multi-function feature key for selecting
+ a software defined function shown on the bottom right
+ of the display. */
+
+ /* @} *//* Mobile keys */
+
/* Add any other keys here. */
SDL_NUM_SCANCODES = 512 /**< not a key, just marks the number of scancodes
diff --git a/src/events/SDL_keyboard.c b/src/events/SDL_keyboard.c
index 14e79ca..100e6aa 100644
--- a/src/events/SDL_keyboard.c
+++ b/src/events/SDL_keyboard.c
@@ -282,6 +282,8 @@ static const SDL_Keycode SDL_default_keymap[SDL_NUM_SCANCODES] = {
SDLK_APP2,
SDLK_AUDIOREWIND,
SDLK_AUDIOFASTFORWARD,
+ SDLK_SOFTLEFT,
+ SDLK_SOFTRIGHT,
};
static const char *SDL_scancode_names[SDL_NUM_SCANCODES] = {
@@ -518,6 +520,8 @@ static const char *SDL_scancode_names[SDL_NUM_SCANCODES] = {
"App2",
"AudioRewind",
"AudioFastForward",
+ "SoftLeft",
+ "SoftRight",
};
/* Taken from SDL_iconv() */
diff --git a/src/video/android/SDL_androidkeyboard.c b/src/video/android/SDL_androidkeyboard.c
index 635a22e..ce79883 100644
--- a/src/video/android/SDL_androidkeyboard.c
+++ b/src/video/android/SDL_androidkeyboard.c
@@ -41,8 +41,8 @@ void Android_InitKeyboard(void)
static SDL_Scancode Android_Keycodes[] = {
SDL_SCANCODE_UNKNOWN, /* AKEYCODE_UNKNOWN */
- SDL_SCANCODE_UNKNOWN, /* AKEYCODE_SOFT_LEFT */
- SDL_SCANCODE_UNKNOWN, /* AKEYCODE_SOFT_RIGHT */
+ SDL_SCANCODE_SOFTLEFT, /* AKEYCODE_SOFT_LEFT */
+ SDL_SCANCODE_SOFTRIGHT, /* AKEYCODE_SOFT_RIGHT */
SDL_SCANCODE_AC_HOME, /* AKEYCODE_HOME */
SDL_SCANCODE_AC_BACK, /* AKEYCODE_BACK */
SDL_SCANCODE_UNKNOWN, /* AKEYCODE_CALL */
diff --git a/src/video/ngage/SDL_ngageevents.cpp b/src/video/ngage/SDL_ngageevents.cpp
index 239f6b6..4909354 100644
--- a/src/video/ngage/SDL_ngageevents.cpp
+++ b/src/video/ngage/SDL_ngageevents.cpp
@@ -116,10 +116,10 @@ static SDL_Scancode ConvertScancode(_THIS, int key)
keycode = SDLK_SLASH;
break;
case EStdKeyDevice0: // Left softkey
- keycode = SDLK_F1;
+ keycode = SDLK_SOFTLEFT;
break;
case EStdKeyDevice1: // Right softkey
- keycode = SDLK_F2;
+ keycode = SDLK_SOFTRIGHT;
break;
case EStdKeyApplication0: // Green softkey
keycode = SDLK_F3;