From ceb11de02d75c5e4d80e952945ea5ae23fa0b2ed Mon Sep 17 00:00:00 2001 From: falkTX Date: Tue, 20 May 2014 22:59:34 +0100 Subject: [PATCH] Fix OSX event loop --- dgl/src/Window.cpp | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/dgl/src/Window.cpp b/dgl/src/Window.cpp index 2ba6d0e6..2fccc29e 100644 --- a/dgl/src/Window.cpp +++ b/dgl/src/Window.cpp @@ -541,26 +541,18 @@ struct Window::PrivateData { NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init]; NSEvent* event; - static const NSUInteger eventMask = (NSLeftMouseDownMask | NSLeftMouseUpMask | - NSRightMouseDownMask | NSRightMouseUpMask | - NSMouseMovedMask | - NSLeftMouseDraggedMask | NSRightMouseDraggedMask | - NSMouseEnteredMask | NSMouseExitedMask | - NSKeyDownMask | NSKeyUpMask | - NSFlagsChangedMask | - NSCursorUpdateMask | NSScrollWheelMask); - - for (;;) { - event = [xWindow - nextEventMatchingMask:eventMask + for (;;) + { + event = [NSApp + nextEventMatchingMask:NSAnyEventMask untilDate:[NSDate distantPast] - inMode:NSEventTrackingRunLoopMode + inMode:NSDefaultRunLoopMode dequeue:YES]; if (event == nil) break; - [xWindow sendEvent: event]; + [NSApp sendEvent: event]; } [pool release];