diff options
Diffstat (limited to 'WebKit/mac/Panels')
| -rw-r--r-- | WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/classes.nib | 38 | ||||
| -rw-r--r-- | WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/info.nib | 16 | ||||
| -rw-r--r-- | WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/objects.nib | bin | 2931 -> 0 bytes | |||
| -rw-r--r-- | WebKit/mac/Panels/WebAuthenticationPanel.h | 68 | ||||
| -rw-r--r-- | WebKit/mac/Panels/WebAuthenticationPanel.m | 244 | ||||
| -rw-r--r-- | WebKit/mac/Panels/WebPanelAuthenticationHandler.h | 45 | ||||
| -rw-r--r-- | WebKit/mac/Panels/WebPanelAuthenticationHandler.m | 164 |
7 files changed, 0 insertions, 575 deletions
diff --git a/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/classes.nib b/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/classes.nib deleted file mode 100644 index 87a7210..0000000 --- a/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/classes.nib +++ /dev/null @@ -1,38 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; logIn = id; }; - CLASS = IFAuthenticationPanel; - LANGUAGE = ObjC; - OUTLETS = { - imageView = id; - mainLabel = id; - panel = id; - password = id; - remember = id; - smallLabel = id; - username = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NonBlockingPanel; LANGUAGE = ObjC; SUPERCLASS = NSPanel; }, - { - ACTIONS = {cancel = id; logIn = id; }; - CLASS = WebAuthenticationPanel; - LANGUAGE = ObjC; - OUTLETS = { - callback = id; - imageView = id; - mainLabel = id; - panel = id; - password = id; - remember = id; - smallLabel = id; - username = id; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -}
\ No newline at end of file diff --git a/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/info.nib b/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/info.nib deleted file mode 100644 index eb229b0..0000000 --- a/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>IBDocumentLocation</key> - <string>773 144 356 240 0 0 1280 778 </string> - <key>IBFramework Version</key> - <string>446.1</string> - <key>IBOpenObjects</key> - <array> - <integer>5</integer> - </array> - <key>IBSystem Version</key> - <string>8N1106</string> -</dict> -</plist> diff --git a/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/objects.nib b/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/objects.nib Binary files differdeleted file mode 100644 index 59196ff..0000000 --- a/WebKit/mac/Panels/English.lproj/WebAuthenticationPanel.nib/objects.nib +++ /dev/null diff --git a/WebKit/mac/Panels/WebAuthenticationPanel.h b/WebKit/mac/Panels/WebAuthenticationPanel.h deleted file mode 100644 index 3e08857..0000000 --- a/WebKit/mac/Panels/WebAuthenticationPanel.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (C) 2005 Apple Computer, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import <Cocoa/Cocoa.h> -#import <Foundation/NSURLCredentialStorage.h> - -@class NSURLAuthenticationChallenge; - -@interface WebAuthenticationPanel : NSObject -{ - IBOutlet id mainLabel; - IBOutlet id panel; - IBOutlet id password; - IBOutlet id smallLabel; - IBOutlet id username; - IBOutlet id imageView; - IBOutlet id remember; - BOOL nibLoaded; - BOOL usingSheet; - id callback; - SEL selector; - NSURLAuthenticationChallenge *challenge; -} - --(id)initWithCallback:(id)cb selector:(SEL)sel; - -// Interface-related methods -- (IBAction)cancel:(id)sender; -- (IBAction)logIn:(id)sender; - -- (BOOL)loadNib; - -- (void)runAsModalDialogWithChallenge:(NSURLAuthenticationChallenge *)chall; -- (void)runAsSheetOnWindow:(NSWindow *)window withChallenge:(NSURLAuthenticationChallenge *)chall; - -- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo; - -@end - -// This is in the header so it can be used from the nib file -@interface NonBlockingPanel : NSPanel -@end - diff --git a/WebKit/mac/Panels/WebAuthenticationPanel.m b/WebKit/mac/Panels/WebAuthenticationPanel.m deleted file mode 100644 index 4e17536..0000000 --- a/WebKit/mac/Panels/WebAuthenticationPanel.m +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Copyright (C) 2005 Apple Computer, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import <WebKit/WebAuthenticationPanel.h> - -#import <Foundation/NSURLAuthenticationChallenge.h> -#import <Foundation/NSURLProtectionSpace.h> -#import <Foundation/NSURLCredential.h> -#import <WebKit/WebLocalizableStrings.h> -#import <WebKit/WebNSURLExtras.h> -#import <wtf/Assertions.h> - -#import <WebKit/WebNSControlExtras.h> - -#define WebAuthenticationPanelNibName @"WebAuthenticationPanel" - -@implementation WebAuthenticationPanel - --(id)initWithCallback:(id)cb selector:(SEL)sel -{ - self = [self init]; - if (self != nil) { - callback = [cb retain]; - selector = sel; - } - return self; -} - - -- (void)dealloc -{ - [panel release]; - - [callback release]; - - [super dealloc]; -} - -// IB actions - -- (IBAction)cancel:(id)sender -{ - // This is required because the body of this method is going to - // remove all of the panel's remaining refs, which can cause a - // crash later when finishing button hit tracking. So we make - // sure it lives on a bit longer. - [[panel retain] autorelease]; - - // This is required as a workaround for AppKit issue 4118422 - [[self retain] autorelease]; - - [panel close]; - if (usingSheet) { - [[NSApplication sharedApplication] endSheet:panel returnCode:1]; - } else { - [[NSApplication sharedApplication] stopModalWithCode:1]; - } -} - -- (IBAction)logIn:(id)sender -{ - // This is required because the body of this method is going to - // remove all of the panel's remaining refs, which can cause a - // crash later when finishing button hit tracking. So we make - // sure it lives on a bit longer. - [[panel retain] autorelease]; - - [panel close]; - if (usingSheet) { - [[NSApplication sharedApplication] endSheet:panel returnCode:0]; - } else { - [[NSApplication sharedApplication] stopModalWithCode:0]; - } -} - -- (BOOL)loadNib -{ - if (!nibLoaded) { - if ([NSBundle loadNibNamed:WebAuthenticationPanelNibName owner:self]) { - nibLoaded = YES; - [imageView setImage:[NSImage imageNamed:@"NSApplicationIcon"]]; - } else { - LOG_ERROR("couldn't load nib named '%@'", WebAuthenticationPanelNibName); - return FALSE; - } - } - return TRUE; -} - -// Methods related to displaying the panel - --(void)setUpForChallenge:(NSURLAuthenticationChallenge *)chall -{ - [self loadNib]; - - NSURLProtectionSpace *space = [chall protectionSpace]; - - NSString *host; - if ([space port] == 0) { - host = [[space host] _web_decodeHostName]; - } else { - host = [NSString stringWithFormat:@"%@:%u", [[space host] _web_decodeHostName], [space port]]; - } - - NSString *realm = [space realm]; - NSString *message; - - if ([chall previousFailureCount] == 0) { - if ([space isProxy]) { - message = [NSString stringWithFormat:UI_STRING("To view this page, you need to log in to the %@ proxy server %@.", - "prompt string in authentication panel"), - [space proxyType], host]; - } else { - message = [NSString stringWithFormat:UI_STRING("To view this page, you need to log in to area “%@” on %@.", - "prompt string in authentication panel"), - realm, host]; - } - } else { - if ([space isProxy]) { - message = [NSString stringWithFormat:UI_STRING("The name or password entered for the %@ proxy server %@ was incorrect. Please try again.", - "prompt string in authentication panel"), - [space proxyType], host]; - } else { - message = [NSString stringWithFormat:UI_STRING("The name or password entered for area “%@” on %@ was incorrect. Please try again.", - "prompt string in authentication panel"), - realm, host]; - } - } - - [mainLabel setStringValue:message]; - [mainLabel sizeToFitAndAdjustWindowHeight]; - - if ([space receivesCredentialSecurely]) { - [smallLabel setStringValue: - UI_STRING("Your log-in information will be sent securely.", - "message in authentication panel")]; - } else { - [smallLabel setStringValue: - UI_STRING("Your password will be sent in the clear.", - "message in authentication panel")]; - } - - if ([[chall proposedCredential] user] != nil) { - [username setStringValue:[[chall proposedCredential] user]]; - [panel setInitialFirstResponder:password]; - } else { - [username setStringValue:@""]; - [password setStringValue:@""]; - [panel setInitialFirstResponder:username]; - } -} - -- (void)runAsModalDialogWithChallenge:(NSURLAuthenticationChallenge *)chall -{ - [self setUpForChallenge:chall]; - usingSheet = FALSE; - NSURLCredential *credential = nil; - - if ([[NSApplication sharedApplication] runModalForWindow:panel] == 0) { - credential = [[NSURLCredential alloc] initWithUser:[username stringValue] password:[password stringValue] persistence:([remember state] == NSOnState) ? NSURLCredentialPersistencePermanent : NSURLCredentialPersistenceForSession]; - } - - [callback performSelector:selector withObject:chall withObject:credential]; - [credential release]; -} - -- (void)runAsSheetOnWindow:(NSWindow *)window withChallenge:(NSURLAuthenticationChallenge *)chall -{ - ASSERT(!usingSheet); - - [self setUpForChallenge:chall]; - - usingSheet = TRUE; - challenge = [chall retain]; - - [[NSApplication sharedApplication] beginSheet:panel modalForWindow:window modalDelegate:self didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:) contextInfo:NULL]; -} - -- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - NSURLCredential *credential = nil; - NSURLAuthenticationChallenge *chall; - - ASSERT(usingSheet); - ASSERT(challenge != nil); - - if (returnCode == 0) { - credential = [[NSURLCredential alloc] initWithUser:[username stringValue] password:[password stringValue] persistence:([remember state] == NSOnState) ? NSURLCredentialPersistencePermanent : NSURLCredentialPersistenceForSession]; - } - - // We take this tricky approach to nilling out and releasing the challenge - // because the callback below might remove our last ref. - chall = challenge; - challenge = nil; - [callback performSelector:selector withObject:chall withObject:credential]; - [credential release]; - [chall release]; -} - -@end - -@implementation NonBlockingPanel - -- (BOOL)_blocksActionWhenModal:(SEL)theAction -{ - // This override of a private AppKit method allows the user to quit when a login dialog - // is onscreen, which is nice in general but in particular prevents pathological cases - // like 3744583 from requiring a Force Quit. - // - // It would be nice to allow closing the individual window as well as quitting the app when - // a login sheet is up, but this _blocksActionWhenModal: mechanism doesn't support that. - // This override matches those in NSOpenPanel and NSToolbarConfigPanel. - if (theAction == @selector(terminate:)) { - return NO; - } - return YES; -} - -@end diff --git a/WebKit/mac/Panels/WebPanelAuthenticationHandler.h b/WebKit/mac/Panels/WebPanelAuthenticationHandler.h deleted file mode 100644 index ac5f449..0000000 --- a/WebKit/mac/Panels/WebPanelAuthenticationHandler.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (C) 2005 Apple Computer, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import <Foundation/Foundation.h> -#import <Foundation/NSURLCredentialStorage.h> - -@class NSURLAuthenticationChallenge; - -@interface WebPanelAuthenticationHandler : NSObject -{ - NSMutableDictionary *windowToPanel; - NSMutableDictionary *challengeToWindow; - NSMutableDictionary *windowToChallengeQueue; -} - -+ (id)sharedHandler; -- (void)startAuthentication:(NSURLAuthenticationChallenge *)challenge window:(NSWindow *)w; -- (void)cancelAuthentication:(NSURLAuthenticationChallenge *)challenge; - -@end diff --git a/WebKit/mac/Panels/WebPanelAuthenticationHandler.m b/WebKit/mac/Panels/WebPanelAuthenticationHandler.m deleted file mode 100644 index c4c6e5b..0000000 --- a/WebKit/mac/Panels/WebPanelAuthenticationHandler.m +++ /dev/null @@ -1,164 +0,0 @@ -/* - * Copyright (C) 2005 Apple Computer, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import <WebKit/WebPanelAuthenticationHandler.h> - -#import <Foundation/NSURLAuthenticationChallenge.h> -#import <WebKit/WebAuthenticationPanel.h> -#import <WebKit/WebNSDictionaryExtras.h> -#import <wtf/Assertions.h> - -static NSString *WebModalDialogPretendWindow = @"WebModalDialogPretendWindow"; - -@implementation WebPanelAuthenticationHandler - -WebPanelAuthenticationHandler *sharedHandler; - -+ (id)sharedHandler -{ - if (sharedHandler == nil) - sharedHandler = [[self alloc] init]; - return sharedHandler; -} - --(id)init -{ - self = [super init]; - if (self != nil) { - windowToPanel = [[NSMutableDictionary alloc] init]; - challengeToWindow = [[NSMutableDictionary alloc] init]; - windowToChallengeQueue = [[NSMutableDictionary alloc] init]; - } - return self; -} - --(void)dealloc -{ - [windowToPanel release]; - [challengeToWindow release]; - [windowToChallengeQueue release]; - [super dealloc]; -} - --(void)enqueueChallenge:(NSURLAuthenticationChallenge *)challenge forWindow:(id)window -{ - NSMutableArray *queue = [windowToChallengeQueue objectForKey:window]; - if (queue == nil) { - queue = [[NSMutableArray alloc] init]; - [windowToChallengeQueue _webkit_setObject:queue forUncopiedKey:window]; - [queue release]; - } - [queue addObject:challenge]; -} - --(void)tryNextChallengeForWindow:(id)window -{ - NSMutableArray *queue = [windowToChallengeQueue objectForKey:window]; - if (queue == nil) { - return; - } - - NSURLAuthenticationChallenge *challenge = [[queue objectAtIndex:0] retain]; - [queue removeObjectAtIndex:0]; - if ([queue count] == 0) { - [windowToChallengeQueue removeObjectForKey:window]; - } - - NSURLCredential *latestCredential = [[NSURLCredentialStorage sharedCredentialStorage] defaultCredentialForProtectionSpace:[challenge protectionSpace]]; - - if ([latestCredential hasPassword]) { - [[challenge sender] useCredential:latestCredential forAuthenticationChallenge:challenge]; - [challenge release]; - return; - } - - [self startAuthentication:challenge window:(window == WebModalDialogPretendWindow ? nil : window)]; - [challenge release]; -} - - --(void)startAuthentication:(NSURLAuthenticationChallenge *)challenge window:(NSWindow *)w -{ - id window = w ? (id)w : (id)WebModalDialogPretendWindow; - - if ([windowToPanel objectForKey:window] != nil) { - [self enqueueChallenge:challenge forWindow:window]; - return; - } - - // In this case, we have an attached sheet that's not one of our - // authentication panels, so enqueing is not an option. Just - // cancel authentication instead, since this case is fairly - // unlikely (how would you be loading a page if you had an error - // sheet up?) - if ([w attachedSheet] != nil) { - [[challenge sender] cancelAuthenticationChallenge:challenge]; - return; - } - - WebAuthenticationPanel *panel = [[WebAuthenticationPanel alloc] initWithCallback:self selector:@selector(_authenticationDoneWithChallenge:result:)]; - [challengeToWindow _webkit_setObject:window forUncopiedKey:challenge]; - [windowToPanel _webkit_setObject:panel forUncopiedKey:window]; - [panel release]; - - if (window == WebModalDialogPretendWindow) { - [panel runAsModalDialogWithChallenge:challenge]; - } else { - [panel runAsSheetOnWindow:window withChallenge:challenge]; - } -} - --(void)cancelAuthentication:(NSURLAuthenticationChallenge *)challenge -{ - id window = [challengeToWindow objectForKey:challenge]; - if (window != nil) { - WebAuthenticationPanel *panel = [windowToPanel objectForKey:window]; - [panel cancel:self]; - } -} - --(void)_authenticationDoneWithChallenge:(NSURLAuthenticationChallenge *)challenge result:(NSURLCredential *)credential -{ - id window = [challengeToWindow objectForKey:challenge]; - [window retain]; - if (window != nil) { - [windowToPanel removeObjectForKey:window]; - [challengeToWindow removeObjectForKey:challenge]; - } - - if (credential == nil) { - [[challenge sender] cancelAuthenticationChallenge:challenge]; - } else { - [[challenge sender] useCredential:credential forAuthenticationChallenge:challenge]; - } - - [self tryNextChallengeForWindow:window]; - [window release]; -} - -@end |
