Question

Here's my code:

if ([window isVisible]) {
   [NSApp activateIgnoringOtherApps:YES];
   [window orderOut:nil]; 
   return;
} 
[NSApp activateIgnoringOtherApps:YES];
[window makeKeyAndOrderFront:nil];
return;

but if the user clicks/changes the current window and then clicks on menu bar it will close the window. How do I stop that?

Was it helpful?

Solution

Instead of testing whether the window is ordered in (isVisible), test whether it is the active window ([NSApp mainWindow] or [NSApp keyWindow]details) and whether your application is active ([NSApp isActive]).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top