http://ftp.ksu.edu.tw/FTP/FreeBSD/distfiles/xscreensaver-4.20.tar.gz
[xscreensaver] / hacks / glx / menger.c
index f7166493d3c366904560a7e9ec587c52ec09e08a..0f492641f0b3f42a4b53392a1fa2410f480d8a6d 100644 (file)
@@ -359,7 +359,7 @@ sponge_handle_event (ModeInfo *mi, XEvent *event)
   sponge_configuration *sp = &sps[MI_SCREEN(mi)];
 
   if (event->xany.type == ButtonPress &&
-      event->xbutton.button & Button1)
+      event->xbutton.button == Button1)
     {
       sp->button_down_p = True;
       gltrackball_start (sp->trackball,
@@ -368,11 +368,19 @@ sponge_handle_event (ModeInfo *mi, XEvent *event)
       return True;
     }
   else if (event->xany.type == ButtonRelease &&
-           event->xbutton.button & Button1)
+           event->xbutton.button == Button1)
     {
       sp->button_down_p = False;
       return True;
     }
+  else if (event->xany.type == ButtonPress &&
+           (event->xbutton.button == Button4 ||
+            event->xbutton.button == Button5))
+    {
+      gltrackball_mousewheel (sp->trackball, event->xbutton.button, 5,
+                              !!event->xbutton.state);
+      return True;
+    }
   else if (event->xany.type == MotionNotify &&
            sp->button_down_p)
     {