Merge pull request #302 from trunkmaster/menu-unhide

NSApplication: toggle menu item "Hide" title and action on user click.
This commit is contained in:
Sergii Stoian 2024-11-01 15:22:18 +02:00 committed by GitHub
commit 5cd432374c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2496,6 +2496,7 @@ image.</p><p>See Also: -applicationIconImage</p>
NSDictionary *info;
NSWindow *win;
NSEnumerator *iter;
id<NSMenuItem> menuItem;
[nc postNotificationName: NSApplicationWillHideNotification
object: self];
@ -2543,7 +2544,16 @@ image.</p><p>See Also: -applicationIconImage</p>
[_hidden addObject: win];
[win orderOut: self];
}
}
}
menuItem = [sender isKindOfClass:[NSMenuItem class]]
? sender
: [_main_menu itemWithTitle:_(@"Hide")];
if (menuItem)
{
[menuItem setAction:@selector(unhide:)];
[menuItem setTitle:_(@"Show")];
}
_app_is_hidden = YES;
if (YES == [[NSUserDefaults standardUserDefaults]
@ -2606,6 +2616,14 @@ image.</p><p>See Also: -applicationIconImage</p>
*/
- (void) unhide: (id)sender
{
id<NSMenuItem> menuItem = [sender isKindOfClass:[NSMenuItem class]]
? sender
: [_main_menu itemWithTitle:_(@"Show")];
if (menuItem)
{
[menuItem setAction:@selector(hide:)];
[menuItem setTitle:_(@"Hide")];
}
if (_app_is_hidden)
{
[self unhideWithoutActivation];