We have a menu that has one submenu with an item that uses unmodified 7, then another submenu with an item that uses control-7. When control-7 is typed, Cocoa is finding the item with unmodified 7 instead of the item with control-7. If I trap this event in our app's sendEvent: method and make a new event withOUT the device-dependant flags in the modifiers, then it works correctly:
newEvent = [NSEvent keyEventWithType:NSKeyDown location:event.locationInWindow modifierFlags:event.modifierFlags & NSDeviceIndependentModifierFlagsMask timestamp:event.timestamp windowNumber:event.windowNumber context:event.context characters:event.characters charactersIgnoringModifiers:event.charactersIgnoringModifiers isARepeat:event.isARepeat keyCode:event.keyCode]; [super sendEvent:newEvent]; The modifiers for the event we get from the OS is 0x00040101. Is this just a bug in NSMenu's key equiv matching algorithm? If I set the lower submenu's item to use control-a, and a higher submenu's item already handles unmodified a, then it works correctly and control-a goes to the lower item. So there's something weird with number keys. I'm not using numpad keys in any part of this particular problem. -- Steve Mills office: 952-818-3871 home: 952-401-6255 cell: 612-803-6157 _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com