From f88a009d60c69a0e15b60b1188829018dec84d27 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Mon, 21 Mar 2011 16:36:17 -0700 Subject: [PATCH] Fixed bug: No right mouse button events during FullScreen Mac OS Something inside setStyleMask mucks with the view responder chain, which prevents the listener from hearing the right mouse down events. We just reset the listener after changing the style to fix this. --- src/video/cocoa/SDL_cocoawindow.m | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/video/cocoa/SDL_cocoawindow.m b/src/video/cocoa/SDL_cocoawindow.m index 13cc7abe7..ff7bb6708 100644 --- a/src/video/cocoa/SDL_cocoawindow.m +++ b/src/video/cocoa/SDL_cocoawindow.m @@ -792,6 +792,11 @@ - (void)rightMouseDown:(NSEvent *)theEvent NSWindow *nswindow = data->nswindow; NSRect rect; + /* The view responder chain gets messed with during setStyleMask */ + if ([[nswindow contentView] nextResponder] == data->listener) { + [[nswindow contentView] setNextResponder:nil]; + } + if (fullscreen) { SDL_Rect bounds; @@ -827,6 +832,11 @@ - (void)rightMouseDown:(NSEvent *)theEvent } } + /* The view responder chain gets messed with during setStyleMask */ + if ([[nswindow contentView] nextResponder] != data->listener) { + [[nswindow contentView] setNextResponder:data->listener]; + } + s_moveHack = 0; [nswindow setFrameOrigin:rect.origin]; [nswindow setContentSize:rect.size];