From 166ae710c97dbc3b2f1300c665aa4d2d77cad2c0 Mon Sep 17 00:00:00 2001 From: Sander Bruens Date: Wed, 21 Feb 2024 01:13:42 -0500 Subject: [PATCH] Use the `NSPopover`'s native behavior to close the popover for us, instead of assuming responsibility for closing the popover in the app. --- .../apple/xcode/macos/Outline/Classes/AppDelegate.m | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/cordova/apple/xcode/macos/Outline/Classes/AppDelegate.m b/src/cordova/apple/xcode/macos/Outline/Classes/AppDelegate.m index 797794acaa..e8665261d9 100644 --- a/src/cordova/apple/xcode/macos/Outline/Classes/AppDelegate.m +++ b/src/cordova/apple/xcode/macos/Outline/Classes/AppDelegate.m @@ -85,16 +85,10 @@ - (void)applicationDidFinishLaunching:(NSNotification*)aNotification { self.statusItem.button.action = @selector(togglePopover); [self setAppIcon:@"StatusBarButtonImage"]; self.popover = [[NSPopover alloc] init]; + self.popover.behavior = NSPopoverBehaviorTransient; self.popover.contentViewController = [[NSViewController alloc] initWithNibName:@"MainViewController" bundle:[NSBundle mainBundle]]; self.popover.contentViewController.view = self.window.contentView; - // Monitor clicks outside the popover in order to close it. - NSEventMask eventMask = NSEventMaskLeftMouseDown|NSEventMaskRightMouseDown; - self.eventMonitor = [[EventMonitor alloc] initWithMask:eventMask handler:^(NSEvent* event) { - if (self.popover.isShown) { - [self closePopover]; - } - }]; if ([self wasStartedByLauncherApp]) { [OutlineVpn.shared startLastSuccessfulTunnel:^(enum ErrorCode errorCode) {