mirror of
https://github.com/joncampbell123/dosbox-x.git
synced 2025-10-13 17:48:10 +08:00
Mac OS X: Also add "Start new instance" to popup menu on app icon
This commit is contained in:
@@ -196,6 +196,14 @@ void menu_macosx_set_menuobj(DOSBoxMenu *new_altMenu) {
|
||||
}
|
||||
}
|
||||
|
||||
- (void)DOSBoxXMenuActionNewInstance:(id)sender
|
||||
{
|
||||
(void)sender;
|
||||
if (is_paused || MAPPER_IsRunning() || GUI_IsRunning()) return;
|
||||
void NewInstanceEvent(bool pressed);
|
||||
NewInstanceEvent(true);
|
||||
}
|
||||
|
||||
- (void)DOSBoxXMenuActionMapper:(id)sender
|
||||
{
|
||||
(void)sender;
|
||||
@@ -469,6 +477,30 @@ void macosx_init_dock_menu(void) {
|
||||
[item release];
|
||||
}
|
||||
|
||||
{
|
||||
bool enable = false;
|
||||
extern std::string MacOSXEXEPath;
|
||||
if (!MacOSXEXEPath.empty()) {
|
||||
if (MacOSXEXEPath.at(0) == '/') {
|
||||
enable = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (enable) {
|
||||
{
|
||||
NSMenuItem *item = [NSMenuItem separatorItem];
|
||||
[menu addItem:item];
|
||||
[item release];
|
||||
}
|
||||
|
||||
NSString *title = [[NSString alloc] initWithUTF8String: "Start new instance"];
|
||||
NSMenuItem *item = [[NSMenuItem alloc] initWithTitle:title action:@selector(DOSBoxXMenuActionNewInstance:) keyEquivalent:@""];
|
||||
[menu addItem:item];
|
||||
[title release];
|
||||
[item release];
|
||||
}
|
||||
}
|
||||
|
||||
sdl1_hax_set_dock_menu(menu);
|
||||
|
||||
[menu release];
|
||||
|
@@ -1637,7 +1637,7 @@ bool CheckQuit(void) {
|
||||
return true;
|
||||
}
|
||||
|
||||
static void NewInstanceEvent(bool pressed) {
|
||||
void NewInstanceEvent(bool pressed) {
|
||||
if (!pressed) return;
|
||||
#if defined(MACOSX)
|
||||
pid_t p = fork();
|
||||
|
Reference in New Issue
Block a user