300
301 // Create a key-typed event for each character in the text input event.
302 // This is better than sending a text input event because in the NPAPI
303 // case there is no in-progress text to display.
304 for (NSUInteger i = 0; i < [chars length]; i++) {
305 NSString *singleChar = [NSString stringWithCharacters:&unichars[i] length:1];
306 GlassNSEvent *event =
307 (GlassNSEvent *)[GlassNSEvent keyEventWithType:NSKeyDown
308 location:NSMakePoint(0.0, 0.0)
309 modifierFlags:0
310 timestamp:[NSDate timeIntervalSinceReferenceDate]
311 windowNumber:[window->child windowNumber]
312 context:nil
313 characters:singleChar
314 charactersIgnoringModifiers:singleChar
315 isARepeat:NO
316 keyCode:0];
317 [event setSyntheticKeyTyped:YES];
318 [window->child sendEvent:event];
319 }
320 }
321
322 if ([chars length] == 1) {
323 Java_com_sun_glass_events_mac_NpapiEvent__1dispatchCocoaNpapiKeyEvent(
324 env, jNpapiClass, jPtr, com_sun_glass_events_mac_NpapiEvent_NPCocoaEventKeyUp,
325 0, jText, jText, JNI_FALSE, 0, JNI_FALSE);
326 }
327 }
328 GLASS_POOL_EXIT;
329 GLASS_CHECK_EXCEPTION(env);
330 }
|
300
301 // Create a key-typed event for each character in the text input event.
302 // This is better than sending a text input event because in the NPAPI
303 // case there is no in-progress text to display.
304 for (NSUInteger i = 0; i < [chars length]; i++) {
305 NSString *singleChar = [NSString stringWithCharacters:&unichars[i] length:1];
306 GlassNSEvent *event =
307 (GlassNSEvent *)[GlassNSEvent keyEventWithType:NSKeyDown
308 location:NSMakePoint(0.0, 0.0)
309 modifierFlags:0
310 timestamp:[NSDate timeIntervalSinceReferenceDate]
311 windowNumber:[window->child windowNumber]
312 context:nil
313 characters:singleChar
314 charactersIgnoringModifiers:singleChar
315 isARepeat:NO
316 keyCode:0];
317 [event setSyntheticKeyTyped:YES];
318 [window->child sendEvent:event];
319 }
320 free(unichars);
321 }
322
323 if ([chars length] == 1) {
324 Java_com_sun_glass_events_mac_NpapiEvent__1dispatchCocoaNpapiKeyEvent(
325 env, jNpapiClass, jPtr, com_sun_glass_events_mac_NpapiEvent_NPCocoaEventKeyUp,
326 0, jText, jText, JNI_FALSE, 0, JNI_FALSE);
327 }
328 }
329 GLASS_POOL_EXIT;
330 GLASS_CHECK_EXCEPTION(env);
331 }
|