diff --git a/native/atom_application.mm b/native/atom_application.mm index 316be6323..869bddcfa 100644 --- a/native/atom_application.mm +++ b/native/atom_application.mm @@ -171,10 +171,8 @@ } - (void)applicationWillTerminate:(NSNotification *)notification { - NSInteger windowCount = [[self windows] count]; - for(int i = 0; i < windowCount; i++) { - NSWindow *window = [[self windows] objectAtIndex:i]; - [window performClose:0]; + for (NSWindow *window in [self windows]) { + [window performClose:self]; } CefShutdown(); } diff --git a/native/atom_window_controller.mm b/native/atom_window_controller.mm index fcb4fcead..4a259f0fe 100644 --- a/native/atom_window_controller.mm +++ b/native/atom_window_controller.mm @@ -164,11 +164,12 @@ } } -- (void)windowWillClose:(NSNotification *)notification { +- (BOOL)windowShouldClose:(NSNotification *)notification { if (_cefClient && _cefClient->GetBrowser()) { _cefClient->GetBrowser()->SendProcessMessage(PID_RENDERER, CefProcessMessage::Create("shutdown")); } [self autorelease]; + return YES; } - (void)populateBrowserSettings:(CefBrowserSettings &)settings {