SDL: Use C99 bool internally in SDL

From 8f546bb3c900ad240bae06ecaa147d0378d16d04 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Thu, 22 Aug 2024 09:21:26 -0700
Subject: [PATCH] Use C99 bool internally in SDL

---
 CMakeLists.txt                                |   1 +
 cmake/PreseedEmscriptenCache.cmake            |   1 +
 cmake/PreseedMSVCCache.cmake                  |   1 +
 include/build_config/SDL_build_config.h.cmake |   1 +
 .../build_config/SDL_build_config_android.h   |   1 +
 .../SDL_build_config_emscripten.h             |   1 +
 include/build_config/SDL_build_config_ios.h   |   1 +
 include/build_config/SDL_build_config_macos.h |   1 +
 .../build_config/SDL_build_config_windows.h   |   1 +
 .../build_config/SDL_build_config_wingdk.h    |   1 +
 include/build_config/SDL_build_config_winrt.h |   1 +
 include/build_config/SDL_build_config_xbox.h  |   1 +
 src/SDL.c                                     |  38 +-
 src/SDL_assert.c                              |   8 +-
 src/SDL_error.c                               |   8 +-
 src/SDL_error_c.h                             |   2 +-
 src/SDL_hashtable.c                           |  64 +--
 src/SDL_hashtable.h                           |  20 +-
 src/SDL_hints.c                               |  22 +-
 src/SDL_hints_c.h                             |   2 +-
 src/SDL_internal.h                            |  10 +
 src/SDL_log.c                                 |  36 +-
 src/SDL_properties.c                          |  32 +-
 src/SDL_utils.c                               |  26 +-
 src/SDL_utils_c.h                             |   6 +-
 src/atomic/SDL_atomic.c                       |   8 +-
 src/atomic/SDL_spinlock.c                     |   8 +-
 src/audio/SDL_audio.c                         | 184 ++++----
 src/audio/SDL_audiocvt.c                      |  46 +-
 src/audio/SDL_audiodev.c                      |  16 +-
 src/audio/SDL_audiodev_c.h                    |   2 +-
 src/audio/SDL_audioqueue.c                    |  16 +-
 src/audio/SDL_audioqueue.h                    |   2 +-
 src/audio/SDL_audioresample.c                 |   6 +-
 src/audio/SDL_audiotypecvt.c                  |   4 +-
 src/audio/SDL_sysaudio.h                      |  50 +-
 src/audio/SDL_wave.c                          |   4 +-
 src/audio/aaudio/SDL_aaudio.c                 |  30 +-
 src/audio/alsa/SDL_alsa_audio.c               |  50 +-
 src/audio/coreaudio/SDL_coreaudio.h           |   2 +-
 src/audio/coreaudio/SDL_coreaudio.m           |  90 ++--
 src/audio/directsound/SDL_directsound.c       |  24 +-
 src/audio/disk/SDL_diskaudio.c                |  16 +-
 src/audio/dsp/SDL_dspaudio.c                  |  24 +-
 src/audio/dummy/SDL_dummyaudio.c              |  12 +-
 src/audio/emscripten/SDL_emscriptenaudio.c    |  10 +-
 src/audio/haiku/SDL_haikuaudio.cc             |  12 +-
 src/audio/jack/SDL_jackaudio.c                |  20 +-
 src/audio/n3ds/SDL_n3dsaudio.c                |  12 +-
 src/audio/n3ds/SDL_n3dsaudio.h                |   2 +-
 src/audio/netbsd/SDL_netbsdaudio.c            |  14 +-
 src/audio/openslES/SDL_openslES.c             |  14 +-
 src/audio/pipewire/SDL_pipewire.c             |  84 ++--
 src/audio/ps2/SDL_ps2audio.c                  |  10 +-
 src/audio/psp/SDL_pspaudio.c                  |  14 +-
 src/audio/pulseaudio/SDL_pulseaudio.c         |  66 +--
 src/audio/qnx/SDL_qsa_audio.c                 |  18 +-
 src/audio/qnx/SDL_qsa_audio.h                 |   2 +-
 src/audio/sndio/SDL_sndioaudio.c              |  16 +-
 src/audio/vita/SDL_vitaaudio.c                |  12 +-
 src/audio/wasapi/SDL_wasapi.c                 |  46 +-
 src/audio/wasapi/SDL_wasapi.h                 |   6 +-
 src/audio/wasapi/SDL_wasapi_win32.c           |  10 +-
 src/audio/wasapi/SDL_wasapi_winrt.cpp         |  12 +-
 src/camera/SDL_camera.c                       |  38 +-
 src/camera/SDL_syscamera.h                    |  16 +-
 src/camera/android/SDL_camera_android.c       |  24 +-
 src/camera/coremedia/SDL_camera_coremedia.m   |  18 +-
 src/camera/dummy/SDL_camera_dummy.c           |   6 +-
 src/camera/emscripten/SDL_camera_emscripten.c |  10 +-
 .../SDL_camera_mediafoundation.c              |  24 +-
 src/camera/pipewire/SDL_camera_pipewire.c     |  34 +-
 src/camera/v4l2/SDL_camera_v4l2.c             |  14 +-
 src/core/SDL_core_unsupported.c               |   8 +-
 src/core/android/SDL_android.c                | 102 ++--
 src/core/android/SDL_android.h                |  37 +-
 src/core/freebsd/SDL_evdev_kbd_freebsd.c      |  12 +-
 src/core/haiku/SDL_BApp.h                     |   2 +-
 src/core/linux/SDL_dbus.c                     |  82 ++--
 src/core/linux/SDL_dbus.h                     |  14 +-
 src/core/linux/SDL_evdev.c                    |  34 +-
 src/core/linux/SDL_evdev_kbd.c                |  28 +-
 src/core/linux/SDL_evdev_kbd.h                |   2 +-
 src/core/linux/SDL_fcitx.c                    |  26 +-
 src/core/linux/SDL_fcitx.h                    |   6 +-
 src/core/linux/SDL_ibus.c                     |  88 ++--
 src/core/linux/SDL_ibus.h                     |   8 +-
 src/core/linux/SDL_ime.c                      |  24 +-
 src/core/linux/SDL_ime.h                      |   6 +-
 src/core/linux/SDL_system_theme.c             |  14 +-
 src/core/linux/SDL_system_theme.h             |   2 +-
 src/core/linux/SDL_threadprio.c               |  32 +-
 src/core/linux/SDL_udev.c                     |  28 +-
 src/core/linux/SDL_udev.h                     |   2 +-
 src/core/openbsd/SDL_wscons_kbd.c             |   2 +-
 src/core/openbsd/SDL_wscons_mouse.c           |   2 +-
 src/core/windows/SDL_immdevice.c              |  18 +-
 src/core/windows/SDL_immdevice.h              |   2 +-
 src/core/windows/SDL_windows.c                |  10 +-
 src/core/windows/SDL_windows.h                |  10 +-
 src/core/winrt/SDL_winrtapp_direct3d.cpp      |   6 +-
 src/core/winrt/SDL_winrtapp_xaml.cpp          |   6 +-
 src/core/winrt/SDL_winrtapp_xaml.h            |   2 +-
 src/cpuinfo/SDL_cpuinfo.c                     |  22 +-
 src/dialog/android/SDL_androiddialog.c        |   4 +-
 src/dialog/cocoa/SDL_cocoadialog.m            |   6 +-
 src/dialog/haiku/SDL_haikudialog.cc           |   4 +-
 src/dialog/unix/SDL_portaldialog.c            |  12 +-
 src/dialog/unix/SDL_portaldialog.h            |   4 +-
 src/dialog/unix/SDL_unixdialog.c              |  10 +-
 src/dialog/unix/SDL_zenitydialog.c            |   8 +-
 src/dialog/unix/SDL_zenitydialog.h            |   4 +-
 src/dialog/windows/SDL_windowsdialog.c        |   2 +-
 src/events/SDL_dropevents.c                   |  12 +-
 src/events/SDL_events.c                       | 132 +++---
 src/events/SDL_keyboard.c                     |  62 +--
 src/events/SDL_keyboard_c.h                   |  14 +-
 src/events/SDL_keymap.c                       |  16 +-
 src/events/SDL_mouse.c                        | 168 +++----
 src/events/SDL_mouse_c.h                      |  54 +--
 src/events/SDL_pen.c                          |  30 +-
 src/events/SDL_pen_c.h                        |   2 +-
 src/events/SDL_quit.c                         |  22 +-
 src/events/SDL_touch.c                        |  28 +-
 src/events/SDL_touch_c.h                      |   6 +-
 src/events/SDL_windowevents.c                 |  10 +-
 src/file/SDL_iostream.c                       |  60 +--
 src/file/n3ds/SDL_iostreamromfs.c             |   8 +-
 src/filesystem/SDL_filesystem.c               |  18 +-
 src/filesystem/cocoa/SDL_sysfilesystem.m      |   4 +-
 src/filesystem/gdk/SDL_sysfilesystem.cpp      |   2 +-
 src/filesystem/windows/SDL_sysfilesystem.c    |   2 +-
 src/haptic/SDL_haptic.c                       |  28 +-
 src/haptic/SDL_syshaptic.h                    |   6 +-
 src/haptic/android/SDL_syshaptic.c            |   8 +-
 src/haptic/darwin/SDL_syshaptic.c             |  20 +-
 src/haptic/dummy/SDL_syshaptic.c              |   8 +-
 src/haptic/linux/SDL_syshaptic.c              |  16 +-
 src/haptic/windows/SDL_dinputhaptic.c         |  18 +-
 src/haptic/windows/SDL_windowshaptic.c        |  12 +-
 src/haptic/windows/SDL_windowshaptic_c.h      |   2 +-
 src/hidapi/SDL_hidapi.c                       |  52 +-
 src/hidapi/SDL_hidapi_c.h                     |   2 +-
 src/hidapi/android/hid.cpp                    |   6 +-
 src/hidapi/ios/hid.m                          |   2 +-
 src/joystick/SDL_gamepad.c                    | 238 +++++-----
 src/joystick/SDL_gamepad_c.h                  |   4 +-
 src/joystick/SDL_joystick.c                   | 344 +++++++-------
 src/joystick/SDL_joystick_c.h                 |  84 ++--
 src/joystick/SDL_steam_virtual_gamepad.c      |  14 +-
 src/joystick/SDL_steam_virtual_gamepad.h      |   4 +-
 src/joystick/SDL_sysjoystick.h                |  20 +-
 src/joystick/android/SDL_sysjoystick.c        |  16 +-
 src/joystick/android/SDL_sysjoystick_c.h      |   4 +-
 src/joystick/apple/SDL_mfijoystick.m          |  56 +--
 src/joystick/apple/SDL_mfijoystick_c.h        |  26 +-
 src/joystick/bsd/SDL_bsdjoystick.c            |  10 +-
 src/joystick/darwin/SDL_iokitjoystick.c       |  74 +--
 src/joystick/darwin/SDL_iokitjoystick_c.h     |   6 +-
 src/joystick/dummy/SDL_sysjoystick.c          |  10 +-
 src/joystick/emscripten/SDL_sysjoystick.c     |  10 +-
 src/joystick/gdk/SDL_gameinputjoystick.c      |  40 +-
 src/joystick/haiku/SDL_haikujoystick.cc       |  10 +-
 src/joystick/hidapi/SDL_hidapi_combined.c     |  26 +-
 src/joystick/hidapi/SDL_hidapi_gamecube.c     |  50 +-
 src/joystick/hidapi/SDL_hidapi_luna.c         |  20 +-
 src/joystick/hidapi/SDL_hidapi_ps3.c          | 136 +++---
 src/joystick/hidapi/SDL_hidapi_ps4.c          | 178 +++----
 src/joystick/hidapi/SDL_hidapi_ps5.c          | 180 +++----
 src/joystick/hidapi/SDL_hidapi_rumble.c       |  14 +-
 src/joystick/hidapi/SDL_hidapi_rumble.h       |   2 +-
 src/joystick/hidapi/SDL_hidapi_shield.c       |  44 +-
 src/joystick/hidapi/SDL_hidapi_stadia.c       |  24 +-
 src/joystick/hidapi/SDL_hidapi_steam.c        |  36 +-
 src/joystick/hidapi/SDL_hidapi_steamdeck.c    |  48 +-
 src/joystick/hidapi/SDL_hidapi_switch.c       | 222 ++++-----
 src/joystick/hidapi/SDL_hidapi_wii.c          | 182 +++----
 src/joystick/hidapi/SDL_hidapi_xbox360.c      |  54 +--
 src/joystick/hidapi/SDL_hidapi_xbox360w.c     |  50 +-
 src/joystick/hidapi/SDL_hidapi_xboxone.c      | 162 +++----
 src/joystick/hidapi/SDL_hidapijoystick.c      | 224 ++++-----
 src/joystick/hidapi/SDL_hidapijoystick_c.h    |  34 +-
 src/joystick/linux/SDL_sysjoystick.c          | 134 +++---
 src/joystick/linux/SDL_sysjoystick_c.h        |  34 +-
 src/joystick/n3ds/SDL_sysjoystick.c           |  10 +-
 src/joystick/ps2/SDL_sysjoystick.c            |  12 +-
 src/joystick/psp/SDL_sysjoystick.c            |  10 +-
 src/joystick/steam/SDL_steamcontroller.h      |   2 +-
 src/joystick/virtual/SDL_virtualjoystick.c    |  18 +-
 src/joystick/virtual/SDL_virtualjoystick_c.h  |   4 +-
 src/joystick/vita/SDL_sysjoystick.c           |  14 +-
 src/joystick/windows/SDL_dinputjoystick.c     |  72 +--
 src/joystick/windows/SDL_dinputjoystick_c.h   |   2 +-
 src/joystick/windows/SDL_rawinputjoystick.c   | 244 +++++-----
 src/joystick/windows/SDL_rawinputjoystick_c.h |   2 +-
 .../windows/SDL_windows_gaming_input.c        |  50 +-
 src/joystick/windows/SDL_windowsjoystick.c    |  44 +-
 src/joystick/windows/SDL_windowsjoystick_c.h  |  12 +-
 src/joystick/windows/SDL_xinputjoystick.c     |  38 +-
 src/joystick/windows/SDL_xinputjoystick_c.h   |   4 +-
 src/loadso/dlopen/SDL_sysloadso.c             |   2 +-
 src/locale/SDL_locale.c                       |   4 +-
 src/locale/unix/SDL_syslocale.c               |   2 +-
 src/locale/windows/SDL_syslocale.c            |   2 +-
 src/main/SDL_main_callbacks.c                 |  16 +-
 src/main/SDL_main_callbacks.h                 |   4 +-
 src/main/emscripten/SDL_sysmain_callbacks.c   |   2 +-
 src/main/generic/SDL_sysmain_callbacks.c      |   2 +-
 src/main/ios/SDL_sysmain_callbacks.m          |   2 +-
 src/power/SDL_power.c                         |  10 +-
 src/power/SDL_syspower.h                      |  30 +-
 src/power/android/SDL_syspower.c              |   4 +-
 src/power/emscripten/SDL_syspower.c           |   8 +-
 src/power/haiku/SDL_syspower.c                |  16 +-
 src/power/linux/SDL_syspower.c                | 138 +++---
 src/power/macos/SDL_syspower.c                |  34 +-
 src/power/n3ds/SDL_syspower.c                 |   4 +-
 src/power/psp/SDL_syspower.c                  |   4 +-
 src/power/uikit/SDL_syspower.h                |   2 +-
 src/power/uikit/SDL_syspower.m                |   4 +-
 src/power/vita/SDL_syspower.c                 |   4 +-
 src/power/windows/SDL_syspower.c              |  12 +-
 src/power/winrt/SDL_syspower.cpp              |   4 +-
 src/render/SDL_render.c                       | 148 +++---
 src/render/SDL_sysrender.h                    |  30 +-
 src/render/direct3d/SDL_render_d3d.c          |  88 ++--
 src/render/direct3d11/SDL_render_d3d11.c      |  64 +--
 src/render/direct3d12/SDL_render_d3d12.c      |  76 +--
 .../direct3d12/SDL_render_d3d12_xbox.cpp      |   2 +-
 src/render/direct3d12/SDL_render_d3d12_xbox.h |   2 +-
 src/render/metal/SDL_render_metal.m           |  78 +--
 src/render/opengl/SDL_render_gl.c             | 168 +++----
 src/render/opengl/SDL_shaders_gl.c            |  26 +-
 src/render/opengles2/SDL_render_gles2.c       | 102 ++--
 src/render/psp/SDL_render_psp.c               |  36 +-
 src/render/software/SDL_blendline.c           |  20 +-
 src/render/software/SDL_drawline.c            |  12 +-
 src/render/software/SDL_render_sw.c           |  42 +-
 src/render/software/SDL_rotate.c              |  10 +-
 src/render/software/SDL_triangle.c            |  12 +-
 src/render/vitagxm/SDL_render_vita_gxm.c      |  54 +--
 .../vitagxm/SDL_render_vita_gxm_tools.c       |   2 +-
 .../vitagxm/SDL_render_vita_gxm_types.h       |  20 +-
 src/render/vulkan/SDL_render_vulkan.c         | 156 +++---
 src/sensor/SDL_sensor.c                       |  34 +-
 src/sensor/SDL_sensor_c.h                     |   6 +-
 src/sensor/android/SDL_androidsensor.c        |   4 +-
 src/sensor/n3ds/SDL_n3dssensor.c              |   2 +-
 src/sensor/windows/SDL_windowssensor.c        |   4 +-
 src/stdlib/SDL_iconv.c                        |   8 +-
 src/stdlib/SDL_random.c                       |   4 +-
 src/stdlib/SDL_string.c                       | 116 ++---
 src/storage/SDL_storage.c                     |   4 +-
 src/storage/steam/SDL_steamstorage.c          |   2 +-
 src/thread/SDL_thread.c                       |   2 +-
 src/thread/pthread/SDL_systhread.c            |   8 +-
 src/thread/pthread/SDL_systls.c               |   6 +-
 src/thread/windows/SDL_sysrwlock_srw.c        |   4 +-
 src/thread/windows/SDL_syssem.c               |   2 +-
 src/thread/windows/SDL_systls.c               |   6 +-
 src/time/SDL_time.c                           |  16 +-
 src/time/windows/SDL_systime.c                |   4 +-
 src/timer/SDL_timer.c                         |   4 +-
 src/timer/unix/SDL_systimer.c                 |  14 +-
 src/video/SDL_RLEaccel.c                      |  12 +-
 src/video/SDL_RLEaccel_c.h                    |   2 +-
 src/video/SDL_blit.c                          |  12 +-
 src/video/SDL_blit_copy.c                     |   2 +-
 src/video/SDL_bmp.c                           |  60 +--
 src/video/SDL_clipboard.c                     |  24 +-
 src/video/SDL_clipboard_c.h                   |   4 +-
 src/video/SDL_egl.c                           |  54 +--
 src/video/SDL_egl_c.h                         |   4 +-
 src/video/SDL_pixels.c                        |  28 +-
 src/video/SDL_pixels_c.h                      |   4 +-
 src/video/SDL_rect.c                          |  16 +-
 src/video/SDL_rect_c.h                        |   2 +-
 src/video/SDL_rect_impl.h                     |  80 ++--
 src/video/SDL_surface.c                       |  94 ++--
 src/video/SDL_surface_c.h                     |   2 +-
 src/video/SDL_sysvideo.h                      |  82 ++--
 src/video/SDL_video.c                         | 446 +++++++++---------
 src/video/SDL_yuv.c                           | 144 +++---
 src/video/android/SDL_androidclipboard.c      |   2 +-
 src/video/android/SDL_androidclipboard.h      |   2 +-
 src/video/android/SDL_androidevents.c         |  40 +-
 src/video/android/SDL_androidkeyboard.c       |  12 +-
 src/video/android/SDL_androidkeyboard.h       |   4 +-
 src/video/android/SDL_androidmouse.c          |   4 +-
 src/video/android/SDL_androidmouse.h          |   2 +-
 src/video/android/SDL_androidtouch.c          |   4 +-
 src/video/android/SDL_androidvideo.c          |   6 +-
 src/video/android/SDL_androidvideo.h          |   2 +-
 src/video/android/SDL_androidvulkan.c         |   8 +-
 src/video/android/SDL_androidwindow.c         |   2 +-
 src/video/android/SDL_androidwindow.h         |   4 +-
 src/video/cocoa/SDL_cocoaclipboard.h          |   4 +-
 src/video/cocoa/SDL_cocoaclipboard.m          |   6 +-
 src/video/cocoa/SDL_cocoaevents.m             |  12 +-
 src/video/cocoa/SDL_cocoakeyboard.h           |   2 +-
 src/video/cocoa/SDL_cocoakeyboard.m           |  10 +-
 src/video/cocoa/SDL_cocoametalview.m          |   4 +-
 src/video/cocoa/SDL_cocoamodes.m              |  34 +-
 src/video/cocoa/SDL_cocoamouse.h              |   2 +-
 src/video/cocoa/SDL_cocoamouse.m              |  10 +-
 src/video/cocoa/SDL_cocoaopengl.m             |   4 +-
 src/video/cocoa/SDL_cocoapen.h                |   2 +-
 src/video/cocoa/SDL_cocoapen.m                |  24 +-
 src/video/cocoa/SDL_cocoavideo.m              |  12 +-
 src/video/cocoa/SDL_cocoavulkan.m             |  12 +-
 src/video/cocoa/SDL_cocoawindow.h             |  22 +-
 src/video/cocoa/SDL_cocoawindow.m             | 108 ++---
 src/video/dummy/SDL_nullframebuffer.c         |   2 +-
 src/video/dummy/SDL_nullvideo.c               |   8 +-
 src/video/emscripten/SDL_emscriptenevents.c   |  26 +-
 .../emscripten/SDL_emscriptenframebuffer.c    |   2 +-
 src/video/emscripten/SDL_emscriptenmouse.c    |  10 +-
 src/video/emscripten/SDL_emscriptenmouse.h    |   2 +-
 src/video/emscripten/SDL_emscriptenopengles.c |   2 +-
 src/video/emscripten/SDL_emscriptenvideo.c    |   6 +-
 src/video/emscripten/SDL_emscriptenvideo.h    |   6 +-
 src/video/gdk/SDL_gdktextinput.cpp            |  12 +-
 src/video/gdk/SDL_gdktextinput.h              |   4 +-
 src/video/haiku/SDL_bclipboard.cc             |   4 +-
 src/video/haiku/SDL_bclipboard.h              |   2 +-
 src/video/haiku/SDL_bvideo.cc                 |   6 +-
 src/video/haiku/SDL_bwindow.cc                |  10 +-
 src/video/haiku/SDL_bwindow.h                 |   6 +-
 src/video/kmsdrm/SDL_kmsdrmmouse.c            |   6 +-
 src/video/kmsdrm/SDL_kmsdrmopengles.c         |   2 +-
 src/video/kmsdrm/SDL_kmsdrmvideo.c            | 104 ++--
 src/video/kmsdrm/SDL_kmsdrmvideo.h            |  20 +-
 src/video/kmsdrm/SDL_kmsdrmvulkan.c           |  24 +-
 src/video/n3ds/SDL_n3dsswkb.c                 |   4 +-
 src/video/n3ds/SDL_n3dsswkb.h                 |   2 +-
 src/video/n3ds/SDL_n3dstouch.c                |   4 +-
 src/video/n3ds/SDL_n3dsvideo.c                |   2 +-
 .../offscreen/SDL_offscreenframebuffer.c      |   2 +-
 src/video/offscreen/SDL_offscreenvideo.c      |   6 +-
 src/video/offscreen/SDL_offscreenvulkan.c     |  14 +-
 src/video/psp/SDL_pspgl.c                     |   4 +-
 src/video/psp/SDL_pspvideo.c                  |  12 +-
 src/video/psp/SDL_pspvideo.h                  |   8 +-
 src/video/qnx/SDL_qnxvideo.c                  |   6 +-
 src/video/raspberry/SDL_rpimouse.c            |   2 +-
 src/video/raspberry/SDL_rpivideo.c            |   8 +-
 src/video/raspberry/SDL_rpivideo.h            |   2 +-
 src/video/riscos/SDL_riscosevents.c           |   8 +-
 src/video/riscos/SDL_riscosmodes.c            |  10 +-
 src/video/riscos/SDL_riscosvideo.c            |   4 +-
 src/video/uikit/SDL_uikitappdelegate.m        |   4 +-
 src/video/uikit/SDL_uikitclipboard.h          |   2 +-
 src/video/uikit/SDL_uikitclipboard.m          |   6 +-
 src/video/uikit/SDL_uikitevents.h             |   2 +-
 src/video/uikit/SDL_uikitevents.m             |  18 +-
 src/video/uikit/SDL_uikitmessagebox.h         |   2 +-
 src/video/uikit/SDL_uikitmessagebox.m         |   8 +-
 src/video/uikit/SDL_uikitmodes.h              |   6 +-
 src/video/uikit/SDL_uikitmodes.m              |  24 +-
 src/video/uikit/SDL_uikitvideo.h              |   2 +-
 src/video/uikit/SDL_uikitvideo.m              |   6 +-
 src/video/uikit/SDL_uikitview.m               |   6 +-
 src/video/uikit/SDL_uikitviewcontroller.h     |   4 +-
 src/video/uikit/SDL_uikitviewcontroller.m     |  10 +-
 src/video/uikit/SDL_uikitvulkan.m             |  12 +-
 src/video/uikit/SDL_uikitwindow.h             |   2 +-
 src/video/uikit/SDL_uikitwindow.m             |  10 +-
 src/video/vita/SDL_vitagl_pvr.c               |   2 +-
 src/video/vita/SDL_vitagles.c                 |   4 +-
 src/video/vita/SDL_vitagles_pvr.c             |   2 +-
 src/video/vita/SDL_vitakeyboard.c             |   2 +-
 src/video/vita/SDL_vitamessagebox.c           |   4 +-
 src/video/vita/SDL_vitamouse.c                |   4 +-
 src/video/vita/SDL_vitatouch.c                |  12 +-
 src/video/vita/SDL_vitavideo.c                |  26 +-
 src/video/vita/SDL_vitavideo.h                |  12 +-
 src/video/vivante/SDL_vivantevideo.c          |   2 +-
 src/video/vivante/SDL_vivantevulkan.c         |   8 +-
 src/video/wayland/SDL_waylandclipboard.c      |  10 +-
 src/video/wayland/SDL_waylandclipboard.h      |   4 +-
 src/video/wayland/SDL_waylanddatamanager.c    |   8 +-
 src/video/wayland/SDL_waylanddatamanager.h    |   6 +-
 src/video/wayland/SDL_waylanddyn.c            |   8 +-
 src/video/wayland/SDL_waylandevents.c         | 128 ++---
 src/video/wayland/SDL_waylandevents_c.h       |   6 +-
 src/video/wayland/SDL_waylandkeyboard.c       |   6 +-
 src/video/wayland/SDL_waylandkeyboard.h       |   4 +-
 src/video/wayland/SDL_waylandmouse.c          |  40 +-
 src/video/wayland/SDL_waylandvideo.c          |  92 ++--
 src/video/wayland/SDL_waylandvideo.h          |  18 +-
 src/video/wayland/SDL_waylandvulkan.c         |  14 +-
 src/video/wayland/SDL_waylandvulkan.h         |   2 +-
 src/video/wayland/SDL_waylandwindow.c         | 130 ++---
 src/video/wayland/SDL_waylandwindow.h         |  38 +-
 src/video/windows/SDL_windowsclipboard.c      |  10 +-
 src/video/windows/SDL_windowsclipboard.h      |   2 +-
 src/video/windows/SDL_windowsevents.c         | 172 +++----
 src/video/windows/SDL_windowsevents.h         |   2 +-
 src/video/windows/SDL_windowsframebuffer.c    |   2 +-
 src/video/windows/SDL_windowsgameinput.c      |  30 +-
 src/video/windows/SDL_windowskeyboard.c       |  78 +--
 src/video/windows/SDL_windowskeyboard.h       |   4 +-
 src/video/windows/SDL_windowsmessagebox.c     |  62 +--
 src/video/windows/SDL_windowsmodes.c          |  44 +-
 src/video/windows/SDL_windowsmouse.c          |  24 +-
 src/video/windows/SDL_windowsopengl.c         |  28 +-
 src/video/windows/SDL_windowsopengl.h         |  12 +-
 src/video/windows/SDL_windowsopengles.c       |   4 +-
 src/video/windows/SDL_windowsrawinput.c       |  16 +-
 src/video/windows/SDL_windowsrawinput.h       |   4 +-
 src/video/windows/SDL_windowsvideo.c          |  46 +-
 src/video/windows/SDL_windowsvideo.h          |  40 +-
 src/video/windows/SDL_windowsvulkan.c         |  14 +-
 src/video/windows/SDL_windowsvulkan.h         |   2 +-
 src/video/windows/SDL_windowswindow.c         | 108 ++---
 src/video/windows/SDL_windowswindow.h         |  40 +-
 src/video/winrt/SDL_winrtevents_c.h           |   6 +-
 src/video/winrt/SDL_winrtkeyboard.cpp         |  12 +-
 src/video/winrt/SDL_winrtmouse.cpp            |   4 +-
 src/video/winrt/SDL_winrtmouse_c.h            |   2 +-
 src/video/winrt/SDL_winrtpointerinput.cpp     |  24 +-
 src/video/winrt/SDL_winrtvideo.cpp            |   8 +-
 src/video/x11/SDL_x11clipboard.c              |  30 +-
 src/video/x11/SDL_x11clipboard.h              |   4 +-
 src/video/x11/SDL_x11events.c                 | 144 +++---
 src/video/x11/SDL_x11events.h                 |   4 +-
 src/video/x11/SDL_x11framebuffer.c            |   8 +-
 src/video/x11/SDL_x11keyboard.c               |  24 +-
 src/video/x11/SDL_x11keyboard.h               |   6 +-
 src/video/x11/SDL_x11messagebox.c             |  26 +-
 src/video/x11/SDL_x11modes.c                  |  46 +-
 src/video/x11/SDL_x11modes.h                  |   2 +-
 src/video/x11/SDL_x11mouse.c                  |  16 +-
 src/video/x11/SDL_x11mouse.h                  |   2 +-
 src/video/x11/SDL_x11opengl.c                 |  48 +-
 src/video/x11/SDL_x11opengl.h                 |  16 +-
 src/video/x11/SDL_x11opengles.c               |   4 +-
 src/video/x11/SDL_x11opengles.h               |   2 +-
 src/video/x11/SDL_x11pen.c                    |  34 +-
 src/video/x11/SDL_x11pen.h                    |   2 +-
 src/video/x11/SDL_x11video.c                  |  28 +-
 src/video/x11/SDL_x11video.h                  |  20 +-
 src/video/x11/SDL_x11vulkan.c                 |  20 +-
 src/video/x11/SDL_x11vulkan.h                 |   2 +-
 src/video/x11/SDL_x11window.c                 | 114 ++---
 src/video/x11/SDL_x11window.h                 |  46 +-
 src/video/x11/SDL_x11xfixes.c                 |   8 +-
 src/video/x11/SDL_x11xinput2.c                |  70 +--
 src/video/x11/SDL_x11xinput2.h                |   6 +-
 test/CMakeLists.txt                           |   2 +-
 450 files changed, 6046 insertions(+), 6033 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index dd8ce5dba838c..55dec2e138785 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -972,6 +972,7 @@ if(SDL_LIBC)
     memory.h
     signal.h
     stdarg.h
