aboutsummaryrefslogtreecommitdiffstats
path: root/pugl/pugl_osx.m
diff options
context:
space:
mode:
Diffstat (limited to 'pugl/pugl_osx.m')
-rw-r--r--pugl/pugl_osx.m18
1 files changed, 16 insertions, 2 deletions
diff --git a/pugl/pugl_osx.m b/pugl/pugl_osx.m
index 85e71a8..47c8138 100644
--- a/pugl/pugl_osx.m
+++ b/pugl/pugl_osx.m
@@ -525,10 +525,24 @@ puglGrabFocus(PuglView* view)
}
PuglStatus
+puglWaitForEvent(PuglView* view)
+{
+ [view->impl->window nextEventMatchingMask: NSAnyEventMask
+ untilDate: [NSDate distantFuture]
+ dequeue: NO];
+
+ return PUGL_SUCCESS;
+}
+
+PuglStatus
puglProcessEvents(PuglView* view)
{
- NSEvent* ev = [view->impl->window nextEventMatchingMask: NSAnyEventMask];
- [view->impl->app sendEvent: ev];
+ NSEvent* ev = [view->impl->window nextEventMatchingMask: NSAnyEventMask
+ untilDate: [NSDate distantPast]];
+
+ if (ev) {
+ [view->impl->app sendEvent: ev];
+ }
return PUGL_SUCCESS;
}