summaryrefslogtreecommitdiff
path: root/frontends/cocoa
diff options
context:
space:
mode:
authorSven Weidauer <sven@5sw.de>2017-06-05 17:49:59 +0200
committerSven Weidauer <sven@5sw.de>2017-06-05 17:49:59 +0200
commitbf0a0fb15aa650bd9abaad05d6534dfd31ded6e7 (patch)
tree1b3398f5767aac359a80259a48ccb193738a4222 /frontends/cocoa
parentd023f97499af34f53b68f3e471b421d38e92090a (diff)
downloadnetsurf-bf0a0fb15aa650bd9abaad05d6534dfd31ded6e7.tar.gz
netsurf-bf0a0fb15aa650bd9abaad05d6534dfd31ded6e7.tar.bz2
Use newer API for alert.
Diffstat (limited to 'frontends/cocoa')
-rw-r--r--frontends/cocoa/BrowserWindowController.m40
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