|
@@ -409,12 +409,13 @@ static bool QZ_PollEvent()
|
|
|
}
|
|
|
|
|
|
QZ_DoUnsidedModifiers( [ event modifierFlags ] );
|
|
|
|
|
|
NSString *chars;
|
|
|
NSPoint pt;
|
|
|
NSText *fieldEditor;
|
|
|
switch ([ event type ]) {
|
|
|
case NSMouseMoved:
|
|
|
case NSOtherMouseDragged:
|
|
|
case NSLeftMouseDragged:
|
|
|
pt = _cocoa_subdriver->GetMouseLocation(event);
|
|
|
if (!_cocoa_subdriver->MouseIsInsideView(&pt) && !_emulating_right_button) {
|
|
@@ -547,14 +548,25 @@ static bool QZ_PollEvent()
|
|
|
if ([ event modifierFlags ] & NSCommandKeyMask) {
|
|
|
[ NSApp sendEvent:event ];
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
fieldEditor = [[ event window ] fieldEditor:YES forObject:nil ];
|
|
|
[ fieldEditor setString:@"" ];
|
|
|
[ fieldEditor interpretKeyEvents: [ NSArray arrayWithObject:event ] ];
|
|
|
|
|
|
chars = [ event characters ];
|
|
|
QZ_KeyEvent([ event keyCode ], [ chars length ] ? [ chars characterAtIndex:0 ] : 0, YES);
|
|
|
if ([ chars length ] == 0) {
|
|
|
QZ_KeyEvent([ event keyCode ], 0, YES);
|
|
|
} else {
|
|
|
QZ_KeyEvent([ event keyCode ], [ chars characterAtIndex:0 ], YES);
|
|
|
for (int i = 1; i < [ chars length ]; i++) {
|
|
|
QZ_KeyEvent(0, [ chars characterAtIndex:i ], YES);
|
|
|
}
|
|
|
}
|
|
|
break;
|
|
|
|
|
|
case NSKeyUp:
|
|
|
/* Quit, hide and minimize */
|
|
|
switch ([ event keyCode ]) {
|
|
|
case QZ_q:
|