Browse Source

Android: Added mouse initialization to reset state.

If the app is launched again then the shared object may be reused (on Android).
Philipp Wiesemann 10 năm trước cách đây
mục cha
commit
8d035b1aee

+ 8 - 2
src/video/android/SDL_androidmouse.c

@@ -40,9 +40,15 @@
 #define BUTTON_BACK 8
 #define BUTTON_FORWARD 16
 
-void Android_OnMouse( int androidButton, int action, float x, float y) {
-    static Uint8 SDLButton;
+static Uint8 SDLButton;
+
+void
+Android_InitMouse(void)
+{
+    SDLButton = 0;
+}
 
+void Android_OnMouse( int androidButton, int action, float x, float y) {
     if (!Android_Window) {
         return;
     }

+ 1 - 0
src/video/android/SDL_androidmouse.h

@@ -24,6 +24,7 @@
 
 #include "SDL_androidvideo.h"
 
+extern void Android_InitMouse(void);
 extern void Android_OnMouse( int button, int action, float x, float y);
 
 #endif /* _SDL_androidmouse_h */

+ 3 - 0
src/video/android/SDL_androidvideo.c

@@ -36,6 +36,7 @@
 #include "SDL_androidclipboard.h"
 #include "SDL_androidevents.h"
 #include "SDL_androidkeyboard.h"
+#include "SDL_androidmouse.h"
 #include "SDL_androidtouch.h"
 #include "SDL_androidwindow.h"
 
@@ -181,6 +182,8 @@ Android_VideoInit(_THIS)
 
     Android_InitTouch();
 
+    Android_InitMouse();
+
     /* We're done! */
     return 0;
 }