From 96c47ef53742a1623bfd3408c27d61cc49f4bc43 Mon Sep 17 00:00:00 2001 From: "trop[bot]" Date: Mon, 17 Sep 2018 08:09:26 -0700 Subject: [PATCH] fix: quit properly in simpleFullScreen mode (#14646) --- atom/browser/ui/cocoa/atom_ns_window.mm | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/atom/browser/ui/cocoa/atom_ns_window.mm b/atom/browser/ui/cocoa/atom_ns_window.mm index 78818fc37f4d..a03166333ebb 100644 --- a/atom/browser/ui/cocoa/atom_ns_window.mm +++ b/atom/browser/ui/cocoa/atom_ns_window.mm @@ -224,12 +224,22 @@ bool ScopedDisableResize::disable_resize_ = false; // Custom window button methods +- (BOOL)windowShouldClose:(id)sender { return YES; } + - (void)performClose:(id)sender { if (shell_->title_bar_style() == - atom::NativeWindowMac::CUSTOM_BUTTONS_ON_HOVER) + atom::NativeWindowMac::CUSTOM_BUTTONS_ON_HOVER) { [[self delegate] windowShouldClose:self]; - else + } else if (shell_->IsSimpleFullScreen()) { + if([[self delegate] respondsToSelector:@selector(windowShouldClose:)]) { + if(![[self delegate] windowShouldClose:self]) return; + } else if([self respondsToSelector:@selector(windowShouldClose:)]) { + if(![self windowShouldClose:self]) return; + } + [self close]; + } else { [super performClose:sender]; + } } - (void)toggleFullScreenMode:(id)sender {