Просмотр исходного кода

Reapply "Change controller sensor state on the main UI thread on Android"

This reverts commit 02975994c12582aef918bccb3825592e7ea36d10.

Accidentally reverted the wrong commit

(cherry picked from commit b19ecb40327333d147bc8be5850d5fe398e54c86)
Sam Lantinga 2 недель назад
Родитель
Сommit
da76e438be

+ 7 - 1
android-project/app/src/main/java/org/libsdl/app/SDLControllerManager.java

@@ -91,7 +91,13 @@ public class SDLControllerManager
      * This method is called by SDL using JNI.
      */
     static void joystickSetSensorsEnabled(int device_id, boolean enabled) {
-        mJoystickHandler.setSensorsEnabled(device_id, enabled);
+        // Run this on the UI thread so we don't race with enableSensor() in SDLSurface.java
+        SDL.getContext().runOnUiThread(new Runnable() {
+            @Override
+            public void run() {
+                mJoystickHandler.setSensorsEnabled(device_id, enabled);
+            }
+        });
     }
 
     /**