File tree Expand file tree Collapse file tree 1 file changed +16
-4
lines changed Expand file tree Collapse file tree 1 file changed +16
-4
lines changed Original file line number Diff line number Diff line change @@ -66,23 +66,35 @@ -(void)callback:(id)sender
66
66
resolver:(RCTPromiseResolveBlock)resolve
67
67
rejecter:(RCTPromiseRejectBlock)reject)
68
68
{
69
+
69
70
if (!item || ![item valueForKey: @" title" ]) {
70
71
reject (@" Item requires title, key and callback" , nil , nil );
71
72
}
72
73
73
74
NSMenu *menu = [self ensureSubmenu: title];
74
75
if ([menu indexOfItemWithTitle: item[@" title" ]] == -1 ) {
75
76
NSMenuItem *menuItem = [[NSMenuItem alloc ] init ];
77
+
76
78
menuItem.title = item[@" title" ];
77
79
if ([item valueForKey: @" key" ]) {
78
80
menuItem.keyEquivalent = item[@" key" ];
79
81
}
80
- menuItem.enabled = YES ;
81
- menuItem.action = @selector (callback: );
82
- [menuItem setTarget: self ];
83
- [menu addItem: menuItem];
82
+
83
+ if ([item valueForKey: @" firstResponder" ]) {
84
+ menuItem.action = NSSelectorFromString ([item valueForKey: @" firstResponder" ]);
85
+ [menuItem setTarget: nil ];
86
+ } else {
87
+ menuItem.action = @selector (callback: );
88
+ [menuItem setTarget: self ];
89
+
90
+ }
91
+ [menu addItem: menuItem];
92
+ if ([item valueForKey: @" separator" ]) {
93
+ [menu addItem: [NSMenuItem separatorItem ]];
94
+ }
84
95
resolve (@[]);
85
96
}
86
97
}
87
98
99
+
88
100
@end
You can’t perform that action at this time.
0 commit comments