changed click events for global animations to ignore 'consumed' clicks
[rocksndiamonds.git] / src / events.c
index e2d5ab9bdb47ef3fb81caed64112dd411b9e6a63..93b135503b073c32e9a34ee79ccf5fbbcf13562a 100644 (file)
@@ -532,8 +532,8 @@ void HandleWindowEvent(WindowEvent *event)
       if (new_window_width  != video.window_width ||
          new_window_height != video.window_height)
       {
-       int new_xpercent = (100 * new_window_width  / video.screen_width);
-       int new_ypercent = (100 * new_window_height / video.screen_height);
+       int new_xpercent = 100.0 * new_window_width  / video.screen_width  + .5;
+       int new_ypercent = 100.0 * new_window_height / video.screen_height + .5;
 
        // (extreme window scaling allowed, but cannot be saved permanently)
        video.window_scaling_percent = MIN(new_xpercent, new_ypercent);
@@ -1233,6 +1233,12 @@ void HandleButton(int mx, int my, int button, int button_nr)
   }
 #endif
 
+  if (HandleGlobalAnimClicks(mx, my, button))
+  {
+    /* do not handle this button event anymore */
+    mx = my = -32;     /* force mouse event to be outside screen tiles */
+  }
+
   if (button_hold && game_status == GAME_MODE_PLAYING && tape.pausing)
     return;