From a1211c9eeceaf572d2de8684f16ecccb0357d51e Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Sun, 30 Jul 2006 08:09:20 +0000 Subject: [PATCH] Hack to stop the beeping Fixed keyboard window focus. --- src/video/cocoa/SDL_cocoaevents.m | 4 +++- src/video/cocoa/SDL_cocoawindow.h | 2 -- src/video/cocoa/SDL_cocoawindow.m | 30 ++++++++---------------------- 3 files changed, 11 insertions(+), 25 deletions(-) diff --git a/src/video/cocoa/SDL_cocoaevents.m b/src/video/cocoa/SDL_cocoaevents.m index 1f5b02f7c..090982678 100644 --- a/src/video/cocoa/SDL_cocoaevents.m +++ b/src/video/cocoa/SDL_cocoaevents.m @@ -174,7 +174,9 @@ - (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sende case NSKeyUp: case NSFlagsChanged: Cocoa_HandleKeyEvent(_this, event); - /* Fall through to pass event to NSApp */ + /* Fall through to pass event to NSApp; er, nevermind... */ + /* FIXME: Find a way to stop the beeping, using delegate */ + break; default: [NSApp sendEvent:event]; break; diff --git a/src/video/cocoa/SDL_cocoawindow.h b/src/video/cocoa/SDL_cocoawindow.h index 7d368567a..7ce3b73f5 100644 --- a/src/video/cocoa/SDL_cocoawindow.h +++ b/src/video/cocoa/SDL_cocoawindow.h @@ -58,8 +58,6 @@ typedef struct SDL_WindowData SDL_WindowData; -(void) rightMouseDragged:(NSEvent *) theEvent; -(void) otherMouseDragged:(NSEvent *) theEvent; -(void) scrollWheel:(NSEvent *) theEvent; --(void) keyDown:(NSEvent *) theEvent; --(void) keyUp:(NSEvent *) theEvent; @end /* *INDENT-ON* */ diff --git a/src/video/cocoa/SDL_cocoawindow.m b/src/video/cocoa/SDL_cocoawindow.m index d5ae998ab..6f2a0e4b9 100644 --- a/src/video/cocoa/SDL_cocoawindow.m +++ b/src/video/cocoa/SDL_cocoawindow.m @@ -127,12 +127,18 @@ - (void)windowDidDeminiaturize:(NSNotification *)aNotification - (void)windowDidBecomeKey:(NSNotification *)aNotification { - SDL_SendWindowEvent(_data->windowID, SDL_WINDOWEVENT_FOCUS_GAINED, 0, 0); + int index; + + index = _data->videodata->keyboard; + SDL_SetKeyboardFocus(index, _data->windowID); } - (void)windowDidResignKey:(NSNotification *)aNotification { - SDL_SendWindowEvent(_data->windowID, SDL_WINDOWEVENT_FOCUS_LOST, 0, 0); + int index; + + index = _data->videodata->keyboard; + SDL_SetKeyboardFocus(index, 0); } - (void)windowDidHide:(NSNotification *)aNotification @@ -254,26 +260,6 @@ - (void)scrollWheel:(NSEvent *)theEvent SDL_SendMouseWheel(index, (int)([theEvent deltaY]+0.9f)); } -- (void)keyDown:(NSEvent *)theEvent -{ - int index; - - index = _data->videodata->keyboard; -fprintf(stderr, "keyDown\n"); - const char *text = [[theEvent characters] UTF8String]; - if(text && *text) { - SDL_SendKeyboardText(index, text); - } -} - -- (void)keyUp:(NSEvent *)theEvent -{ - int index; - - index = _data->videodata->keyboard; -fprintf(stderr, "keyUp\n"); -} - @end static int