# HG changeset patch # User Sam Lantinga # Date 1291319783 28800 # Node ID d716dff4b13ee843f52b34bc070eac8a730e5c21 # Parent ab02a7242f0899e811200b2526ff9958a946ea62 Fixed touch events on Mac OS X 10.6 diff -r ab02a7242f08 -r d716dff4b13e src/video/cocoa/SDL_cocoawindow.m --- a/src/video/cocoa/SDL_cocoawindow.m Wed Dec 01 12:52:48 2010 -0800 +++ b/src/video/cocoa/SDL_cocoawindow.m Thu Dec 02 11:56:23 2010 -0800 @@ -57,11 +57,13 @@ } else { [_data->nswindow setDelegate:self]; } +// FIXME: Why doesn't this work? +// [center addObserver:self selector:@selector(rightMouseDown:) name:[NSString stringWithCString:"rightMouseDown" encoding:NSUTF8StringEncoding] object:[_data->nswindow contentView]]; [center addObserver:self selector:@selector(windowDidHide:) name:NSApplicationDidHideNotification object:NSApp]; [center addObserver:self selector:@selector(windowDidUnhide:) name:NSApplicationDidUnhideNotification object:NSApp]; [_data->nswindow setAcceptsMouseMovedEvents:YES]; -#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 [[_data->nswindow contentView] setAcceptsTouchEvents:YES]; #endif } @@ -295,7 +297,7 @@ - (void)handleTouches:(cocoaTouchType)type withEvent:(NSEvent *)event { -#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 NSSet *touches = 0; NSEnumerator *enumerator; NSTouch *touch; @@ -357,7 +359,7 @@ touch = (NSTouch*)[enumerator nextObject]; } -#endif /* MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 */ +#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 */ } @end @@ -437,6 +439,9 @@ NSRect rect = [nswindow contentRectForFrameRect:[nswindow frame]]; NSView *contentView = [[SDLView alloc] initWithFrame: rect listener: data->listener]; +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 + [contentView setAcceptsTouchEvents:YES]; +#endif [nswindow setContentView: contentView]; [contentView release];