瀏覽代碼

Don't use DPAD devices as joystick input on Android

Sam Lantinga 8 年之前
父節點
當前提交
9d9be45682
共有 1 個文件被更改,包括 3 次插入4 次删除
  1. 3 4
      android-project/src/org/libsdl/app/SDLControllerManager.java

+ 3 - 4
android-project/src/org/libsdl/app/SDLControllerManager.java

@@ -92,17 +92,16 @@ public class SDLControllerManager
         if ((sources & InputDevice.SOURCE_CLASS_JOYSTICK) == InputDevice.SOURCE_CLASS_JOYSTICK) {
             Log.v(TAG, "Input device " + device.getName() + " is a joystick.");
         }
+        /* A lot of things are a DPAD that we don't want to use as a joystick (e.g. gpio input, etc.)
         if ((sources & InputDevice.SOURCE_DPAD) == InputDevice.SOURCE_DPAD) {
             Log.v(TAG, "Input device " + device.getName() + " is a dpad.");
         }
+        */
         if ((sources & InputDevice.SOURCE_GAMEPAD) == InputDevice.SOURCE_GAMEPAD) {
             Log.v(TAG, "Input device " + device.getName() + " is a gamepad.");
         }
 
-        return (((sources & InputDevice.SOURCE_CLASS_JOYSTICK) == InputDevice.SOURCE_CLASS_JOYSTICK) ||
-                ((sources & InputDevice.SOURCE_DPAD) == InputDevice.SOURCE_DPAD) ||
-                ((sources & InputDevice.SOURCE_GAMEPAD) == InputDevice.SOURCE_GAMEPAD)
-        );
+        return ((sources & (InputDevice.SOURCE_CLASS_JOYSTICK|InputDevice.SOURCE_GAMEPAD)) != 0);
     }
 
 }