Explorar o código

Added SDL_HINT_EVDEV_DEVICES

Sam Lantinga hai 8 meses
pai
achega
afde1cc9c2
Modificáronse 2 ficheiros con 16 adicións e 1 borrados
  1. 15 0
      include/SDL3/SDL_hints.h
  2. 1 1
      src/core/linux/SDL_evdev.c

+ 15 - 0
include/SDL3/SDL_hints.h

@@ -685,6 +685,21 @@ extern "C" {
  */
 #define SDL_HINT_ENABLE_SCREEN_KEYBOARD "SDL_ENABLE_SCREEN_KEYBOARD"
 
+/**
+ * A variable containing a list of evdev devices to use if udev is not available.
+ *
+ * The list of devices is in the form:
+ *
+ *  deviceclass:path[,deviceclass:path[,...]]
+ *
+ * where device class is an integer representing the SDL_UDEV_deviceclass and path is the full path to the event device.
+ *
+ * This hint should be set before SDL is initialized.
+ *
+ * \since This hint is available since SDL 3.0.0.
+ */
+#define SDL_HINT_EVDEV_DEVICES "SDL_EVDEV_DEVICES"
+
 /**
  * A variable controlling verbosity of the logging of SDL events pushed onto
  * the internal queue.

+ 1 - 1
src/core/linux/SDL_evdev.c

@@ -198,7 +198,7 @@ int SDL_EVDEV_Init(void)
                where device class is an integer representing the
                SDL_UDEV_deviceclass and path is the full path to
                the event device. */
-            const char *devices = SDL_getenv("SDL_EVDEV_DEVICES");
+            const char *devices = SDL_GetHint(SDL_HINT_EVDEV_DEVICES);
             if (devices) {
                 /* Assume this is the old use of the env var and it is not in
                    ROM. */