+    stdbool.h
     stddef.h
     stdint.h
     stdio.h
diff --git a/cmake/PreseedEmscriptenCache.cmake b/cmake/PreseedEmscriptenCache.cmake
index ca68202b26f18..261e7ea677e96 100644
--- a/cmake/PreseedEmscriptenCache.cmake
+++ b/cmake/PreseedEmscriptenCache.cmake
@@ -82,6 +82,7 @@ if(EMSCRIPTEN)
     set(LIBC_HAS_SQRTF                                   "1"   CACHE INTERNAL "Have symbol sqrtf")
     set(LIBC_HAS_SSCANF                                  "1"   CACHE INTERNAL "Have symbol sscanf")
     set(LIBC_HAS_STDARG_H                                "1"   CACHE INTERNAL "Have include stdarg.h")
+    set(LIBC_HAS_STDBOOL_H                               "1"   CACHE INTERNAL "Have include stdbool.h")
     set(LIBC_HAS_STDDEF_H                                "1"   CACHE INTERNAL "Have include stddef.h")
     set(LIBC_HAS_STDINT_H                                "1"   CACHE INTERNAL "Have include stdint.h")
     set(LIBC_HAS_STDIO_H                                 "1"   CACHE INTERNAL "Have include stdio.h")
diff --git a/cmake/PreseedMSVCCache.cmake b/cmake/PreseedMSVCCache.cmake
index d0b5ebfe4b21d..76d3fa4b8b5a5 100644
--- a/cmake/PreseedMSVCCache.cmake
+++ b/cmake/PreseedMSVCCache.cmake
@@ -96,6 +96,7 @@ if(MSVC)
     set(LIBC_HAS_SQRTF                                   "1"   CACHE INTERNAL "Have symbol sqrtf")
     set(LIBC_HAS_SSCANF                                  "1"   CACHE INTERNAL "Have symbol sscanf")
     set(LIBC_HAS_STDARG_H                                "1"   CACHE INTERNAL "Have include stdarg.h")
