gosu 2.0.0.pre7 → 2.0.0.pre8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/dependencies/SDL/include/SDL.h +1 -1
  3. data/dependencies/SDL/include/SDL_assert.h +1 -1
  4. data/dependencies/SDL/include/SDL_atomic.h +2 -2
  5. data/dependencies/SDL/include/SDL_audio.h +1 -1
  6. data/dependencies/SDL/include/SDL_bits.h +1 -1
  7. data/dependencies/SDL/include/SDL_blendmode.h +3 -3
  8. data/dependencies/SDL/include/SDL_clipboard.h +1 -1
  9. data/dependencies/SDL/include/SDL_config.h +1 -1
  10. data/dependencies/SDL/include/SDL_cpuinfo.h +1 -1
  11. data/dependencies/SDL/include/SDL_egl.h +1 -1
  12. data/dependencies/SDL/include/SDL_endian.h +1 -1
  13. data/dependencies/SDL/include/SDL_error.h +1 -1
  14. data/dependencies/SDL/include/SDL_events.h +4 -11
  15. data/dependencies/SDL/include/SDL_filesystem.h +3 -3
  16. data/dependencies/SDL/include/SDL_gamecontroller.h +27 -5
  17. data/dependencies/SDL/include/SDL_gesture.h +1 -1
  18. data/dependencies/SDL/include/SDL_guid.h +1 -1
  19. data/dependencies/SDL/include/SDL_haptic.h +1 -1
  20. data/dependencies/SDL/include/SDL_hidapi.h +1 -1
  21. data/dependencies/SDL/include/SDL_hints.h +257 -1
  22. data/dependencies/SDL/include/SDL_joystick.h +1 -1
  23. data/dependencies/SDL/include/SDL_keyboard.h +5 -3
  24. data/dependencies/SDL/include/SDL_keycode.h +1 -1
  25. data/dependencies/SDL/include/SDL_loadso.h +1 -1
  26. data/dependencies/SDL/include/SDL_locale.h +1 -1
  27. data/dependencies/SDL/include/SDL_log.h +3 -3
  28. data/dependencies/SDL/include/SDL_main.h +1 -1
  29. data/dependencies/SDL/include/SDL_messagebox.h +1 -1
  30. data/dependencies/SDL/include/SDL_metal.h +1 -1
  31. data/dependencies/SDL/include/SDL_misc.h +1 -1
  32. data/dependencies/SDL/include/SDL_mouse.h +1 -1
  33. data/dependencies/SDL/include/SDL_mutex.h +1 -1
  34. data/dependencies/SDL/include/SDL_name.h +1 -1
  35. data/dependencies/SDL/include/SDL_opengl.h +1 -1
  36. data/dependencies/SDL/include/SDL_opengles.h +1 -1
  37. data/dependencies/SDL/include/SDL_opengles2.h +1 -1
  38. data/dependencies/SDL/include/SDL_pixels.h +20 -2
  39. data/dependencies/SDL/include/SDL_platform.h +7 -1
  40. data/dependencies/SDL/include/SDL_power.h +1 -1
  41. data/dependencies/SDL/include/SDL_quit.h +1 -1
  42. data/dependencies/SDL/include/SDL_rect.h +1 -1
  43. data/dependencies/SDL/include/SDL_render.h +2 -2
  44. data/dependencies/SDL/include/SDL_revision.h +2 -2
  45. data/dependencies/SDL/include/SDL_rwops.h +1 -1
  46. data/dependencies/SDL/include/SDL_scancode.h +1 -1
  47. data/dependencies/SDL/include/SDL_sensor.h +1 -1
  48. data/dependencies/SDL/include/SDL_shape.h +1 -1
  49. data/dependencies/SDL/include/SDL_stdinc.h +18 -12
  50. data/dependencies/SDL/include/SDL_surface.h +1 -1
  51. data/dependencies/SDL/include/SDL_system.h +17 -2
  52. data/dependencies/SDL/include/SDL_syswm.h +1 -1
  53. data/dependencies/SDL/include/SDL_test.h +1 -1
  54. data/dependencies/SDL/include/SDL_test_assert.h +1 -1
  55. data/dependencies/SDL/include/SDL_test_common.h +1 -1
  56. data/dependencies/SDL/include/SDL_test_compare.h +1 -1
  57. data/dependencies/SDL/include/SDL_test_crc32.h +1 -1
  58. data/dependencies/SDL/include/SDL_test_font.h +1 -1
  59. data/dependencies/SDL/include/SDL_test_fuzzer.h +1 -1
  60. data/dependencies/SDL/include/SDL_test_harness.h +1 -1
  61. data/dependencies/SDL/include/SDL_test_images.h +1 -1
  62. data/dependencies/SDL/include/SDL_test_log.h +1 -1
  63. data/dependencies/SDL/include/SDL_test_md5.h +1 -1
  64. data/dependencies/SDL/include/SDL_test_memory.h +1 -1
  65. data/dependencies/SDL/include/SDL_test_random.h +1 -1
  66. data/dependencies/SDL/include/SDL_thread.h +1 -1
  67. data/dependencies/SDL/include/SDL_timer.h +1 -1
  68. data/dependencies/SDL/include/SDL_touch.h +1 -1
  69. data/dependencies/SDL/include/SDL_types.h +1 -1
  70. data/dependencies/SDL/include/SDL_version.h +3 -3
  71. data/dependencies/SDL/include/SDL_video.h +8 -2
  72. data/dependencies/SDL/include/begin_code.h +3 -1
  73. data/dependencies/SDL/include/close_code.h +1 -1
  74. data/dependencies/SDL/lib/x64/libSDL2.dll.a +0 -0
  75. data/dependencies/SDL/lib/x86/libSDL2.dll.a +0 -0
  76. data/dependencies/SDL_sound/SDL_sound_vorbis.c +6 -3
  77. data/dependencies/SDL_sound/dr_flac.h +9 -5
  78. data/dependencies/SDL_sound/dr_mp3.h +14 -3
  79. data/dependencies/SDL_sound/stb_vorbis.h +66 -20
  80. data/dependencies/stb/stb_image.h +173 -175
  81. data/lib/SDL2.dll +0 -0
  82. data/lib/gosu/image.rb +2 -1
  83. data/lib64/SDL2.dll +0 -0
  84. metadata +5 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: de41d69b5cfd72bea1af496ef95e39cf80d89268d640548c73aeb421d9b05428
4
- data.tar.gz: d2196d8e0a7f65e9c0d77fdfe5c56026570a807a15b4c46a7066c16bc296fcb0
3
+ metadata.gz: 7a04b72648d93e9887d5abd8a8bcb4c63add5707cb9fd57abea02ab7eff4bd04
4
+ data.tar.gz: 16df9db455191f5a46185305520d101d6c0b70d86218ca867d7913f8028c71af
5
5
  SHA512:
6
- metadata.gz: c809f58dd0e31ec02bd3c596e2dab1de6795d70eee53aa5226389815f8b37089289055222ed3f1a4eed3a1f2e4952e452a42042a14385e97737007adbf1dff78
7
- data.tar.gz: 744c254d6ad35c6ceb9acbda0ac26d1d6f4531df389b38c13afea1775bf271be65941076fdc40d707c55a1c1a8a6ac3ae6ed95231c0a7de5bd11dc041bc0cce8
6
+ metadata.gz: 771f80bc51043badae9158a95cd27f1037e497383857ea6d4428bb274ee070a4b5fda6d3e0c13dd2a5b96335a5a6da6408104a12a1a44c1ed16033b9b0fc05f9
7
+ data.tar.gz: ed11bcd63ba595bf9e63d74c5b8950e4d1d13c9a1fbb843e01a32e797e9e2f1d8b208c744def9d87639a6fb226195b244c58fa4a7121998b5b8538cb89b5d84e
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -209,7 +209,7 @@ typedef void (*SDL_KernelMemoryBarrierFunc)();
209
209
  #if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) || defined(__ARM_ARCH_8A__)
