mirror of https://github.com/libsdl-org/SDL.git
Fixed detection of function keys on Emscripten
Fixes https://github.com/libsdl-org/SDL/issues/11973
This commit is contained in:
parent
23410debf7
commit
67382e9c83
|
|
@ -482,6 +482,17 @@ static EM_BOOL Emscripten_HandleTouch(int eventType, const EmscriptenTouchEvent
|
||||||
return preventDefault;
|
return preventDefault;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool IsFunctionKey(SDL_Scancode scancode)
|
||||||
|
{
|
||||||
|
if (scancode >= SDL_SCANCODE_F1 && scancode <= SDL_SCANCODE_F12) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (scancode >= SDL_SCANCODE_F13 && scancode <= SDL_SCANCODE_F24) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/* This is a great tool to see web keyboard events live:
|
/* This is a great tool to see web keyboard events live:
|
||||||
* https://w3c.github.io/uievents/tools/key-event-viewer.html
|
* https://w3c.github.io/uievents/tools/key-event-viewer.html
|
||||||
*/
|
*/
|
||||||
|
|
@ -557,7 +568,7 @@ static EM_BOOL Emscripten_HandleKey(int eventType, const EmscriptenKeyboardEvent
|
||||||
(scancode == SDL_SCANCODE_UP) ||
|
(scancode == SDL_SCANCODE_UP) ||
|
||||||
(scancode == SDL_SCANCODE_RIGHT) ||
|
(scancode == SDL_SCANCODE_RIGHT) ||
|
||||||
(scancode == SDL_SCANCODE_DOWN) ||
|
(scancode == SDL_SCANCODE_DOWN) ||
|
||||||
((scancode >= SDL_SCANCODE_F1) && (scancode <= SDL_SCANCODE_F15)) ||
|
IsFunctionKey(scancode) ||
|
||||||
keyEvent->ctrlKey) {
|
keyEvent->ctrlKey) {
|
||||||
is_nav_key = true;
|
is_nav_key = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue