Set udev class for accelerometer
This commit is contained in:
@@ -428,6 +428,11 @@ static int device_class(struct udev_device *dev)
|
|||||||
devclass |= SDL_UDEV_DEVICE_JOYSTICK;
|
devclass |= SDL_UDEV_DEVICE_JOYSTICK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val = _this->syms.udev_device_get_property_value(dev, "ID_INPUT_ACCELEROMETER");
|
||||||
|
if (val && SDL_strcmp(val, "1") == 0) {
|
||||||
|
devclass |= SDL_UDEV_DEVICE_ACCELEROMETER;
|
||||||
|
}
|
||||||
|
|
||||||
val = _this->syms.udev_device_get_property_value(dev, "ID_INPUT_MOUSE");
|
val = _this->syms.udev_device_get_property_value(dev, "ID_INPUT_MOUSE");
|
||||||
if (val && SDL_strcmp(val, "1") == 0) {
|
if (val && SDL_strcmp(val, "1") == 0) {
|
||||||
devclass |= SDL_UDEV_DEVICE_MOUSE;
|
devclass |= SDL_UDEV_DEVICE_MOUSE;
|
||||||
|
|||||||
@@ -360,7 +360,7 @@ static void joystick_udev_callback(SDL_UDEV_deviceevent udev_type, int udev_clas
|
|||||||
|
|
||||||
switch (udev_type) {
|
switch (udev_type) {
|
||||||
case SDL_UDEV_DEVICEADDED:
|
case SDL_UDEV_DEVICEADDED:
|
||||||
if (!(udev_class & SDL_UDEV_DEVICE_JOYSTICK)) {
|
if (!(udev_class & (SDL_UDEV_DEVICE_JOYSTICK | SDL_UDEV_DEVICE_ACCELEROMETER))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (SDL_classic_joysticks) {
|
if (SDL_classic_joysticks) {
|
||||||
|
|||||||
Reference in New Issue
Block a user