+    set(LIBC_HAS_STDBOOL_H                               "1"   CACHE INTERNAL "Have include stdbool.h")
     set(LIBC_HAS_STDDEF_H                                "1"   CACHE INTERNAL "Have include stddef.h")
     set(LIBC_HAS_STDINT_H                                "1"   CACHE INTERNAL "Have include stdint.h")
     set(LIBC_HAS_STDIO_H                                 "1"   CACHE INTERNAL "Have include stdio.h")
diff --git a/include/build_config/SDL_build_config.h.cmake b/include/build_config/SDL_build_config.h.cmake
index 74e4479ab9385..dceb68cd43412 100644
--- a/include/build_config/SDL_build_config.h.cmake
+++ b/include/build_config/SDL_build_config.h.cmake
@@ -59,6 +59,7 @@
 #cmakedefine HAVE_MEMORY_H 1
 #cmakedefine HAVE_SIGNAL_H 1
 #cmakedefine HAVE_STDARG_H 1
+#cmakedefine HAVE_STDBOOL_H 1
 #cmakedefine HAVE_STDDEF_H 1
 #cmakedefine HAVE_STDINT_H 1
 #cmakedefine HAVE_STDIO_H 1
diff --git a/include/build_config/SDL_build_config_android.h b/include/build_config/SDL_build_config_android.h
index 926cff8df2b0f..d6ae49abc5fb5 100644
--- a/include/build_config/SDL_build_config_android.h
+++ b/include/build_config/SDL_build_config_android.h
@@ -42,6 +42,7 @@
 #define HAVE_MATH_H 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STDARG_H 1
