|
@@ -313,6 +313,8 @@ static SDL_Scancode Android_Keycodes[] = {
|
|
|
SDL_SCANCODE_PASTE, /* AKEYCODE_PASTE */
|
|
|
};
|
|
|
|
|
|
+static SDL_bool SDL_screen_keyboard_shown;
|
|
|
+
|
|
|
static SDL_Scancode TranslateKeycode(int keycode)
|
|
|
{
|
|
|
SDL_Scancode scancode = SDL_SCANCODE_UNKNOWN;
|
|
@@ -345,11 +347,20 @@ void Android_ShowScreenKeyboard(_THIS, SDL_Window *window)
|
|
|
{
|
|
|
SDL_VideoData *videodata = _this->driverdata;
|
|
|
Android_JNI_ShowScreenKeyboard(&videodata->textRect);
|
|
|
+ SDL_screen_keyboard_shown = SDL_TRUE;
|
|
|
}
|
|
|
|
|
|
void Android_HideScreenKeyboard(_THIS, SDL_Window *window)
|
|
|
{
|
|
|
Android_JNI_HideScreenKeyboard();
|
|
|
+ SDL_screen_keyboard_shown = SDL_FALSE;
|
|
|
+}
|
|
|
+
|
|
|
+void Android_RestoreScreenKeyboardOnResume(_THIS, SDL_Window *window)
|
|
|
+{
|
|
|
+ if (SDL_screen_keyboard_shown) {
|
|
|
+ Android_ShowScreenKeyboard(_this, window);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
SDL_bool Android_IsScreenKeyboardShown(_THIS, SDL_Window *window)
|