浏览代码

Removed SDL_Keysym

Sam Lantinga 1 年之前
父节点
当前提交
0dd579d40d

+ 18 - 0
docs/README-migration.md

@@ -347,6 +347,21 @@ The SDL_EVENT_WINDOW_RESIZED event is always sent, even in response to SDL_SetWi
 
 
 The SDL_EVENT_WINDOW_SIZE_CHANGED event has been removed, and you can use SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED to detect window backbuffer size changes.
 The SDL_EVENT_WINDOW_SIZE_CHANGED event has been removed, and you can use SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED to detect window backbuffer size changes.
 
 
+The keysym field of key events has been removed to remove one level of indirection, and `sym` has been renamed `key`.
+
+Code that looked like this:
+```c
+    SDL_Event event;
+    SDL_Keycode key = event.key.keysym.sym;
+    SDL_Keymod mod = event.key.keysym.mod;
+```
+now looks like this:
+```c
+    SDL_Event event;
+    SDL_Keycode key = event.key.key;
+    SDL_Keymod mod = event.key.mod;
+```
+
 The gamepad event structures caxis, cbutton, cdevice, ctouchpad, and csensor have been renamed gaxis, gbutton, gdevice, gtouchpad, and gsensor.
 The gamepad event structures caxis, cbutton, cdevice, ctouchpad, and csensor have been renamed gaxis, gbutton, gdevice, gtouchpad, and gsensor.
 
 
 The mouseX and mouseY fields of SDL_MouseWheelEvent have been renamed mouse_x and mouse_y.
 The mouseX and mouseY fields of SDL_MouseWheelEvent have been renamed mouse_x and mouse_y.
@@ -899,6 +914,9 @@ The following functions have been renamed:
 The following functions have been removed:
 The following functions have been removed:
 * SDL_IsTextInputShown()
 * SDL_IsTextInputShown()
 
 
+The following structures have been removed:
+* SDL_Keysym
+
 ## SDL_keycode.h
 ## SDL_keycode.h
 
 
 SDL_Keycode is now Uint32 and the SDLK_* constants are now defines instead of an enum, to more clearly reflect that they are a subset of the possible values of an SDL_Keycode.
 SDL_Keycode is now Uint32 and the SDLK_* constants are now defines instead of an enum, to more clearly reflect that they are a subset of the possible values of an SDL_Keycode.

+ 10 - 9
include/SDL3/SDL_events.h

@@ -301,16 +301,17 @@ typedef struct SDL_KeyboardDeviceEvent
  */
  */
 typedef struct SDL_KeyboardEvent
 typedef struct SDL_KeyboardEvent
 {
 {
-    SDL_EventType type; /**< SDL_EVENT_KEY_DOWN or SDL_EVENT_KEY_UP */
+    SDL_EventType type;     /**< SDL_EVENT_KEY_DOWN or SDL_EVENT_KEY_UP */
     Uint32 reserved;
     Uint32 reserved;
-    Uint64 timestamp;   /**< In nanoseconds, populated using SDL_GetTicksNS() */
-    SDL_WindowID windowID; /**< The window with keyboard focus, if any */
-    SDL_KeyboardID which;  /**< The keyboard instance id, or 0 if unknown or virtual */
-    Uint8 state;        /**< SDL_PRESSED or SDL_RELEASED */
-    Uint8 repeat;       /**< Non-zero if this is a key repeat */
-    Uint8 padding2;
-    Uint8 padding3;
-    SDL_Keysym keysym;  /**< The key that was pressed or released */
+    Uint64 timestamp;       /**< In nanoseconds, populated using SDL_GetTicksNS() */
+    SDL_WindowID windowID;  /**< The window with keyboard focus, if any */
+    SDL_KeyboardID which;   /**< The keyboard instance id, or 0 if unknown or virtual */
+    SDL_Scancode scancode;  /**< SDL physical key code */
+    SDL_Keycode key;        /**< SDL virtual key code */
+    SDL_Keymod mod;         /**< current key modifiers */
+    Uint16 raw;             /**< The platform dependent scancode for this event */
+    Uint8 state;            /**< SDL_PRESSED or SDL_RELEASED */
+    Uint8 repeat;           /**< Non-zero if this is a key repeat */
 } SDL_KeyboardEvent;
 } SDL_KeyboardEvent;
 
 
 /**
 /**

+ 0 - 19
include/SDL3/SDL_keyboard.h

@@ -52,25 +52,6 @@ extern "C" {
  */
  */
 typedef Uint32 SDL_KeyboardID;
 typedef Uint32 SDL_KeyboardID;
 
 
-/**
- * The SDL keysym structure, used in key events.
- *
- * If you are looking for translated character input, see the
- * SDL_EVENT_TEXT_INPUT event.
- *
- * \since This struct is available since SDL 3.0.0.
- *
- * \sa SDL_Scancode
- * \sa SDL_Keycode
- */
-typedef struct SDL_Keysym
-{
-    SDL_Scancode scancode;      /**< SDL physical key code - see SDL_Scancode for details */
-    SDL_Keycode sym;            /**< SDL virtual key code - see SDL_Keycode for details */
-    SDL_Keymod mod;             /**< current key modifiers */
-    Uint16 raw;                 /**< The platform dependent scancode for this event */
-} SDL_Keysym;
-
 /* Function prototypes */
 /* Function prototypes */
 
 
 /**
 /**

+ 8 - 8
src/events/SDL_events.c

@@ -338,14 +338,14 @@ static void SDL_LogEvent(const SDL_Event *event)
         break;
         break;
 #undef PRINT_KEYDEV_EVENT
 #undef PRINT_KEYDEV_EVENT
 
 
-#define PRINT_KEY_EVENT(event)                                                                                                   \
-    (void)SDL_snprintf(details, sizeof(details), " (timestamp=%u windowid=%u which=%u state=%s repeat=%s scancode=%u keycode=%u mod=%u)", \
-                       (uint)event->key.timestamp, (uint)event->key.windowID, (uint)event->key.which,                            \
-                       event->key.state == SDL_PRESSED ? "pressed" : "released",                                                 \
-                       event->key.repeat ? "true" : "false",                                                                     \
-                       (uint)event->key.keysym.scancode,                                                                         \
-                       (uint)event->key.keysym.sym,                                                                              \
-                       (uint)event->key.keysym.mod)
+#define PRINT_KEY_EVENT(event)                                                                                                              \
+    (void)SDL_snprintf(details, sizeof(details), " (timestamp=%u windowid=%u which=%u state=%s repeat=%s scancode=%u keycode=%u mod=0x%x)", \
+                       (uint)event->key.timestamp, (uint)event->key.windowID, (uint)event->key.which,                                       \
+                       event->key.state == SDL_PRESSED ? "pressed" : "released",                                                            \
+                       event->key.repeat ? "true" : "false",                                                                                \
+                       (uint)event->key.scancode,                                                                                           \
+                       (uint)event->key.key,                                                                                                \
+                       (uint)event->key.mod)
         SDL_EVENT_CASE(SDL_EVENT_KEY_DOWN)
         SDL_EVENT_CASE(SDL_EVENT_KEY_DOWN)
         PRINT_KEY_EVENT(event);
         PRINT_KEY_EVENT(event);
         break;
         break;

+ 4 - 4
src/events/SDL_keyboard.c

@@ -399,12 +399,12 @@ static int SDL_SendKeyboardKeyInternal(Uint64 timestamp, Uint32 flags, SDL_Keybo
         SDL_Event event;
         SDL_Event event;
         event.type = type;
         event.type = type;
         event.common.timestamp = timestamp;
         event.common.timestamp = timestamp;
+        event.key.scancode = scancode;
+        event.key.key = keycode;
+        event.key.mod = keyboard->modstate;
+        event.key.raw = (Uint16)rawcode;
         event.key.state = state;
         event.key.state = state;
         event.key.repeat = repeat;
         event.key.repeat = repeat;
-        event.key.keysym.scancode = scancode;
-        event.key.keysym.sym = keycode;
-        event.key.keysym.mod = keyboard->modstate;
-        event.key.keysym.raw = (Uint16)rawcode;
         event.key.windowID = keyboard->focus ? keyboard->focus->id : 0;
         event.key.windowID = keyboard->focus ? keyboard->focus->id : 0;
         event.key.which = keyboardID;
         event.key.which = keyboardID;
         posted = (SDL_PushEvent(&event) > 0);
         posted = (SDL_PushEvent(&event) > 0);

+ 14 - 14
src/test/SDL_test_common.c

@@ -1676,9 +1676,9 @@ static void SDLTest_PrintEvent(const SDL_Event *event)
     case SDL_EVENT_KEY_DOWN:
     case SDL_EVENT_KEY_DOWN:
     case SDL_EVENT_KEY_UP: {
     case SDL_EVENT_KEY_UP: {
         char modstr[64];
         char modstr[64];
-        if (event->key.keysym.mod) {
+        if (event->key.mod) {
             modstr[0] = '\0';
             modstr[0] = '\0';
-            SDLTest_PrintModState(modstr, sizeof (modstr), event->key.keysym.mod);
+            SDLTest_PrintModState(modstr, sizeof (modstr), event->key.mod);
         } else {
         } else {
             SDL_strlcpy(modstr, "NONE", sizeof (modstr));
             SDL_strlcpy(modstr, "NONE", sizeof (modstr));
         }
         }
@@ -1686,9 +1686,9 @@ static void SDLTest_PrintEvent(const SDL_Event *event)
         SDL_Log("SDL EVENT: Keyboard: key %s in window %" SDL_PRIu32 ": scancode 0x%08X = %s, keycode 0x%08" SDL_PRIX32 " = %s, mods = %s",
         SDL_Log("SDL EVENT: Keyboard: key %s in window %" SDL_PRIu32 ": scancode 0x%08X = %s, keycode 0x%08" SDL_PRIX32 " = %s, mods = %s",
                 (event->type == SDL_EVENT_KEY_DOWN) ? "pressed" : "released",
                 (event->type == SDL_EVENT_KEY_DOWN) ? "pressed" : "released",
                 event->key.windowID,
                 event->key.windowID,
-                event->key.keysym.scancode,
-                SDL_GetScancodeName(event->key.keysym.scancode),
-                event->key.keysym.sym, SDL_GetKeyName(event->key.keysym.sym),
+                event->key.scancode,
+                SDL_GetScancodeName(event->key.scancode),
+                event->key.key, SDL_GetKeyName(event->key.key),
                 modstr);
                 modstr);
         break;
         break;
     }
     }
@@ -2097,11 +2097,11 @@ int SDLTest_CommonEventMainCallbacks(SDLTest_CommonState *state, const SDL_Event
         break;
         break;
     case SDL_EVENT_KEY_DOWN:
     case SDL_EVENT_KEY_DOWN:
     {
     {
-        SDL_bool withControl = !!(event->key.keysym.mod & SDL_KMOD_CTRL);
-        SDL_bool withShift = !!(event->key.keysym.mod & SDL_KMOD_SHIFT);
-        SDL_bool withAlt = !!(event->key.keysym.mod & SDL_KMOD_ALT);
+        SDL_bool withControl = !!(event->key.mod & SDL_KMOD_CTRL);
+        SDL_bool withShift = !!(event->key.mod & SDL_KMOD_SHIFT);
+        SDL_bool withAlt = !!(event->key.mod & SDL_KMOD_ALT);
 
 
-        switch (event->key.keysym.sym) {
+        switch (event->key.key) {
             /* Add hotkeys here */
             /* Add hotkeys here */
         case SDLK_PRINTSCREEN:
         case SDLK_PRINTSCREEN:
         {
         {
@@ -2158,7 +2158,7 @@ int SDLTest_CommonEventMainCallbacks(SDLTest_CommonState *state, const SDL_Event
                         }
                         }
                         if (current_index >= 0) {
                         if (current_index >= 0) {
                             SDL_DisplayID dest;
                             SDL_DisplayID dest;
-                            if (event->key.keysym.sym == SDLK_UP || event->key.keysym.sym == SDLK_LEFT) {
+                            if (event->key.key == SDLK_UP || event->key.key == SDLK_LEFT) {
                                 dest = displays[(current_index + num_displays - 1) % num_displays];
                                 dest = displays[(current_index + num_displays - 1) % num_displays];
                             } else {
                             } else {
                                 dest = displays[(current_index + num_displays + 1) % num_displays];
                                 dest = displays[(current_index + num_displays + 1) % num_displays];
@@ -2180,16 +2180,16 @@ int SDLTest_CommonEventMainCallbacks(SDLTest_CommonState *state, const SDL_Event
                     int x, y;
                     int x, y;
                     SDL_GetWindowPosition(window, &x, &y);
                     SDL_GetWindowPosition(window, &x, &y);
 
 
-                    if (event->key.keysym.sym == SDLK_UP) {
+                    if (event->key.key == SDLK_UP) {
                         y -= delta;
                         y -= delta;
                     }
                     }
-                    if (event->key.keysym.sym == SDLK_DOWN) {
+                    if (event->key.key == SDLK_DOWN) {
                         y += delta;
                         y += delta;
                     }
                     }
-                    if (event->key.keysym.sym == SDLK_LEFT) {
+                    if (event->key.key == SDLK_LEFT) {
                         x -= delta;
                         x -= delta;
                     }
                     }
-                    if (event->key.keysym.sym == SDLK_RIGHT) {
+                    if (event->key.key == SDLK_RIGHT) {
                         x += delta;
                         x += delta;
                     }
                     }
 
 

+ 15 - 15
test/checkkeys.c

@@ -159,7 +159,7 @@ static void PrintModifierState(void)
     SDL_Log("Initial state:%s\n", message);
     SDL_Log("Initial state:%s\n", message);
 }
 }
 
 
-static void PrintKey(SDL_Keysym *sym, SDL_bool pressed, SDL_bool repeat)
+static void PrintKey(SDL_KeyboardEvent *event)
 {
 {
     char message[512];
     char message[512];
     char *spot;
     char *spot;
@@ -169,24 +169,24 @@ static void PrintKey(SDL_Keysym *sym, SDL_bool pressed, SDL_bool repeat)
     left = sizeof(message);
     left = sizeof(message);
 
 
     /* Print the keycode, name and state */
     /* Print the keycode, name and state */
-    if (sym->sym) {
+    if (event->key) {
         print_string(&spot, &left,
         print_string(&spot, &left,
                      "Key %s:  raw 0x%.2x, scancode %d = %s, keycode 0x%08X = %s ",
                      "Key %s:  raw 0x%.2x, scancode %d = %s, keycode 0x%08X = %s ",
-                     pressed ? "pressed " : "released",
-                     sym->raw,
-                     sym->scancode,
-                     sym->scancode == SDL_SCANCODE_UNKNOWN ? "UNKNOWN" : SDL_GetScancodeName(sym->scancode),
-                     sym->sym, SDL_GetKeyName(sym->sym));
+                     event->state ? "pressed " : "released",
+                     event->raw,
+                     event->scancode,
+                     event->scancode == SDL_SCANCODE_UNKNOWN ? "UNKNOWN" : SDL_GetScancodeName(event->scancode),
+                     event->key, SDL_GetKeyName(event->key));
     } else {
     } else {
         print_string(&spot, &left,
         print_string(&spot, &left,
                      "Unknown Key (raw 0x%.2x, scancode %d = %s) %s ",
                      "Unknown Key (raw 0x%.2x, scancode %d = %s) %s ",
-                     sym->raw,
-                     sym->scancode,
-                     sym->scancode == SDL_SCANCODE_UNKNOWN ? "UNKNOWN" : SDL_GetScancodeName(sym->scancode),
-                     pressed ? "pressed " : "released");
+                     event->raw,
+                     event->scancode,
+                     event->scancode == SDL_SCANCODE_UNKNOWN ? "UNKNOWN" : SDL_GetScancodeName(event->scancode),
+                     event->state ? "pressed " : "released");
     }
     }
-    print_modifiers(&spot, &left, sym->mod);
-    if (repeat) {
+    print_modifiers(&spot, &left, event->mod);
+    if (event->repeat) {
         print_string(&spot, &left, " (repeat)");
         print_string(&spot, &left, " (repeat)");
     }
     }
     SDL_Log("%s\n", message);
     SDL_Log("%s\n", message);
@@ -229,9 +229,9 @@ static void loop(void)
         switch (event.type) {
         switch (event.type) {
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_UP:
         case SDL_EVENT_KEY_UP:
-            PrintKey(&event.key.keysym, (event.key.state == SDL_PRESSED), (event.key.repeat > 0));
+            PrintKey(&event.key);
             if (event.type == SDL_EVENT_KEY_DOWN) {
             if (event.type == SDL_EVENT_KEY_DOWN) {
-                switch (event.key.keysym.sym) {
+                switch (event.key.key) {
                 case SDLK_BACKSPACE:
                 case SDLK_BACKSPACE:
                     SDLTest_TextWindowAddText(textwin, "\b");
                     SDLTest_TextWindowAddText(textwin, "\b");
                     break;
                     break;

+ 13 - 13
test/checkkeysthreads.c

@@ -120,7 +120,7 @@ PrintModifierState(void)
 }
 }
 
 
 static void
 static void
-PrintKey(SDL_Keysym *sym, SDL_bool pressed, SDL_bool repeat)
+PrintKey(SDL_KeyboardEvent *event)
 {
 {
     char message[512];
     char message[512];
     char *spot;
     char *spot;
@@ -130,22 +130,22 @@ PrintKey(SDL_Keysym *sym, SDL_bool pressed, SDL_bool repeat)
     left = sizeof(message);
     left = sizeof(message);
 
 
     /* Print the keycode, name and state */
     /* Print the keycode, name and state */
-    if (sym->sym) {
+    if (event->key) {
         print_string(&spot, &left,
         print_string(&spot, &left,
                      "Key %s:  scancode %d = %s, keycode 0x%08X = %s ",
                      "Key %s:  scancode %d = %s, keycode 0x%08X = %s ",
-                     pressed ? "pressed " : "released",
-                     sym->scancode,
-                     SDL_GetScancodeName(sym->scancode),
-                     sym->sym, SDL_GetKeyName(sym->sym));
+                     event->state ? "pressed " : "released",
+                     event->scancode,
+                     SDL_GetScancodeName(event->scancode),
+                     event->key, SDL_GetKeyName(event->key));
     } else {
     } else {
         print_string(&spot, &left,
         print_string(&spot, &left,
                      "Unknown Key (scancode %d = %s) %s ",
                      "Unknown Key (scancode %d = %s) %s ",
-                     sym->scancode,
-                     SDL_GetScancodeName(sym->scancode),
-                     pressed ? "pressed " : "released");
+                     event->scancode,
+                     SDL_GetScancodeName(event->scancode),
+                     event->state ? "pressed " : "released");
     }
     }
     print_modifiers(&spot, &left);
     print_modifiers(&spot, &left);
-    if (repeat) {
+    if (event->repeat) {
         print_string(&spot, &left, " (repeat)");
         print_string(&spot, &left, " (repeat)");
     }
     }
     SDL_Log("%s\n", message);
     SDL_Log("%s\n", message);
@@ -177,7 +177,7 @@ static void loop(void)
         switch (event.type) {
         switch (event.type) {
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_UP:
         case SDL_EVENT_KEY_UP:
-            PrintKey(&event.key.keysym, (event.key.state == SDL_PRESSED), (event.key.repeat > 0));
+            PrintKey(&event.key);
             break;
             break;
         case SDL_EVENT_TEXT_EDITING:
         case SDL_EVENT_TEXT_EDITING:
             PrintText("EDIT", event.text.text);
             PrintText("EDIT", event.text.text);
@@ -221,11 +221,11 @@ static int SDLCALL ping_thread(void *ptr)
 {
 {
     int cnt;
     int cnt;
     SDL_Event sdlevent;
     SDL_Event sdlevent;
-    SDL_memset(&sdlevent, 0, sizeof(SDL_Event));
+    SDL_zero(sdlevent);
     for (cnt = 0; cnt < 10; ++cnt) {
     for (cnt = 0; cnt < 10; ++cnt) {
         SDL_Log("sending event (%d/%d) from thread.\n", cnt + 1, 10);
         SDL_Log("sending event (%d/%d) from thread.\n", cnt + 1, 10);
         sdlevent.type = SDL_EVENT_KEY_DOWN;
         sdlevent.type = SDL_EVENT_KEY_DOWN;
-        sdlevent.key.keysym.sym = SDLK_1;
+        sdlevent.key.key = SDLK_1;
         SDL_PushEvent(&sdlevent);
         SDL_PushEvent(&sdlevent);
         SDL_Delay(1000 + SDL_rand_n(1000));
         SDL_Delay(1000 + SDL_rand_n(1000));
     }
     }

+ 2 - 2
test/testaudio.c

@@ -1185,8 +1185,8 @@ int SDL_AppEvent(void *appstate, const SDL_Event *event)
 
 
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_UP:
         case SDL_EVENT_KEY_UP:
-            ctrl_held = ((event->key.keysym.mod & SDL_KMOD_CTRL) != 0);
-            alt_held = ((event->key.keysym.mod & SDL_KMOD_ALT) != 0);
+            ctrl_held = ((event->key.mod & SDL_KMOD_CTRL) != 0);
+            alt_held = ((event->key.mod & SDL_KMOD_ALT) != 0);
             break;
             break;
 
 
         case SDL_EVENT_DROP_FILE:
         case SDL_EVENT_DROP_FILE:

+ 1 - 1
test/testaudiohotplug.c

@@ -65,7 +65,7 @@ static void iteration(void)
         if (e.type == SDL_EVENT_QUIT) {
         if (e.type == SDL_EVENT_QUIT) {
             done = 1;
             done = 1;
         } else if (e.type == SDL_EVENT_KEY_UP) {
         } else if (e.type == SDL_EVENT_KEY_UP) {
-            if (e.key.keysym.sym == SDLK_ESCAPE) {
+            if (e.key.key == SDLK_ESCAPE) {
                 done = 1;
                 done = 1;
             }
             }
         } else if (e.type == SDL_EVENT_AUDIO_DEVICE_ADDED) {
         } else if (e.type == SDL_EVENT_AUDIO_DEVICE_ADDED) {

+ 1 - 1
test/testaudiorecording.c

@@ -149,7 +149,7 @@ int SDL_AppEvent(void *appstate, const SDL_Event *event)
     if (event->type == SDL_EVENT_QUIT) {
     if (event->type == SDL_EVENT_QUIT) {
         return SDL_APP_SUCCESS;
         return SDL_APP_SUCCESS;
     } else if (event->type == SDL_EVENT_KEY_DOWN) {
     } else if (event->type == SDL_EVENT_KEY_DOWN) {
-        if (event->key.keysym.sym == SDLK_ESCAPE) {
+        if (event->key.key == SDLK_ESCAPE) {
             return SDL_APP_SUCCESS;
             return SDL_APP_SUCCESS;
         }
         }
     } else if (event->type == SDL_EVENT_MOUSE_BUTTON_DOWN) {
     } else if (event->type == SDL_EVENT_MOUSE_BUTTON_DOWN) {

+ 3 - 3
test/testaudiostreamdynamicresample.c

@@ -218,7 +218,7 @@ static void loop(void)
         }
         }
 #endif
 #endif
         if (e.type == SDL_EVENT_KEY_DOWN) {
         if (e.type == SDL_EVENT_KEY_DOWN) {
-            SDL_Keycode sym = e.key.keysym.sym;
+            SDL_Keycode sym = e.key.key;
             if (sym == SDLK_q) {
             if (sym == SDLK_q) {
                 if (SDL_AudioDevicePaused(state->audio_id)) {
                 if (SDL_AudioDevicePaused(state->audio_id)) {
                     SDL_ResumeAudioDevice(state->audio_id);
                     SDL_ResumeAudioDevice(state->audio_id);
@@ -236,8 +236,8 @@ static void loop(void)
                 queue_audio();
                 queue_audio();
             } else if (sym == SDLK_d) {
             } else if (sym == SDLK_d) {
                 float amount = 1.0f;
                 float amount = 1.0f;
-                amount *= (e.key.keysym.mod & SDL_KMOD_CTRL) ? 10.0f : 1.0f;
-                amount *= (e.key.keysym.mod & SDL_KMOD_SHIFT) ? 10.0f : 1.0f;
+                amount *= (e.key.mod & SDL_KMOD_CTRL) ? 10.0f : 1.0f;
+                amount *= (e.key.mod & SDL_KMOD_SHIFT) ? 10.0f : 1.0f;
                 skip_audio(amount);
                 skip_audio(amount);
             }
             }
         }
         }

+ 1 - 1
test/testcamera.c

@@ -198,7 +198,7 @@ int SDL_AppEvent(void *appstate, const SDL_Event *event)
 {
 {
     switch (event->type) {
     switch (event->type) {
         case SDL_EVENT_KEY_DOWN: {
         case SDL_EVENT_KEY_DOWN: {
-            const SDL_Keycode sym = event->key.keysym.sym;
+            const SDL_Keycode sym = event->key.key;
             if (sym == SDLK_ESCAPE || sym == SDLK_AC_BACK) {
             if (sym == SDLK_ESCAPE || sym == SDLK_AC_BACK) {
                 SDL_Log("Key : Escape!");
                 SDL_Log("Key : Escape!");
                 return SDL_APP_SUCCESS;
                 return SDL_APP_SUCCESS;

+ 1 - 1
test/testcolorspace.c

@@ -503,7 +503,7 @@ static void loop(void)
     /* Check for events */
     /* Check for events */
     while (SDL_PollEvent(&event)) {
     while (SDL_PollEvent(&event)) {
         if (event.type == SDL_EVENT_KEY_DOWN) {
         if (event.type == SDL_EVENT_KEY_DOWN) {
-            switch (event.key.keysym.sym) {
+            switch (event.key.key) {
             case SDLK_ESCAPE:
             case SDLK_ESCAPE:
                 done = 1;
                 done = 1;
                 break;
                 break;

+ 13 - 13
test/testcontroller.c

@@ -1846,37 +1846,37 @@ static void loop(void *arg)
 
 
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
             if (display_mode == CONTROLLER_MODE_TESTING) {
             if (display_mode == CONTROLLER_MODE_TESTING) {
-                if (event.key.keysym.sym >= SDLK_0 && event.key.keysym.sym <= SDLK_9) {
+                if (event.key.key >= SDLK_0 && event.key.key <= SDLK_9) {
                     if (controller && controller->gamepad) {
                     if (controller && controller->gamepad) {
-                        int player_index = (event.key.keysym.sym - SDLK_0);
+                        int player_index = (event.key.key - SDLK_0);
 
 
                         SDL_SetGamepadPlayerIndex(controller->gamepad, player_index);
                         SDL_SetGamepadPlayerIndex(controller->gamepad, player_index);
                     }
                     }
                     break;
                     break;
-                } else if (event.key.keysym.sym == SDLK_a) {
+                } else if (event.key.key == SDLK_a) {
                     OpenVirtualGamepad();
                     OpenVirtualGamepad();
-                } else if (event.key.keysym.sym == SDLK_d) {
+                } else if (event.key.key == SDLK_d) {
                     CloseVirtualGamepad();
                     CloseVirtualGamepad();
-                } else if (event.key.keysym.sym == SDLK_r && (event.key.keysym.mod & SDL_KMOD_CTRL)) {
+                } else if (event.key.key == SDLK_r && (event.key.mod & SDL_KMOD_CTRL)) {
                     SDL_ReloadGamepadMappings();
                     SDL_ReloadGamepadMappings();
-                } else if (event.key.keysym.sym == SDLK_ESCAPE) {
+                } else if (event.key.key == SDLK_ESCAPE) {
                     done = SDL_TRUE;
                     done = SDL_TRUE;
                 }
                 }
             } else if (display_mode == CONTROLLER_MODE_BINDING) {
             } else if (display_mode == CONTROLLER_MODE_BINDING) {
-                if (event.key.keysym.sym == SDLK_c && (event.key.keysym.mod & SDL_KMOD_CTRL)) {
+                if (event.key.key == SDLK_c && (event.key.mod & SDL_KMOD_CTRL)) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                         CopyControllerName();
                         CopyControllerName();
                     } else {
                     } else {
                         CopyMapping();
                         CopyMapping();
                     }
                     }
-                } else if (event.key.keysym.sym == SDLK_v && (event.key.keysym.mod & SDL_KMOD_CTRL)) {
+                } else if (event.key.key == SDLK_v && (event.key.mod & SDL_KMOD_CTRL)) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                         ClearControllerName();
                         ClearControllerName();
                         PasteControllerName();
                         PasteControllerName();
                     } else {
                     } else {
                         PasteMapping();
                         PasteMapping();
                     }
                     }
-                } else if (event.key.keysym.sym == SDLK_x && (event.key.keysym.mod & SDL_KMOD_CTRL)) {
+                } else if (event.key.key == SDLK_x && (event.key.mod & SDL_KMOD_CTRL)) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                         CopyControllerName();
                         CopyControllerName();
                         ClearControllerName();
                         ClearControllerName();
@@ -1884,19 +1884,19 @@ static void loop(void *arg)
                         CopyMapping();
                         CopyMapping();
                         ClearMapping();
                         ClearMapping();
                     }
                     }
-                } else if (event.key.keysym.sym == SDLK_SPACE) {
+                } else if (event.key.key == SDLK_SPACE) {
                     if (binding_element != SDL_GAMEPAD_ELEMENT_NAME) {
                     if (binding_element != SDL_GAMEPAD_ELEMENT_NAME) {
                         ClearBinding();
                         ClearBinding();
                     }
                     }
-                } else if (event.key.keysym.sym == SDLK_BACKSPACE) {
+                } else if (event.key.key == SDLK_BACKSPACE) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                         BackspaceControllerName();
                         BackspaceControllerName();
                     }
                     }
-                } else if (event.key.keysym.sym == SDLK_RETURN) {
+                } else if (event.key.key == SDLK_RETURN) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                     if (binding_element == SDL_GAMEPAD_ELEMENT_NAME) {
                         StopBinding();
                         StopBinding();
                     }
                     }
-                } else if (event.key.keysym.sym == SDLK_ESCAPE) {
+                } else if (event.key.key == SDLK_ESCAPE) {
                     if (binding_element != SDL_GAMEPAD_ELEMENT_INVALID) {
                     if (binding_element != SDL_GAMEPAD_ELEMENT_INVALID) {
                         StopBinding();
                         StopBinding();
                     } else {
                     } else {

+ 1 - 1
test/testdrawchessboard.c

@@ -85,7 +85,7 @@ static void loop(void)
             return;
             return;
         }
         }
 
 
-        if ((e.type == SDL_EVENT_KEY_DOWN) && (e.key.keysym.sym == SDLK_ESCAPE)) {
+        if ((e.type == SDL_EVENT_KEY_DOWN) && (e.key.key == SDLK_ESCAPE)) {
             done = 1;
             done = 1;
 #ifdef SDL_PLATFORM_EMSCRIPTEN
 #ifdef SDL_PLATFORM_EMSCRIPTEN
             emscripten_cancel_main_loop();
             emscripten_cancel_main_loop();

+ 1 - 1
test/testffmpeg.c

@@ -1509,7 +1509,7 @@ int main(int argc, char *argv[])
         /* Check for events */
         /* Check for events */
         while (SDL_PollEvent(&event)) {
         while (SDL_PollEvent(&event)) {
             if (event.type == SDL_EVENT_QUIT ||
             if (event.type == SDL_EVENT_QUIT ||
-                (event.type == SDL_EVENT_KEY_DOWN && event.key.keysym.sym == SDLK_ESCAPE)) {
+                (event.type == SDL_EVENT_KEY_DOWN && event.key.key == SDLK_ESCAPE)) {
                 done = 1;
                 done = 1;
             }
             }
         }
         }

+ 4 - 4
test/testgeometry.c

@@ -95,13 +95,13 @@ static void loop(void)
                 }
                 }
             }
             }
         } else if (event.type == SDL_EVENT_KEY_DOWN) {
         } else if (event.type == SDL_EVENT_KEY_DOWN) {
-            if (event.key.keysym.sym == SDLK_LEFT) {
+            if (event.key.key == SDLK_LEFT) {
                 translate_cx -= 1;
                 translate_cx -= 1;
-            } else if (event.key.keysym.sym == SDLK_RIGHT) {
+            } else if (event.key.key == SDLK_RIGHT) {
                 translate_cx += 1;
                 translate_cx += 1;
-            } else if (event.key.keysym.sym == SDLK_UP) {
+            } else if (event.key.key == SDLK_UP) {
                 translate_cy -= 1;
                 translate_cy -= 1;
-            } else if (event.key.keysym.sym == SDLK_DOWN) {
+            } else if (event.key.key == SDLK_DOWN) {
                 translate_cy += 1;
                 translate_cy += 1;
             } else {
             } else {
                 SDLTest_CommonEvent(state, &event, &done);
                 SDLTest_CommonEvent(state, &event, &done);

+ 2 - 2
test/testgl.c

@@ -391,10 +391,10 @@ int main(int argc, char *argv[])
         while (SDL_PollEvent(&event)) {
         while (SDL_PollEvent(&event)) {
             SDLTest_CommonEvent(state, &event, &done);
             SDLTest_CommonEvent(state, &event, &done);
             if (event.type == SDL_EVENT_KEY_DOWN) {
             if (event.type == SDL_EVENT_KEY_DOWN) {
-                if (event.key.keysym.sym == SDLK_o) {
+                if (event.key.key == SDLK_o) {
                     swap_interval--;
                     swap_interval--;
                     update_swap_interval = SDL_TRUE;
                     update_swap_interval = SDL_TRUE;
-                } else if (event.key.keysym.sym == SDLK_p) {
+                } else if (event.key.key == SDLK_p) {
                     swap_interval++;
                     swap_interval++;
                     update_swap_interval = SDL_TRUE;
                     update_swap_interval = SDL_TRUE;
                 }
                 }

+ 1 - 1
test/testgles2_sdf.c

@@ -337,7 +337,7 @@ static void loop(void)
         switch (event.type) {
         switch (event.type) {
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
         {
         {
-            const int sym = event.key.keysym.sym;
+            const int sym = event.key.key;
 
 
             if (sym == SDLK_TAB) {
             if (sym == SDLK_TAB) {
                 SDL_Log("Tab");
                 SDL_Log("Tab");

+ 2 - 2
test/testhittesting.c

@@ -137,9 +137,9 @@ int main(int argc, char **argv)
                 break;
                 break;
 
 
             case SDL_EVENT_KEY_DOWN:
             case SDL_EVENT_KEY_DOWN:
-                if (e.key.keysym.sym == SDLK_ESCAPE) {
+                if (e.key.key == SDLK_ESCAPE) {
                     done = 1;
                     done = 1;
-                } else if (e.key.keysym.sym == SDLK_x) {
+                } else if (e.key.key == SDLK_x) {
                     if (!areas) {
                     if (!areas) {
                         areas = drag_areas;
                         areas = drag_areas;
                         numareas = SDL_arraysize(drag_areas);
                         numareas = SDL_arraysize(drag_areas);

+ 5 - 5
test/testime.c

@@ -699,7 +699,7 @@ int main(int argc, char *argv[])
             SDLTest_CommonEvent(state, &event, &done);
             SDLTest_CommonEvent(state, &event, &done);
             switch (event.type) {
             switch (event.type) {
             case SDL_EVENT_KEY_DOWN:
             case SDL_EVENT_KEY_DOWN:
-                switch (event.key.keysym.sym) {
+                switch (event.key.key) {
                 case SDLK_RETURN:
                 case SDLK_RETURN:
                     text[0] = 0x00;
                     text[0] = 0x00;
                     Redraw();
                     Redraw();
@@ -742,10 +742,10 @@ int main(int argc, char *argv[])
                 }
                 }
 
 
                 SDL_Log("Keyboard: scancode 0x%08X = %s, keycode 0x%08" SDL_PRIX32 " = %s\n",
                 SDL_Log("Keyboard: scancode 0x%08X = %s, keycode 0x%08" SDL_PRIX32 " = %s\n",
-                        event.key.keysym.scancode,
-                        SDL_GetScancodeName(event.key.keysym.scancode),
-                        SDL_static_cast(Uint32, event.key.keysym.sym),
-                        SDL_GetKeyName(event.key.keysym.sym));
+                        event.key.scancode,
+                        SDL_GetScancodeName(event.key.scancode),
+                        SDL_static_cast(Uint32, event.key.key),
+                        SDL_GetKeyName(event.key.key));
                 break;
                 break;
 
 
             case SDL_EVENT_TEXT_INPUT:
             case SDL_EVENT_TEXT_INPUT:

+ 3 - 3
test/testintersections.c

@@ -225,9 +225,9 @@ static void loop(void *arg)
             }
             }
             break;
             break;
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
-            switch (event.key.keysym.sym) {
+            switch (event.key.key) {
             case 'l':
             case 'l':
-                if (event.key.keysym.mod & SDL_KMOD_SHIFT) {
+                if (event.key.mod & SDL_KMOD_SHIFT) {
                     num_lines = 0;
                     num_lines = 0;
                 } else {
                 } else {
                     add_line(
                     add_line(
@@ -238,7 +238,7 @@ static void loop(void *arg)
                 }
                 }
                 break;
                 break;
             case 'r':
             case 'r':
-                if (event.key.keysym.mod & SDL_KMOD_SHIFT) {
+                if (event.key.mod & SDL_KMOD_SHIFT) {
                     num_rects = 0;
                     num_rects = 0;
                 } else {
                 } else {
                     add_rect(
                     add_rect(

+ 1 - 1
test/testmanymouse.c

@@ -391,7 +391,7 @@ static void HandleKeyboardKeyDown(SDL_KeyboardEvent *event)
             continue;
             continue;
         }
         }
         if (event->which == keyboard_state->instance_id) {
         if (event->which == keyboard_state->instance_id) {
-            switch (event->keysym.sym) {
+            switch (event->key) {
             case SDLK_LEFT:
             case SDLK_LEFT:
                 keyboard_state->position.x -= CURSOR_SIZE;
                 keyboard_state->position.x -= CURSOR_SIZE;
                 if (keyboard_state->position.x < 0.0f) {
                 if (keyboard_state->position.x < 0.0f) {

+ 6 - 6
test/testmodal.c

@@ -91,25 +91,25 @@ int main(int argc, char *argv[])
                     w1 = NULL;
                     w1 = NULL;
                 }
                 }
             } else if (e.type == SDL_EVENT_KEY_DOWN) {
             } else if (e.type == SDL_EVENT_KEY_DOWN) {
-                if ((e.key.keysym.sym == SDLK_m || e.key.keysym.sym == SDLK_n) && !w2) {
+                if ((e.key.key == SDLK_m || e.key.key == SDLK_n) && !w2) {
                     if (SDL_CreateWindowAndRenderer("Non-Modal Window", 320, 200, SDL_WINDOW_HIDDEN, &w2, &r2) < 0) {
                     if (SDL_CreateWindowAndRenderer("Non-Modal Window", 320, 200, SDL_WINDOW_HIDDEN, &w2, &r2) < 0) {
                         SDL_Log("Failed to create modal window and/or renderer: %s\n", SDL_GetError());
                         SDL_Log("Failed to create modal window and/or renderer: %s\n", SDL_GetError());
                         exit_code = 1;
                         exit_code = 1;
                         goto sdl_quit;
                         goto sdl_quit;
                     }
                     }
 
 
-                    if (e.key.keysym.sym == SDLK_m) {
+                    if (e.key.key == SDLK_m) {
                         if (!SDL_SetWindowModalFor(w2, w1)) {
                         if (!SDL_SetWindowModalFor(w2, w1)) {
                             SDL_SetWindowTitle(w2, "Modal Window");
                             SDL_SetWindowTitle(w2, "Modal Window");
                         }
                         }
                     }
                     }
                     SDL_ShowWindow(w2);
                     SDL_ShowWindow(w2);
-                } else if (e.key.keysym.sym == SDLK_ESCAPE && w2) {
+                } else if (e.key.key == SDLK_ESCAPE && w2) {
                     SDL_DestroyWindow(w2);
                     SDL_DestroyWindow(w2);
                     r2 = NULL;
                     r2 = NULL;
                     w2 = NULL;
                     w2 = NULL;
-                } else if (e.key.keysym.sym == SDLK_h) {
-                    if (e.key.keysym.mod & SDL_KMOD_CTRL) {
+                } else if (e.key.key == SDLK_h) {
+                    if (e.key.mod & SDL_KMOD_CTRL) {
                         /* Hide the parent, which should hide the modal too. */
                         /* Hide the parent, which should hide the modal too. */
                         show_deadline = SDL_GetTicksNS() + SDL_SECONDS_TO_NS(3);
                         show_deadline = SDL_GetTicksNS() + SDL_SECONDS_TO_NS(3);
                         SDL_HideWindow(w1);
                         SDL_HideWindow(w1);
@@ -121,7 +121,7 @@ int main(int argc, char *argv[])
                             SDL_HideWindow(w2);
                             SDL_HideWindow(w2);
                         }
                         }
                     }
                     }
-                } else if (e.key.keysym.sym == SDLK_p && w2) {
+                } else if (e.key.key == SDLK_p && w2) {
                     if (SDL_GetWindowFlags(w2) & SDL_WINDOW_MODAL) {
                     if (SDL_GetWindowFlags(w2) & SDL_WINDOW_MODAL) {
                         /* Unparent the window */
                         /* Unparent the window */
                         if (!SDL_SetWindowModalFor(w2, NULL)) {
                         if (!SDL_SetWindowModalFor(w2, NULL)) {

+ 3 - 3
test/testmouse.c

@@ -211,14 +211,14 @@ static void loop(void *arg)
             break;
             break;
 
 
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
-            if (event.key.keysym.sym == SDLK_c) {
+            if (event.key.key == SDLK_c) {
                 int x, y, w, h;
                 int x, y, w, h;
                 SDL_GetWindowPosition(window, &x, &y);
                 SDL_GetWindowPosition(window, &x, &y);
                 SDL_GetWindowSize(window, &w, &h);
                 SDL_GetWindowSize(window, &w, &h);
                 w /= 2;
                 w /= 2;
                 h /= 2;
                 h /= 2;
 
 
-                if (event.key.keysym.mod & SDL_KMOD_ALT) {
+                if (event.key.mod & SDL_KMOD_ALT) {
                     SDL_WarpMouseGlobal((float)(x + w), (float)(y + h));
                     SDL_WarpMouseGlobal((float)(x + w), (float)(y + h));
                 } else {
                 } else {
                     SDL_WarpMouseInWindow(window, (float)w, (float)h);
                     SDL_WarpMouseInWindow(window, (float)w, (float)h);
@@ -226,7 +226,7 @@ static void loop(void *arg)
             }
             }
             SDL_FALLTHROUGH;
             SDL_FALLTHROUGH;
         case SDL_EVENT_KEY_UP:
         case SDL_EVENT_KEY_UP:
-            switch (event.key.keysym.sym) {
+            switch (event.key.key) {
             case SDLK_LSHIFT:
             case SDLK_LSHIFT:
                 isRect = (event.key.state == SDL_PRESSED);
                 isRect = (event.key.state == SDL_PRESSED);
                 if (active) {
                 if (active) {

+ 2 - 2
test/testoverlay.c

@@ -275,11 +275,11 @@ static void loop(void)
             }
             }
             break;
             break;
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
-            if (event.key.keysym.sym == SDLK_SPACE) {
+            if (event.key.key == SDLK_SPACE) {
                 paused = !paused;
                 paused = !paused;
                 break;
                 break;
             }
             }
-            if (event.key.keysym.sym != SDLK_ESCAPE) {
+            if (event.key.key != SDLK_ESCAPE) {
                 break;
                 break;
             }
             }
             break;
             break;

+ 1 - 1
test/testpopup.c

@@ -171,7 +171,7 @@ static void loop(void)
                 }
                 }
             }
             }
         } else if (event.type == SDL_EVENT_KEY_DOWN) {
         } else if (event.type == SDL_EVENT_KEY_DOWN) {
-            if (event.key.keysym.sym == SDLK_SPACE) {
+            if (event.key.key == SDLK_SPACE) {
                 for (i = 0; i < num_menus; ++i) {
                 for (i = 0; i < num_menus; ++i) {
                     if (SDL_GetWindowFlags(menus[i].win) & SDL_WINDOW_HIDDEN) {
                     if (SDL_GetWindowFlags(menus[i].win) & SDL_WINDOW_HIDDEN) {
                         SDL_ShowWindow(menus[i].win);
                         SDL_ShowWindow(menus[i].win);

+ 2 - 2
test/testshader.c

@@ -532,10 +532,10 @@ int main(int argc, char **argv)
                     done = 1;
                     done = 1;
                 }
                 }
                 if (event.type == SDL_EVENT_KEY_DOWN) {
                 if (event.type == SDL_EVENT_KEY_DOWN) {
-                    if (event.key.keysym.sym == SDLK_SPACE) {
+                    if (event.key.key == SDLK_SPACE) {
                         current_shader = (current_shader + 1) % NUM_SHADERS;
                         current_shader = (current_shader + 1) % NUM_SHADERS;
                     }
                     }
-                    if (event.key.keysym.sym == SDLK_ESCAPE) {
+                    if (event.key.key == SDLK_ESCAPE) {
                         done = 1;
                         done = 1;
                     }
                     }
                 }
                 }

+ 1 - 1
test/testshape.c

@@ -111,7 +111,7 @@ int main(int argc, char *argv[])
         while (SDL_PollEvent(&event)) {
         while (SDL_PollEvent(&event)) {
             switch (event.type) {
             switch (event.type) {
             case SDL_EVENT_KEY_DOWN:
             case SDL_EVENT_KEY_DOWN:
-                if (event.key.keysym.sym == SDLK_ESCAPE) {
+                if (event.key.key == SDLK_ESCAPE) {
                     done = SDL_TRUE;
                     done = SDL_TRUE;
                 }
                 }
                 break;
                 break;

+ 1 - 1
test/teststreaming.c

@@ -107,7 +107,7 @@ static void loop(void)
     while (SDL_PollEvent(&event)) {
     while (SDL_PollEvent(&event)) {
         switch (event.type) {
         switch (event.type) {
         case SDL_EVENT_KEY_DOWN:
         case SDL_EVENT_KEY_DOWN:
-            if (event.key.keysym.sym == SDLK_ESCAPE) {
+            if (event.key.key == SDLK_ESCAPE) {
                 done = SDL_TRUE;
                 done = SDL_TRUE;
             }
             }
             break;
             break;

+ 1 - 1
test/testtime.c

@@ -176,7 +176,7 @@ int main(int argc, char *argv[])
         while (SDL_PollEvent(&event)) {
         while (SDL_PollEvent(&event)) {
             SDLTest_CommonEvent(state, &event, &done);
             SDLTest_CommonEvent(state, &event, &done);
             if (event.type == SDL_EVENT_KEY_DOWN) {
             if (event.type == SDL_EVENT_KEY_DOWN) {
-                switch (event.key.keysym.sym) {
+                switch (event.key.key) {
                 case SDLK_UP:
                 case SDLK_UP:
                     if (++cal_month > 12) {
                     if (++cal_month > 12) {
                         cal_month = 1;
                         cal_month = 1;

+ 3 - 3
test/testwaylandcustom.c

@@ -260,13 +260,13 @@ int main(int argc, char **argv)
         SDL_Event event;
         SDL_Event event;
         while (SDL_PollEvent(&event)) {
         while (SDL_PollEvent(&event)) {
             if (event.type == SDL_EVENT_KEY_DOWN) {
             if (event.type == SDL_EVENT_KEY_DOWN) {
-                switch (event.key.keysym.sym) {
+                switch (event.key.key) {
                 case SDLK_ESCAPE:
                 case SDLK_ESCAPE:
                     done = 1;
                     done = 1;
                     break;
                     break;
                 case SDLK_EQUALS:
                 case SDLK_EQUALS:
                     /* Ctrl+ enlarges the window */
                     /* Ctrl+ enlarges the window */
-                    if (event.key.keysym.mod & SDL_KMOD_CTRL) {
+                    if (event.key.mod & SDL_KMOD_CTRL) {
                         int w, h;
                         int w, h;
                         SDL_GetWindowSize(window, &w, &h);
                         SDL_GetWindowSize(window, &w, &h);
                         SDL_SetWindowSize(window, w * 2, h * 2);
                         SDL_SetWindowSize(window, w * 2, h * 2);
@@ -274,7 +274,7 @@ int main(int argc, char **argv)
                     break;
                     break;
                 case SDLK_MINUS:
                 case SDLK_MINUS:
                     /* Ctrl- shrinks the window */
                     /* Ctrl- shrinks the window */
-                    if (event.key.keysym.mod & SDL_KMOD_CTRL) {
+                    if (event.key.mod & SDL_KMOD_CTRL) {
                         int w, h;
                         int w, h;
                         SDL_GetWindowSize(window, &w, &h);
                         SDL_GetWindowSize(window, &w, &h);
                         SDL_SetWindowSize(window, w / 2, h / 2);
                         SDL_SetWindowSize(window, w / 2, h / 2);

+ 3 - 3
test/testwm.c

@@ -189,15 +189,15 @@ static void loop(void)
         if (event.type == SDL_EVENT_KEY_UP) {
         if (event.type == SDL_EVENT_KEY_UP) {
             SDL_bool updateCursor = SDL_FALSE;
             SDL_bool updateCursor = SDL_FALSE;
 
 
-            if (event.key.keysym.sym == SDLK_a) {
+            if (event.key.key == SDLK_a) {
                 SDL_assert(!"Keyboard generated assert");
                 SDL_assert(!"Keyboard generated assert");
-            } else if (event.key.keysym.sym == SDLK_LEFT) {
+            } else if (event.key.key == SDLK_LEFT) {
                 --system_cursor;
                 --system_cursor;
                 if (system_cursor < 0) {
                 if (system_cursor < 0) {
                     system_cursor = SDL_NUM_SYSTEM_CURSORS - 1;
                     system_cursor = SDL_NUM_SYSTEM_CURSORS - 1;
                 }
                 }
                 updateCursor = SDL_TRUE;
                 updateCursor = SDL_TRUE;
-            } else if (event.key.keysym.sym == SDLK_RIGHT) {
+            } else if (event.key.key == SDLK_RIGHT) {
                 ++system_cursor;
                 ++system_cursor;
                 if (system_cursor >= SDL_NUM_SYSTEM_CURSORS) {
                 if (system_cursor >= SDL_NUM_SYSTEM_CURSORS) {
                     system_cursor = 0;
                     system_cursor = 0;

+ 3 - 3
test/testyuv.c

@@ -507,11 +507,11 @@ int main(int argc, char **argv)
                     done = 1;
                     done = 1;
                 }
                 }
                 if (event.type == SDL_EVENT_KEY_DOWN) {
                 if (event.type == SDL_EVENT_KEY_DOWN) {
-                    if (event.key.keysym.sym == SDLK_ESCAPE) {
+                    if (event.key.key == SDLK_ESCAPE) {
                         done = 1;
                         done = 1;
-                    } else if (event.key.keysym.sym == SDLK_LEFT) {
+                    } else if (event.key.key == SDLK_LEFT) {
                         --current;
                         --current;
-                    } else if (event.key.keysym.sym == SDLK_RIGHT) {
+                    } else if (event.key.key == SDLK_RIGHT) {
                         ++current;
                         ++current;
                     }
                     }
                 }
                 }