+#define HAVE_STDBOOL_H 1
 #define HAVE_STDDEF_H 1
 #define HAVE_STDINT_H 1
 #define HAVE_STDIO_H 1
diff --git a/include/build_config/SDL_build_config_emscripten.h b/include/build_config/SDL_build_config_emscripten.h
index c994d2540a221..e4ac92abff5fc 100644
--- a/include/build_config/SDL_build_config_emscripten.h
+++ b/include/build_config/SDL_build_config_emscripten.h
@@ -44,6 +44,7 @@
 #define HAVE_MEMORY_H 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STDARG_H 1
+#define HAVE_STDBOOL_H 1
 #define HAVE_STDDEF_H 1
 #define HAVE_STDINT_H 1
 #define HAVE_STDIO_H 1
diff --git a/include/build_config/SDL_build_config_ios.h b/include/build_config/SDL_build_config_ios.h
index 430a9841734d9..b283858e833d8 100644
--- a/include/build_config/SDL_build_config_ios.h
+++ b/include/build_config/SDL_build_config_ios.h
@@ -34,6 +34,7 @@
 #define HAVE_MATH_H 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STDARG_H 1
+#define HAVE_STDBOOL_H 1
 #define HAVE_STDDEF_H 1
 #define HAVE_STDINT_H 1
 #define HAVE_STDIO_H 1
