From http://www.jwz.org/xscreensaver/xscreensaver-5.31.tar.gz
[xscreensaver] / hacks / glx / gltrackball.c
index f3e02fd34f10d741682dc857b48bfe911b5d6ff9..f07cb7cddb94cbd3b1a414143c55d635be017fd3 100644 (file)
 
 #ifdef HAVE_COCOA
 # include "jwxyz.h"
-#else  /* !HAVE_COCOA -- real X11 */
+#elif defined(HAVE_ANDROID)
+# include "jwxyz.h"
+# include <GLES/gl.h>
+#else  /* real X11 */
 # include <X11/X.h>
 # include <X11/Xlib.h>
 # include <GL/gl.h>
@@ -73,7 +76,11 @@ gltrackball_init (int ignore_device_rotation_p)
 void
 gltrackball_reset (trackball_state *ts)
 {
+  int bd = ts->button_down_p;
+  int ig = ts->ignore_device_rotation_p;
   memset (ts, 0, sizeof(*ts));
+  ts->button_down_p = bd;
+  ts->ignore_device_rotation_p = ig;
   trackball (ts->q, 0, 0, 0, 0);
 }