262 * KeyEvents support
263 */
264
265 - (void) keyDown: (NSEvent *)event {
266
267 fProcessingKeystroke = YES;
268 fKeyEventsNeeded = YES;
269
270 // Allow TSM to look at the event and potentially send back NSTextInputClient messages.
271 [self interpretKeyEvents:[NSArray arrayWithObject:event]];
272
273 if (fEnablePressAndHold && [event willBeHandledByComplexInputMethod]) {
274 fProcessingKeystroke = NO;
275 if (!fInPressAndHold) {
276 fInPressAndHold = YES;
277 fPAHNeedsToSelect = YES;
278 }
279 return;
280 }
281
282 if (![self hasMarkedText] && fKeyEventsNeeded) {
283 [self deliverJavaKeyEventHelper: event];
284 }
285
286 fProcessingKeystroke = NO;
287 }
288
289 - (void) keyUp: (NSEvent *)event {
290 [self deliverJavaKeyEventHelper: event];
291 }
292
293 - (void) flagsChanged: (NSEvent *)event {
294 [self deliverJavaKeyEventHelper: event];
295 }
296
297 - (BOOL) performKeyEquivalent: (NSEvent *) event {
298 [self deliverJavaKeyEventHelper: event];
299 return NO;
300 }
301
302 /**
|
262 * KeyEvents support
263 */
264
265 - (void) keyDown: (NSEvent *)event {
266
267 fProcessingKeystroke = YES;
268 fKeyEventsNeeded = YES;
269
270 // Allow TSM to look at the event and potentially send back NSTextInputClient messages.
271 [self interpretKeyEvents:[NSArray arrayWithObject:event]];
272
273 if (fEnablePressAndHold && [event willBeHandledByComplexInputMethod]) {
274 fProcessingKeystroke = NO;
275 if (!fInPressAndHold) {
276 fInPressAndHold = YES;
277 fPAHNeedsToSelect = YES;
278 }
279 return;
280 }
281
282 NSString *eventCharacters = [event characters];
283 BOOL isDeadKey = (eventCharacters != nil && [eventCharacters length] == 0);
284
285 if ((![self hasMarkedText] && fKeyEventsNeeded) || isDeadKey) {
286 [self deliverJavaKeyEventHelper: event];
287 }
288
289 fProcessingKeystroke = NO;
290 }
291
292 - (void) keyUp: (NSEvent *)event {
293 [self deliverJavaKeyEventHelper: event];
294 }
295
296 - (void) flagsChanged: (NSEvent *)event {
297 [self deliverJavaKeyEventHelper: event];
298 }
299
300 - (BOOL) performKeyEquivalent: (NSEvent *) event {
301 [self deliverJavaKeyEventHelper: event];
302 return NO;
303 }
304
305 /**
|