Keyboard text input event structure (event.text.*)
Defined in SDL_events.h
typedef struct SDL_TextInputEvent
{/**< SDL_TEXTINPUT */
Uint32 type; /**< In milliseconds, populated using SDL_GetTicks() */
Uint32 timestamp; /**< The window with keyboard focus, if any */
Uint32 windowID; char text[SDL_TEXTINPUTEVENT_TEXT_SIZE]; /**< The input text; UTF-8 encoded. */
} SDL_TextInputEvent;
text
is limited to SDL_TEXTINPUTEVENT_TEXT_SIZE bytes. If the incoming string is larger than this, SDL will split it and send it in pieces, across multiple events. The string is in UTF-8 format, and if split, SDL guarantees that it will not split in the middle of a UTF-8 sequence, so any event will only contain complete codepoints. However, if there are several codepoints that go together into a single glyph (like an emoji "thumbs up" followed by a skin color), they may be split between events.
This event will never be delivered unless text input is enabled by calling SDL_StartTextInput(). Text input is enabled by default on desktop platforms, and disabled by default on mobile platforms!