# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1339616280 0 # Node ID e4fcd1e81f0d4dde0d1bddfed48a15aec514f930 # Parent f297d8a63aed47f4565d6d768b3f4ce3e8ba5f66 Added optional utf8 parameter to keypress callback on Mac. diff -r f297d8a63aed -r e4fcd1e81f0d mac/dw.m --- a/mac/dw.m Wed Jun 13 19:23:30 2012 +0000 +++ b/mac/dw.m Wed Jun 13 19:38:00 2012 +0000 @@ -262,23 +262,24 @@ } case 2: { - int (*keypressfunc)(HWND, char, int, int, void *) = handler->signalfunction; + int (*keypressfunc)(HWND, char, int, int, void *, char *) = handler->signalfunction; NSString *nchar = [event charactersIgnoringModifiers]; int special = (int)[event modifierFlags]; unichar vk = [nchar characterAtIndex:0]; - char ch = '\0'; + char *utf8 = NULL, ch = '\0'; /* Handle a valid key */ if([nchar length] == 1) { - const char *tmp = [nchar UTF8String]; + char *tmp = (char *)[nchar UTF8String]; if(tmp && strlen(tmp) == 1) { ch = tmp[0]; } + utf8 = tmp; } - return keypressfunc(handler->window, ch, (int)vk, special, handler->data); + return keypressfunc(handler->window, ch, (int)vk, special, handler->data, utf8); } /* Button press and release event */ case 3: