diff options
author | Sven Weidauer <sven@5sw.de> | 2017-06-05 17:49:59 +0200 |
---|---|---|
committer | Sven Weidauer <sven@5sw.de> | 2017-06-05 17:49:59 +0200 |
commit | bf0a0fb15aa650bd9abaad05d6534dfd31ded6e7 (patch) | |
tree | 1b3398f5767aac359a80259a48ccb193738a4222 /frontends | |
parent | d023f97499af34f53b68f3e471b421d38e92090a (diff) | |
download | netsurf-bf0a0fb15aa650bd9abaad05d6534dfd31ded6e7.tar.gz netsurf-bf0a0fb15aa650bd9abaad05d6534dfd31ded6e7.tar.bz2 |
Use newer API for alert.
Diffstat (limited to 'frontends')
-rw-r--r-- | frontends/cocoa/BrowserWindowController.m | 40 |
1 files changed, 18 insertions, 22 deletions
diff --git a/frontends/cocoa/BrowserWindowController.m b/frontends/cocoa/BrowserWindowController.m index 2abc5d854..8607e4ddd 100644 --- a/frontends/cocoa/BrowserWindowController.m +++ b/frontends/cocoa/BrowserWindowController.m @@ -110,34 +110,30 @@ - (BOOL)windowShouldClose:(NSWindow *)window { - if ([tabView numberOfTabViewItems] <= 1) - return YES; - if ([[NSUserDefaults standardUserDefaults] boolForKey:kAlwaysCloseMultipleTabs]) + if (tabView.numberOfTabViewItems <= 1 || [[NSUserDefaults standardUserDefaults] boolForKey:kAlwaysCloseMultipleTabs]) { return YES; + } - NSAlert *ask = [NSAlert alertWithMessageText:NSLocalizedString(@"Do you really want to close this window?", nil) - defaultButton:NSLocalizedString(@"Yes", @"'Yes' button") - alternateButton:NSLocalizedString(@"No", @"'No' button") - otherButton:nil - informativeTextWithFormat:NSLocalizedString(@"There are %d tabs open, do you want to close them all?", nil), - [tabView numberOfTabViewItems]]; - [ask setShowsSuppressionButton:YES]; + NSAlert *ask = [[NSAlert alloc] init]; + ask.messageText = NSLocalizedString(@"Do you really want to close this window?", nil); + [ask addButtonWithTitle:NSLocalizedString(@"Yes", @"'Yes' button")]; + [ask addButtonWithTitle:NSLocalizedString(@"No", @"'No' button")]; + ask.informativeText = [NSString localizedStringWithFormat:NSLocalizedString(@"There are %d tabs open, do you want to close them all?", nil), tabView.numberOfTabViewItems]; + ask.showsSuppressionButton = YES; [ask beginSheetModalForWindow:window - modalDelegate:self - didEndSelector:@selector(canCloseAlertDidEnd:returnCode:contextInfo:) - contextInfo:NULL]; + completionHandler:^(NSModalResponse returnCode) { + if (returnCode != NSAlertFirstButtonReturn) { + return; + } - return NO; -} + [[NSUserDefaults standardUserDefaults] setBool:[[ask suppressionButton] state] == NSOnState + forKey:kAlwaysCloseMultipleTabs]; + [self.window close]; -- (void)canCloseAlertDidEnd:(NSAlert *)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - if (returnCode == NSModalResponseOK) { - [[NSUserDefaults standardUserDefaults] setBool:[[alert suppressionButton] state] == NSOnState - forKey:kAlwaysCloseMultipleTabs]; - [[self window] close]; - } + }]; + + return NO; } - (void)windowWillClose:(NSNotification *)notification |