improved clearing event queue after fading and after door/envelope requests
[rocksndiamonds.git] / src / events.c
index 8e368b613686a1331f71d396dd47c0daaef87e62..b610ff8b7a05b211daf6393031e0694df00e0a7d 100644 (file)
@@ -347,6 +347,23 @@ void EventLoop(void)
   }
 }
 
+void ClearAutoRepeatKeyEvents()
+{
+  while (PendingEvent())
+  {
+    Event next_event;
+
+    PeekEvent(&next_event);
+
+    /* if event is repeated key press event, remove it from event queue */
+    if (next_event.type == EVENT_KEYPRESS &&
+       next_event.key.repeat)
+      WaitEvent(&next_event);
+    else
+      break;
+  }
+}
+
 void ClearEventQueue()
 {
   Event event;