210
210
  #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory")
211
211
  #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory")
212
- #elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__)
212
+ #elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__)
213
213
  #ifdef __thumb__
214
214
  /* The mcr instruction isn't available in thumb mode, use real functions */
215
215
  #define SDL_MEMORY_BARRIER_USES_FUNCTION
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -65,8 +65,8 @@ typedef enum
65
65
  typedef enum
66
66
  {
67
67
  SDL_BLENDOPERATION_ADD = 0x1, /**< dst + src: supported by all renderers */
68
- SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */
69
- SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */
68
+ SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */
69
+ SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */
70
70
  SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D9, D3D11 */
71
71
  SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D9, D3D11 */
72
72
  } SDL_BlendOperation;
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -131,6 +131,8 @@ typedef enum
131
131
  SDL_CONTROLLERTOUCHPADMOTION, /**< Game controller touchpad finger was moved */
132
132
  SDL_CONTROLLERTOUCHPADUP, /**< Game controller touchpad finger was lifted */
133
133
  SDL_CONTROLLERSENSORUPDATE, /**< Game controller sensor was updated */
134
+ SDL_CONTROLLERUPDATECOMPLETE_RESERVED_FOR_SDL3,
135
+ SDL_CONTROLLERSTEAMHANDLEUPDATED, /**< Game controller Steam handle has changed */
134
136
 
135
137
  /* Touch events */
136
138
  SDL_FINGERDOWN = 0x700,
@@ -446,7 +448,7 @@ typedef struct SDL_ControllerButtonEvent
446
448
  */
447
449
  typedef struct SDL_ControllerDeviceEvent
448
450
  {
449
- Uint32 type; /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, or ::SDL_CONTROLLERDEVICEREMAPPED */
451
+ Uint32 type; /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, ::SDL_CONTROLLERDEVICEREMAPPED, or ::SDL_CONTROLLERSTEAMHANDLEUPDATED */
450
452
  Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */
451
453
  Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */
452
454
  } SDL_ControllerDeviceEvent;
@@ -580,15 +582,6 @@ typedef struct SDL_QuitEvent
580
582
  Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */
581
583
  } SDL_QuitEvent;
582
584
 