diff --git a/include/build_config/SDL_build_config_macos.h b/include/build_config/SDL_build_config_macos.h
index c5bbc199e96a2..874b4d3be88a9 100644
--- a/include/build_config/SDL_build_config_macos.h
+++ b/include/build_config/SDL_build_config_macos.h
@@ -39,6 +39,7 @@
 #define HAVE_MATH_H 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STDARG_H 1
+#define HAVE_STDBOOL_H 1
 #define HAVE_STDDEF_H 1
 #define HAVE_STDINT_H 1
 #define HAVE_STDIO_H 1
diff --git a/include/build_config/SDL_build_config_windows.h b/include/build_config/SDL_build_config_windows.h
index 6834afc59577c..669d4e681005d 100644
--- a/include/build_config/SDL_build_config_windows.h
+++ b/include/build_config/SDL_build_config_windows.h
@@ -124,6 +124,7 @@ typedef unsigned int uintptr_t;
 #define HAVE_MATH_H 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STDARG_H 1
+#define HAVE_STDBOOL_H 1
 #define HAVE_STDDEF_H 1
 #define HAVE_STDIO_H 1
 #define HAVE_STDLIB_H 1
diff --git a/include/build_config/SDL_build_config_wingdk.h b/include/build_config/SDL_build_config_wingdk.h
index 859b606e8ae2f..3fd847c9d10a5 100644
--- a/include/build_config/SDL_build_config_wingdk.h
+++ b/include/build_config/SDL_build_config_wingdk.h
@@ -63,6 +63,7 @@
 #define HAVE_MATH_H 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STDARG_H 1
+#define HAVE_STDBOOL_H 1
 #define HAVE_STDDEF_H 1
 #define HAVE_STDINT_H 1
 #define HAVE_STDIO_H 1
diff --git a/include/build_config/SDL_build_config_winrt.h b/include/build_config/SDL_build_config_winrt.h
index 7de89bf803b24..57d1dea420af0 100644
--- a/include/build_config/SDL_build_config_winrt.h
+++ b/include/build_config/SDL_build_config_winrt.h
@@ -62,6 +62,7 @@
 #define HAVE_MATH_H 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STDARG_H 1
+#define HAVE_STDBOOL_H 1
 #define HAVE_STDDEF_H 1
 #define HAVE_STDINT_H 1
 #define HAVE_STDIO_H 1
diff --git a/include/build_config/SDL_build_config_xbox.h b/include/build_config/SDL_build_config_xbox.h
index 0ff0ded83b9e2..3ad30290dd3b3 100644
--- a/include/build_config/SDL_build_config_xbox.h
+++ b/include/build_config/SDL_build_config_xbox.h
@@ -62,6 +62,7 @@
 #define HAVE_MATH_H 1

(Patch may be truncated, please check the link at the top of this post.)