SDL: Add text input properties for on-screen keyboard customization

From 6f7fb0a3dcc4b157208513d3354b9407e7a87baf Mon Sep 17 00:00:00 2001
From: Jesse Chounard <[EMAIL REDACTED]>
Date: Sun, 5 Apr 2026 11:40:16 -0500
Subject: [PATCH] Add text input properties for on-screen keyboard
 customization

---
 include/SDL3/SDL_keyboard.h | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/include/SDL3/SDL_keyboard.h b/include/SDL3/SDL_keyboard.h
index d14ab6fb27c83..0d3d67033bfa1 100644
--- a/include/SDL3/SDL_keyboard.h
+++ b/include/SDL3/SDL_keyboard.h
@@ -449,6 +449,14 @@ typedef enum SDL_Capitalization
  *   are allowed. This defaults to true if SDL_HINT_RETURN_KEY_HIDES_IME is
  *   "0" or is not set, and defaults to false if SDL_HINT_RETURN_KEY_HIDES_IME
  *   is "1".
+ * - `SDL_PROP_TEXTINPUT_TITLE_STRING` - a title for the top of the on-screen
+ *   keyboard window, if it has one.
+ * - `SDL_PROP_TEXTINPUT_PLACEHOLDER_STRING` - the placeholder shown before the
+ *   user starts typing, when the field is empty.
+ * - `SDL_PROP_TEXTINPUT_DEFAULT_TEXT_STRING` - text to prefill the text field
+ *   with.
+ * - `SDL_PROP_TEXTINPUT_MAX_LENGTH_NUMBER` - maximum length for the text field,
+ *   in characters (not bytes).
  *
  * On Android you can directly specify the input type:
  *
@@ -476,6 +484,10 @@ extern SDL_DECLSPEC bool SDLCALL SDL_StartTextInputWithProperties(SDL_Window *wi
 #define SDL_PROP_TEXTINPUT_CAPITALIZATION_NUMBER        "SDL.textinput.capitalization"
 #define SDL_PROP_TEXTINPUT_AUTOCORRECT_BOOLEAN          "SDL.textinput.autocorrect"
 #define SDL_PROP_TEXTINPUT_MULTILINE_BOOLEAN            "SDL.textinput.multiline"
+#define SDL_PROP_TEXTINPUT_TITLE_STRING                 "SDL.textinput.title"
+#define SDL_PROP_TEXTINPUT_PLACEHOLDER_STRING           "SDL.textinput.placeholder"
+#define SDL_PROP_TEXTINPUT_DEFAULT_TEXT_STRING          "SDL.textinput.default_text"
+#define SDL_PROP_TEXTINPUT_MAX_LENGTH_NUMBER            "SDL.textinput.max_length"
 #define SDL_PROP_TEXTINPUT_ANDROID_INPUTTYPE_NUMBER     "SDL.textinput.android.inputtype"
 
 /**