583
- /**
584
- * \brief OS Specific event
585
- */
586
- typedef struct SDL_OSEvent
587
- {
588
- Uint32 type; /**< ::SDL_QUIT */
589
- Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */
590
- } SDL_OSEvent;
591
-
592
585
  /**
593
586
  * \brief A user-defined event type (event.user.*)
594
587
  */
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -64,7 +64,7 @@ extern "C" {
64
64
  * directory of the application as it is uncommon to store resources outside
65
65
  * the executable. As such it is not a writable directory.
66
66
  *
67
- * The returned path is guaranteed to end with a path separator ('\' on
67
+ * The returned path is guaranteed to end with a path separator ('\\' on
68
68
  * Windows, '/' on most other platforms).
69
69
  *
70
70
  * The pointer returned is owned by the caller. Please call SDL_free() on the
@@ -120,7 +120,7 @@ extern DECLSPEC char *SDLCALL SDL_GetBasePath(void);
120
120
  * - ...only use letters, numbers, and spaces. Avoid punctuation like "Game
121
121
  * Name 2: Bad Guy's Revenge!" ... "Game Name 2" is sufficient.
122
122
  *
123
- * The returned path is guaranteed to end with a path separator ('\' on
123
+ * The returned path is guaranteed to end with a path separator ('\\' on
124
124
  * Windows, '/' on most other platforms).
125
125
  *
126
126
  * The pointer returned is owned by the caller. Please call SDL_free() on the
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -73,7 +73,8 @@ typedef enum
73
73
  SDL_CONTROLLER_TYPE_NVIDIA_SHIELD,
74
74
  SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_LEFT,
75
75
  SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_RIGHT,
76
- SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_PAIR
76
+ SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_PAIR,
77
+ SDL_CONTROLLER_TYPE_MAX
77
78
  } SDL_GameControllerType;
78
79
 
79
80
  typedef enum
@@ -523,6 +524,20 @@ extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetFirmwareVersion(SDL_GameCont
523
524
  */
524
525
  extern DECLSPEC const char * SDLCALL SDL_GameControllerGetSerial(SDL_GameController *gamecontroller);
525
526
 
527
+ /**
528
+ * Get the Steam Input handle of an opened controller, if available.
529
+ *
530
+ * Returns an InputHandle_t for the controller that can be used with Steam Input API:
531
+ * https://partner.steamgames.com/doc/api/ISteamInput
532
+ *
533
+ * \param gamecontroller the game controller object to query.
534
+ * \returns the gamepad handle, or 0 if unavailable.
535
+ *
536
+ * \since This function is available since SDL 2.30.0.
537
+ */
538
+ extern DECLSPEC Uint64 SDLCALL SDL_GameControllerGetSteamHandle(SDL_GameController *gamecontroller);
539
+
540
+
526
541
  /**
527
542
  * Check if a controller has been opened and is currently connected.
528
543
  *
@@ -598,7 +613,9 @@ extern DECLSPEC void SDLCALL SDL_GameControllerUpdate(void);
598
613
  * and are centered within ~8000 of zero, though advanced UI will allow users to set
599
614
  * or autodetect the dead zone, which varies between controllers.
600
615
  *
601
- * Trigger axis values range from 0 to SDL_JOYSTICK_AXIS_MAX.
616
+ * Trigger axis values range from 0 (released) to SDL_JOYSTICK_AXIS_MAX
617
+ * (fully pressed) when reported by SDL_GameControllerGetAxis(). Note that this is not the
618
+ * same range that will be reported by the lower-level SDL_GetJoystickAxis().
602
619
  */
603
620
  typedef enum
604
621
  {
@@ -687,8 +704,13 @@ SDL_GameControllerHasAxis(SDL_GameController *gamecontroller, SDL_GameController
687
704
  *
688
705
  * The axis indices start at index 0.
689
706
  *
690
- * The state is a value ranging from -32768 to 32767. Triggers, however, range
691
- * from 0 to 32767 (they never return a negative value).
707
+ * For thumbsticks, the state is a value ranging from -32768 (up/left)
708
+ * to 32767 (down/right).
709
+ *
710
+ * Triggers range from 0 when released to 32767 when fully pressed, and
711
+ * never return a negative value. Note that this differs from the value
712
+ * reported by the lower-level SDL_GetJoystickAxis(), which normally uses
713
+ * the full range.
692
714
  *
693
715
  * \param gamecontroller a game controller
694
716
  * \param axis an axis index (one of the SDL_GameControllerAxis values)
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -631,6 +631,110 @@ extern "C" {
631
631
  */
632
632
  #define SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS "SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS"
633
633
 
634
+ /**
635
+ * A variable containing a list of arcade stick style controllers.
636
+ *
637
+ * The format of the string is a comma separated list of USB VID/PID pairs
638
+ * in hexadecimal form, e.g.
639
+ *
640
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
641
+ *
642
+ * The variable can also take the form of @file, in which case the named
643
+ * file will be loaded and interpreted as the value of the variable.
644
+ */
645
+ #define SDL_HINT_JOYSTICK_ARCADESTICK_DEVICES "SDL_JOYSTICK_ARCADESTICK_DEVICES"
646
+
647
+ /**
648
+ * A variable containing a list of devices that are not arcade stick style controllers. This will override SDL_HINT_JOYSTICK_ARCADESTICK_DEVICES and the built in device list.
649
+ *
650
+ * The format of the string is a comma separated list of USB VID/PID pairs
651
+ * in hexadecimal form, e.g.
652
+ *
653
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
654
+ *
655
+ * The variable can also take the form of @file, in which case the named
656
+ * file will be loaded and interpreted as the value of the variable.
657
+ */
658
+ #define SDL_HINT_JOYSTICK_ARCADESTICK_DEVICES_EXCLUDED "SDL_JOYSTICK_ARCADESTICK_DEVICES_EXCLUDED"
659
+
660
+ /**
661
+ * A variable containing a list of devices that should not be considerd joysticks.
662
+ *
663
+ * The format of the string is a comma separated list of USB VID/PID pairs
664
+ * in hexadecimal form, e.g.
665
+ *
666
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
667
+ *
668
+ * The variable can also take the form of @file, in which case the named
669
+ * file will be loaded and interpreted as the value of the variable.
670
+ */
671
+ #define SDL_HINT_JOYSTICK_BLACKLIST_DEVICES "SDL_JOYSTICK_BLACKLIST_DEVICES"
672
+
673
+ /**
674
+ * A variable containing a list of devices that should be considered joysticks. This will override SDL_HINT_JOYSTICK_BLACKLIST_DEVICES and the built in device list.
675
+ *
676
+ * The format of the string is a comma separated list of USB VID/PID pairs
677
+ * in hexadecimal form, e.g.
678
+ *
679
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
680
+ *
681
+ * The variable can also take the form of @file, in which case the named
682
+ * file will be loaded and interpreted as the value of the variable.
683
+ */
684
+ #define SDL_HINT_JOYSTICK_BLACKLIST_DEVICES_EXCLUDED "SDL_JOYSTICK_BLACKLIST_DEVICES_EXCLUDED"
685
+
686
+ /**
687
+ * A variable containing a list of flightstick style controllers.
688
+ *
689
+ * The format of the string is a comma separated list of USB VID/PID pairs
690
+ * in hexadecimal form, e.g.
691
+ *
692
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
693
+ *
694
+ * The variable can also take the form of @file, in which case the named
695
+ * file will be loaded and interpreted as the value of the variable.
696
+ */
697
+ #define SDL_HINT_JOYSTICK_FLIGHTSTICK_DEVICES "SDL_JOYSTICK_FLIGHTSTICK_DEVICES"
698
+
699
+ /**
700
+ * A variable containing a list of devices that are not flightstick style controllers. This will override SDL_HINT_JOYSTICK_FLIGHTSTICK_DEVICES and the built in device list.
701
+ *
702
+ * The format of the string is a comma separated list of USB VID/PID pairs
703
+ * in hexadecimal form, e.g.
704
+ *
705
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
706
+ *
707
+ * The variable can also take the form of @file, in which case the named
708
+ * file will be loaded and interpreted as the value of the variable.
709
+ */
710
+ #define SDL_HINT_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED "SDL_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED"
711
+
712
+ /**
713
+ * A variable containing a list of devices known to have a GameCube form factor.
714
+ *
715
+ * The format of the string is a comma separated list of USB VID/PID pairs
716
+ * in hexadecimal form, e.g.
717
+ *
718
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
719
+ *
720
+ * The variable can also take the form of @file, in which case the named
721
+ * file will be loaded and interpreted as the value of the variable.
722
+ */
723
+ #define SDL_HINT_JOYSTICK_GAMECUBE_DEVICES "SDL_JOYSTICK_GAMECUBE_DEVICES"
724
+
725
+ /**
726
+ * A variable containing a list of devices known not to have a GameCube form factor. This will override SDL_HINT_JOYSTICK_GAMECUBE_DEVICES and the built in device list.
727
+ *
728
+ * The format of the string is a comma separated list of USB VID/PID pairs
729
+ * in hexadecimal form, e.g.
730
+ *
731
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
732
+ *
733
+ * The variable can also take the form of @file, in which case the named
734
+ * file will be loaded and interpreted as the value of the variable.
735
+ */
736
+ #define SDL_HINT_JOYSTICK_GAMECUBE_DEVICES_EXCLUDED "SDL_JOYSTICK_GAMECUBE_DEVICES_EXCLUDED"
737
+
634
738
  /**
635
739
  * \brief A variable controlling whether the HIDAPI joystick drivers should be used.
636
740
  *
@@ -839,6 +943,17 @@ extern "C" {
839
943
  */
840
944
  #define SDL_HINT_JOYSTICK_HIDAPI_STEAM "SDL_JOYSTICK_HIDAPI_STEAM"
841
945
 
946
+ /**
947
+ * \brief A variable controlling whether the HIDAPI driver for the Steam Deck builtin controller should be used.
948
+ *
949
+ * This variable can be set to the following values:
950
+ * "0" - HIDAPI driver is not used
951
+ * "1" - HIDAPI driver is used
952
+ *
953
+ * The default is the value of SDL_HINT_JOYSTICK_HIDAPI
954
+ */
955
+ #define SDL_HINT_JOYSTICK_HIDAPI_STEAMDECK "SDL_JOYSTICK_HIDAPI_STEAMDECK"
956
+
842
957
  /**
843
958
  * \brief A variable controlling whether the HIDAPI driver for Nintendo Switch controllers should be used.
844
959
  *
@@ -965,6 +1080,24 @@ extern "C" {
965
1080
  */
966
1081
  #define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED "SDL_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED"
967
1082
 
1083
+ /**
1084
+ * A variable controlling whether IOKit should be used for controller handling.
1085
+ *
1086
+ * This variable can be set to the following values:
1087
+ * "0" - IOKit is not used
1088
+ * "1" - IOKit is used (the default)
1089
+ */
1090
+ #define SDL_HINT_JOYSTICK_IOKIT "SDL_JOYSTICK_IOKIT"
1091
+
1092
+ /**
1093
+ * A variable controlling whether GCController should be used for controller handling.
1094
+ *
1095
+ * This variable can be set to the following values:
1096
+ * "0" - GCController is not used
1097
+ * "1" - GCController is used (the default)
1098
+ */
1099
+ #define SDL_HINT_JOYSTICK_MFI "SDL_JOYSTICK_MFI"
1100
+
968
1101
  /**
969
1102
  * \brief A variable controlling whether the RAWINPUT joystick drivers should be used for better handling XInput-capable devices.
970
1103
  *
@@ -1007,6 +1140,32 @@ extern "C" {
1007
1140
  */
1008
1141
  #define SDL_HINT_JOYSTICK_THREAD "SDL_JOYSTICK_THREAD"
1009
1142
 
1143
+ /**
1144
+ * A variable containing a list of throttle style controllers.
1145
+ *
1146
+ * The format of the string is a comma separated list of USB VID/PID pairs
1147
+ * in hexadecimal form, e.g.
1148
+ *
1149
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
1150
+ *
1151
+ * The variable can also take the form of @file, in which case the named
1152
+ * file will be loaded and interpreted as the value of the variable.
1153
+ */
1154
+ #define SDL_HINT_JOYSTICK_THROTTLE_DEVICES "SDL_JOYSTICK_THROTTLE_DEVICES"
1155
+
1156
+ /**
1157
+ * A variable containing a list of devices that are not throttle style controllers. This will override SDL_HINT_JOYSTICK_THROTTLE_DEVICES and the built in device list.
1158
+ *
1159
+ * The format of the string is a comma separated list of USB VID/PID pairs
1160
+ * in hexadecimal form, e.g.
1161
+ *
1162
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
1163
+ *
1164
+ * The variable can also take the form of @file, in which case the named
1165
+ * file will be loaded and interpreted as the value of the variable.
1166
+ */
1167
+ #define SDL_HINT_JOYSTICK_THROTTLE_DEVICES_EXCLUDED "SDL_JOYSTICK_THROTTLE_DEVICES_EXCLUDED"
1168
+
1010
1169
  /**
1011
1170
  * \brief A variable controlling whether Windows.Gaming.Input should be used for controller handling.
1012
1171
  *
@@ -1016,6 +1175,45 @@ extern "C" {
1016
1175
  */
1017
1176
  #define SDL_HINT_JOYSTICK_WGI "SDL_JOYSTICK_WGI"
1018
1177
 
1178
+ /**
1179
+ * A variable containing a list of wheel style controllers.
1180
+ *
1181
+ * The format of the string is a comma separated list of USB VID/PID pairs
1182
+ * in hexadecimal form, e.g.
1183
+ *
1184
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
1185
+ *
1186
+ * The variable can also take the form of @file, in which case the named
1187
+ * file will be loaded and interpreted as the value of the variable.
1188
+ */
1189
+ #define SDL_HINT_JOYSTICK_WHEEL_DEVICES "SDL_JOYSTICK_WHEEL_DEVICES"
1190
+
1191
+ /**
1192
+ * A variable containing a list of devices that are not wheel style controllers. This will override SDL_HINT_JOYSTICK_WHEEL_DEVICES and the built in device list.
1193
+ *
1194
+ * The format of the string is a comma separated list of USB VID/PID pairs
1195
+ * in hexadecimal form, e.g.
1196
+ *
1197
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
1198
+ *
1199
+ * The variable can also take the form of @file, in which case the named
1200
+ * file will be loaded and interpreted as the value of the variable.
1201
+ */
1202
+ #define SDL_HINT_JOYSTICK_WHEEL_DEVICES_EXCLUDED "SDL_JOYSTICK_WHEEL_DEVICES_EXCLUDED"
1203
+
1204
+ /**
1205
+ * A variable containing a list of devices known to have all axes centered at zero.
1206
+ *
1207
+ * The format of the string is a comma separated list of USB VID/PID pairs
1208
+ * in hexadecimal form, e.g.
1209
+ *
1210
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
1211
+ *
1212
+ * The variable can also take the form of @file, in which case the named
1213
+ * file will be loaded and interpreted as the value of the variable.
1214
+ */
1215
+ #define SDL_HINT_JOYSTICK_ZERO_CENTERED_DEVICES "SDL_JOYSTICK_ZERO_CENTERED_DEVICES"
1216
+
1019
1217
  /**
1020
1218
  * \brief Determines whether SDL enforces that DRM master is required in order
1021
1219
  * to initialize the KMSDRM video backend.
@@ -1084,6 +1282,22 @@ extern "C" {
1084
1282
  */
1085
1283
  #define SDL_HINT_LINUX_JOYSTICK_DEADZONES "SDL_LINUX_JOYSTICK_DEADZONES"
1086
1284
 
1285
+ /**
1286
+ * \brief A variable controlling the default SDL log levels.
1287
+ *
1288
+ * This variable is a comma separated set of category=level tokens that define the default logging levels for SDL applications.
1289
+ *
1290
+ * The category can be a numeric category, one of "app", "error", "assert", "system", "audio", "video", "render", "input", "test", or `*` for any unspecified category.
1291
+ *
1292
+ * The level can be a numeric level, one of "verbose", "debug", "info", "warn", "error", "critical", or "quiet" to disable that category.
1293
+ *
1294
+ * You can omit the category if you want to set the logging level for all categories.
1295
+ *
1296
+ * If this hint isn't set, the default log levels are equivalent to:
1297
+ * "app=info,assert=warn,test=verbose,*=error"
1298
+ */
1299
+ #define SDL_HINT_LOGGING "SDL_LOGGING"
1300
+
1087
1301
  /**
1088
1302
  * \brief When set don't force the SDL app to become a foreground process
1089
1303
  *
@@ -1485,6 +1699,32 @@ extern "C" {
1485
1699
  */
1486
1700
  #define SDL_HINT_RENDER_METAL_PREFER_LOW_POWER_DEVICE "SDL_RENDER_METAL_PREFER_LOW_POWER_DEVICE"
1487
1701
 
1702
+ /**
1703
+ * A variable containing a list of ROG gamepad capable mice.
1704
+ *
1705
+ * The format of the string is a comma separated list of USB VID/PID pairs
1706
+ * in hexadecimal form, e.g.
1707
+ *
1708
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
1709
+ *
1710
+ * The variable can also take the form of @file, in which case the named
1711
+ * file will be loaded and interpreted as the value of the variable.
1712
+ */
1713
+ #define SDL_HINT_ROG_GAMEPAD_MICE "SDL_ROG_GAMEPAD_MICE"
1714
+
1715
+ /**
1716
+ * A variable containing a list of devices that are not ROG gamepad capable mice. This will override SDL_HINT_ROG_GAMEPAD_MICE and the built in device list.
1717
+ *
1718
+ * The format of the string is a comma separated list of USB VID/PID pairs
1719
+ * in hexadecimal form, e.g.
1720
+ *
1721
+ * 0xAAAA/0xBBBB,0xCCCC/0xDDDD
1722
+ *
1723
+ * The variable can also take the form of @file, in which case the named
1724
+ * file will be loaded and interpreted as the value of the variable.
1725
+ */
1726
+ #define SDL_HINT_ROG_GAMEPAD_MICE_EXCLUDED "SDL_ROG_GAMEPAD_MICE_EXCLUDED"
1727
+
1488
1728
  /**
1489
1729
  * \brief A variable controlling if VSYNC is automatically disable if doesn't reach the enough FPS
1490
1730
  *
@@ -2442,6 +2682,22 @@ extern "C" {
2442
2682
  */
2443
2683
  #define SDL_HINT_TRACKPAD_IS_TOUCH_ONLY "SDL_TRACKPAD_IS_TOUCH_ONLY"
2444
2684
 
2685
+ /**
2686
+ * Cause SDL to call dbus_shutdown() on quit.
2687
+ *
2688
+ * This is useful as a debug tool to validate memory leaks, but shouldn't ever
2689
+ * be set in production applications, as other libraries used by the application
2690
+ * might use dbus under the hood and this cause cause crashes if they continue
2691
+ * after SDL_Quit().
2692
+ *
2693
+ * This variable can be set to the following values:
2694
+ * "0" - SDL will not call dbus_shutdown() on quit (default)
2695
+ * "1" - SDL will call dbus_shutdown() on quit
2696
+ *
2697
+ * This hint is available since SDL 2.30.0.
2698
+ */
2699
+ #define SDL_HINT_SHUTDOWN_DBUS_ON_QUIT "SDL_SHUTDOWN_DBUS_ON_QUIT"
2700
+
2445
2701
 
2446
2702
  /**
2447
2703
  * \brief An enumeration of hint priorities
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  Simple DirectMedia Layer
3
- Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
3
+ Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org>
4
4
 
5
5
  This software is provided 'as-is', without any express or implied
6
6
  warranty. In no event will the authors be held liable for any damages
@@ -298,8 +298,10 @@ extern DECLSPEC void SDLCALL SDL_ClearComposition(void);
298
298
  extern DECLSPEC SDL_bool SDLCALL SDL_IsTextInputShown(void);
299
299
 
300
300
  /**
301
- * Set the rectangle used to type Unicode text inputs.
302
- *
301
+ * Set the rectangle used to type Unicode text inputs. Native input methods
302
+ * will place a window with word suggestions near it, without covering the
303
+ * text being inputted.
304
+ *
303
305
  * To start text input in a given location, this function is intended to be
304
306
  * called before SDL_StartTextInput, although some platforms support moving
305
307
  * the rectangle even while text input (and a composition) is active.