[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

mjs mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:59:39 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 8e4ec9438c0dc45e03493ffd0929aac189c95612
Author: mjs <mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Nov 13 04:52:39 2002 +0000

    WebKit:
    
    	Combine click policy and URL policy into navigation policy.
    
            * WebView.subproj/WebControllerPolicyDelegate.h:
            * WebView.subproj/WebDefaultPolicyDelegate.h:
            * WebView.subproj/WebDefaultPolicyDelegate.m:
            (-[WebDefaultPolicyDelegate navigationPolicyForAction:andRequest:inFrame:]):
            * WebView.subproj/WebFramePrivate.h:
            * WebView.subproj/WebFramePrivate.m:
            (-[WebFrame _shouldShowRequest:]):
            (-[WebFrame _actionInformationForNavigationType:event:]):
            (-[WebFrame _continueAfterFileURLPolicyForRequest:]):
            (-[WebFrame _continueAfterNavigationPolicyForRequest:event:]):
            (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
    
    WebBrowser:
    
    	Combined click policy and URL policy into navigation policy.
    
            * BrowserDocument.m:
            (-[BrowserDocument goToRequest:]):
            * BrowserWebController.m:
            (-[BrowserWebController navigationPolicyForAction:andRequest:inFrame:]):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2651 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 2113963..ead40aa 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,19 @@
+2002-11-12  Maciej Stachowiak  <mjs at apple.com>
+
+	Combine click policy and URL policy into navigation policy.
+	
+        * WebView.subproj/WebControllerPolicyDelegate.h:
+        * WebView.subproj/WebDefaultPolicyDelegate.h:
+        * WebView.subproj/WebDefaultPolicyDelegate.m:
+        (-[WebDefaultPolicyDelegate navigationPolicyForAction:andRequest:inFrame:]):
+        * WebView.subproj/WebFramePrivate.h:
+        * WebView.subproj/WebFramePrivate.m:
+        (-[WebFrame _shouldShowRequest:]):
+        (-[WebFrame _actionInformationForNavigationType:event:]):
+        (-[WebFrame _continueAfterFileURLPolicyForRequest:]):
+        (-[WebFrame _continueAfterNavigationPolicyForRequest:event:]):
+        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
+
 2002-11-12  Trey Matteson  <trey at apple.com>
 
 	fixed 3096030 - Crash in -[WebBackForwardList goToEntry:] when playing with SnapBack and dictionary.com
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 2113963..ead40aa 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,19 @@
+2002-11-12  Maciej Stachowiak  <mjs at apple.com>
+
+	Combine click policy and URL policy into navigation policy.
+	
+        * WebView.subproj/WebControllerPolicyDelegate.h:
+        * WebView.subproj/WebDefaultPolicyDelegate.h:
+        * WebView.subproj/WebDefaultPolicyDelegate.m:
+        (-[WebDefaultPolicyDelegate navigationPolicyForAction:andRequest:inFrame:]):
+        * WebView.subproj/WebFramePrivate.h:
+        * WebView.subproj/WebFramePrivate.m:
+        (-[WebFrame _shouldShowRequest:]):
+        (-[WebFrame _actionInformationForNavigationType:event:]):
+        (-[WebFrame _continueAfterFileURLPolicyForRequest:]):
+        (-[WebFrame _continueAfterNavigationPolicyForRequest:event:]):
+        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
+
 2002-11-12  Trey Matteson  <trey at apple.com>
 
 	fixed 3096030 - Crash in -[WebBackForwardList goToEntry:] when playing with SnapBack and dictionary.com
diff --git a/WebKit/WebView.subproj/WebControllerPolicyDelegate.h b/WebKit/WebView.subproj/WebControllerPolicyDelegate.h
index bd00db8..4f38deb 100644
--- a/WebKit/WebView.subproj/WebControllerPolicyDelegate.h
+++ b/WebKit/WebView.subproj/WebControllerPolicyDelegate.h
@@ -58,35 +58,6 @@ typedef enum {
 } WebPolicyAction;
 
 /*!
- at enum WebClickAction
- @constant WebClickPolicyShow Have WebKit show the clicked URL.
- @constant WebClickPolicyOpenNewWindow Open the clicked URL in another window.
- @constant WebClickPolicyOpenNewWindowBehind Open the clicked URL in another window behind this window.
- @constant WebClickPolicySave Save the clicked URL to disk.
- @constant WebClickPolicyIgnore Do nothing with the clicked URL.
- */
-typedef enum {
-    WebClickPolicyShow = WebPolicyUse,
-    WebClickPolicyOpenExternally = WebPolicyOpenURL,
-    WebClickPolicyOpenNewWindow = WebPolicyOpenNewWindow,
-    WebClickPolicyOpenNewWindowBehind = WebPolicyOpenNewWindowBehind,
-    WebClickPolicySave = WebPolicySave,
-    WebClickPolicyIgnore = WebPolicyIgnore
-} WebClickAction;
-
-/*!
-    @enum WebURLAction
-    @constant WebURLPolicyUseContentPolicy Continue processing URL, ask for content policy.
-    @constant WebURLPolicyOpenExternally Open the URL in another application. 
-    @constant WebURLPolicyIgnore Do nothing with the URL.
-*/
-typedef enum {
-    WebURLPolicyUseContentPolicy = WebPolicyUse,
-    WebURLPolicyOpenExternally = WebPolicyOpenURL,
-    WebURLPolicyIgnore = WebPolicyIgnore
-} WebURLAction;
-
-/*!
     @enum WebFileAction
     @constant WebFileURLPolicyUseContentPolicy Continue processing the file, ask for content policy.
     @constant WebFileURLPolicyOpenExternally Open the file in another application.
@@ -130,27 +101,16 @@ typedef enum {
 @protocol WebControllerPolicyDelegate <NSObject>
 
 /*!
-     @method clickPolicyForElement:button:modifierFlags:
+     @method navigationPolicyForAction:andRequest:inFrame:
      @discussion Called right after the user clicks on a link.
-     @param elementInformation Dictionary that describes the clicked element.
-     @param eventType The type of event.
-     @param modifierFlags The modifier flags as described in NSEvent.h.
-     @result The WebClickPolicy for WebKit to implement
-*/
-- (WebClickAction)clickPolicyForAction:(NSDictionary *)actionInformation
-                              andRequest:(WebResourceRequest *)request
-                                 inFrame:(WebFrame *)frame;
-
-/*!
-    @method URLPolicyForURL:inFrame:
-    @discussion URLPolicyForURL: is used to determine what to do BEFORE a URL is loaded, i.e.
-    before it is clicked or loaded via a URL bar.  Clients can choose to handle the
-    URL normally, hand the URL off to launch services, or
-    ignore the URL.  The default implementation could return +defaultURLPolicyForURL:.
-    @param URL The URL that WebKit has been asked to load.
-    @param frame The frame which will load the URL.
+     @param actionInformation Dictionary that describes the action that triggered this navigation.
+     @param andRequest The request for the proposed navigation
+     @param frame The frame in which the navigation is taking place
+     @result The WebPolicyAction for WebKit to implement
 */
-- (WebURLAction)URLPolicyForRequest:(WebResourceRequest *)request inFrame:(WebFrame *)frame;
+- (WebPolicyAction)navigationPolicyForAction:(NSDictionary *)actionInformation
+                                  andRequest:(WebResourceRequest *)request
+                                     inFrame:(WebFrame *)frame;
 
 /*!
      @method fileURLPolicyForMIMEType:inFrame:isDirectory:
@@ -196,5 +156,3 @@ typedef enum {
 - (void)unableToImplementPolicy:(WebPolicyAction)policy error:(WebError *)error forURL:(NSURL *)URL inFrame:(WebFrame *)frame;
 
 @end
-
-
diff --git a/WebKit/WebView.subproj/WebDefaultPolicyDelegate.h b/WebKit/WebView.subproj/WebDefaultPolicyDelegate.h
index 6e03a79..7379459 100644
--- a/WebKit/WebView.subproj/WebDefaultPolicyDelegate.h
+++ b/WebKit/WebView.subproj/WebDefaultPolicyDelegate.h
@@ -19,17 +19,6 @@
 }
 
 /*!
-    @method defaultURLPolicyForRequest:
-    @abstract Provides the default WebURLPolicy for a Request
-    @discussion WebControllerPolicyDelegates can use this method to
-    implement the standard behavior for -URLPolicyForRequest:.
-    @param Request use this request to determine an appropriate policy
-    @result The WebURLPolicy to use for the request.
-*/    
-+ (WebURLAction)defaultURLPolicyForRequest:(WebResourceRequest *)request;
-
-
-/*!
     @method initWithWebController:
     @param webController The controller that will use this delegate.  Note that the controller is not retained.
     @result An initialized WebDefaultPolicyDelegate
diff --git a/WebKit/WebView.subproj/WebDefaultPolicyDelegate.m b/WebKit/WebView.subproj/WebDefaultPolicyDelegate.m
index 5cd72ad..70c7c19 100644
--- a/WebKit/WebView.subproj/WebDefaultPolicyDelegate.m
+++ b/WebKit/WebView.subproj/WebDefaultPolicyDelegate.m
@@ -14,16 +14,6 @@
 
 @implementation WebDefaultPolicyDelegate
 
-+ (WebURLAction)defaultURLPolicyForRequest: (WebResourceRequest *)request
-{
-    if([WebResourceHandle canInitWithRequest:request]){
-        return WebURLPolicyUseContentPolicy;
-    }else{
-        return WebURLPolicyOpenExternally;
-    }
-}
-
-
 - initWithWebController: (WebController *)wc
 {
     [super init];
@@ -31,11 +21,6 @@
     return self;
 }
 
-- (WebURLAction)URLPolicyForRequest:(WebResourceRequest *)request inFrame:(WebFrame *)frame
-{
-    return [WebDefaultPolicyDelegate defaultURLPolicyForRequest:request];
-}
-
 - (WebFileAction)fileURLPolicyForMIMEType:(NSString *)type andRequest:(WebResourceRequest *)request inFrame:(WebFrame *)frame
 {
     BOOL isDirectory;
@@ -71,11 +56,15 @@
     return nil;
 }
 
-- (WebClickAction)clickPolicyForAction:(NSDictionary *)actionInformation 
-			      andRequest:(WebResourceRequest *)request
-				 inFrame:(WebFrame *)frame
+- (WebPolicyAction)navigationPolicyForAction:(NSDictionary *)actionInformation 
+				  andRequest:(WebResourceRequest *)request
+				     inFrame:(WebFrame *)frame
 {
-    return [WebDefaultPolicyDelegate defaultURLPolicyForRequest:request];
+    if([WebResourceHandle canInitWithRequest:request]){
+        return WebPolicyUse;
+    }else{
+        return WebPolicyOpenURL;
+    }
 }
 
 @end
diff --git a/WebKit/WebView.subproj/WebFramePrivate.h b/WebKit/WebView.subproj/WebFramePrivate.h
index 57d387a..0cc965a 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.h
+++ b/WebKit/WebView.subproj/WebFramePrivate.h
@@ -108,7 +108,7 @@ typedef enum {
 - (WebFrameLoadType)_loadType;
 
 - (NSDictionary *)_actionInformationForNavigationType:(WebNavigationType)navigationType event:(NSEvent *)event;
-- (BOOL)_continueAfterClickPolicyForEvent:(NSEvent *)event request:(WebResourceRequest *)request;
+- (BOOL)_continueAfterNavigationPolicyForRequest:(WebResourceRequest *)request event:(NSEvent *)event;
 - (void)_goToItem: (WebHistoryItem *)item withLoadType: (WebFrameLoadType)type;
 - (void)_loadURL:(NSURL *)URL loadType:(WebFrameLoadType)loadType clientRedirect:(BOOL)clientRedirect triggeringEvent:(NSEvent *)event;
 - (void)_loadURL:(NSURL *)URL intoChild:(WebFrame *)childFrame;
diff --git a/WebKit/WebView.subproj/WebFramePrivate.m b/WebKit/WebView.subproj/WebFramePrivate.m
index f0eaeb1..c8a5c91 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.m
+++ b/WebKit/WebView.subproj/WebFramePrivate.m
@@ -727,84 +727,7 @@ static const char * const stateNames[] = {
 
 - (BOOL)_shouldShowRequest:(WebResourceRequest *)request
 {
-    id <WebControllerPolicyDelegate> policyDelegate = [[self controller] policyDelegate];
-    WebURLAction URLPolicy = [policyDelegate URLPolicyForRequest:request inFrame:self];
-
-    switch (URLPolicy) {
-        case WebURLPolicyIgnore:
-            return NO;
-
-        case WebURLPolicyOpenExternally:
-            if(![[NSWorkspace sharedWorkspace] openURL:[request URL]]){
-                [self handleUnimplementablePolicy:URLPolicy errorCode:WebErrorCannotNotFindApplicationForURL forURL:[request URL]];
-            }
-            return NO;
-
-        case WebURLPolicyUseContentPolicy:
-            // handle non-file case first because it's short and sweet
-            if (![[request URL] isFileURL]) {
-                if (![WebResourceHandle canInitWithRequest:request]) {
-                    [self handleUnimplementablePolicy:URLPolicy errorCode:WebErrorCannotShowURL forURL:[request URL]];
-                    return NO;
-                }
-                return YES;
-            } else {
-                // file URL
-                NSFileManager *fileManager = [NSFileManager defaultManager];
-                NSString *path = [[request URL] path];
-                NSString *type = [WebController _MIMETypeForFile: path];
-                WebFileAction fileURLPolicy = [policyDelegate fileURLPolicyForMIMEType:type andRequest:request inFrame:self];
-
-                if(fileURLPolicy == WebFileURLPolicyIgnore)
-                    return NO;
-
-		BOOL isDirectory;
-		BOOL fileExists = [fileManager fileExistsAtPath:[[request URL] path] isDirectory:&isDirectory];
-
-                if(!fileExists){
-                    [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotFindFile forURL:[request URL]];
-                    return NO;
-                }
-
-                if(![fileManager isReadableFileAtPath:path]){
-                    [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotReadFile forURL:[request URL]];
-                    return NO;
-                }
-
-                switch (fileURLPolicy) {
-                    case WebFileURLPolicyUseContentPolicy:
-                        if (isDirectory) {
-                            [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotShowDirectory forURL:[request URL]];
-                            return NO;
-                        } else if (![WebController canShowMIMEType: type]) {
-                            [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotShowMIMEType forURL:[request URL]];
-                            return NO;
-                        }
-                        return YES;
-                        
-                    case WebFileURLPolicyOpenExternally:
-                        if(![[NSWorkspace sharedWorkspace] openFile:path]){
-                            [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotFindApplicationForFile forURL:[request URL]];
-                        }
-                        return NO;
-
-                    case WebFileURLPolicyRevealInFinder:
-                        if(![[NSWorkspace sharedWorkspace] selectFile:path inFileViewerRootedAtPath:@""]){
-                            [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorFinderCannotOpenDirectory forURL:[request URL]];
-                        }
-                        return NO;
-
-                    default:
-                        [NSException raise:NSInvalidArgumentException format:
-                @"fileURLPolicyForMIMEType:inFrame:isDirectory: returned WebFileURLPolicy with invalid action %d", fileURLPolicy];
-                        return NO;
-                }
-            }
-
-        default:
-            [NSException raise:NSInvalidArgumentException format:@"URLPolicyForRequest: returned an invalid WebURLPolicy"];
-            return NO;
-    }
+    return [self _continueAfterNavigationPolicyForRequest:request event:[[self provisionalDataSource] _triggeringEvent]];
 }
 
 - (void)_setProvisionalDataSource:(WebDataSource *)d
@@ -973,7 +896,6 @@ static const char * const stateNames[] = {
 
 -(NSDictionary *)_actionInformationForNavigationType:(WebNavigationType)navigationType event:(NSEvent *)event
 {
-
     switch (navigationType) {
     case WebNavigationTypeLinkClicked:
     case WebNavigationTypeFormSubmitted:
@@ -1008,38 +930,100 @@ static const char * const stateNames[] = {
     }
 }
 
--(BOOL)_continueAfterClickPolicyForEvent:(NSEvent *)event request:(WebResourceRequest *)request
+-(BOOL)_continueAfterFileURLPolicyForRequest:(WebResourceRequest *)request
+{
+    NSFileManager *fileManager = [NSFileManager defaultManager];
+    NSString *path = [[request URL] path];
+    NSString *type = [WebController _MIMETypeForFile: path];
+    WebFileAction fileURLPolicy = [[[self controller] policyDelegate] fileURLPolicyForMIMEType:type andRequest:request inFrame:self];
+    
+    if(fileURLPolicy == WebFileURLPolicyIgnore)
+	return NO;
+    
+    BOOL isDirectory;
+    BOOL fileExists = [fileManager fileExistsAtPath:[[request URL] path] isDirectory:&isDirectory];
+    
+    if(!fileExists){
+	[self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotFindFile forURL:[request URL]];
+	return NO;
+    }
+    
+    if(![fileManager isReadableFileAtPath:path]){
+	[self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotReadFile forURL:[request URL]];
+	return NO;
+    }
+    
+    switch (fileURLPolicy) {
+    case WebFileURLPolicyUseContentPolicy:
+	if (isDirectory) {
+	    [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotShowDirectory forURL:[request URL]];
+	    return NO;
+	} else if (![WebController canShowMIMEType: type]) {
+	    [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotShowMIMEType forURL:[request URL]];
+	    return NO;
+	}
+	return YES;
+	
+    case WebFileURLPolicyOpenExternally:
+	if(![[NSWorkspace sharedWorkspace] openFile:path]){
+	    [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorCannotFindApplicationForFile forURL:[request URL]];
+	}
+	return NO;
+	
+    case WebFileURLPolicyRevealInFinder:
+	if(![[NSWorkspace sharedWorkspace] selectFile:path inFileViewerRootedAtPath:@""]){
+	    [self handleUnimplementablePolicy:fileURLPolicy errorCode:WebErrorFinderCannotOpenDirectory forURL:[request URL]];
+	}
+	return NO;
+	
+    default:
+	[NSException raise:NSInvalidArgumentException format:
+			 @"fileURLPolicyForMIMEType:inFrame:isDirectory: returned WebFileURLPolicy with invalid action %d", fileURLPolicy];
+	return NO;
+    }
+}
+
+-(BOOL)_continueAfterNavigationPolicyForRequest:(WebResourceRequest *)request event:(NSEvent *)event
 {
     WebController *controller = [self controller];
-    WebClickAction clickPolicy;
+    WebPolicyAction policy;
 
-    clickPolicy = [[controller policyDelegate] clickPolicyForAction:[self _actionInformationForNavigationType:WebNavigationTypeLinkClicked event:event]
-					       andRequest:request
-					       inFrame:self];
+    policy = [[controller policyDelegate] navigationPolicyForAction:[self _actionInformationForNavigationType:(event != nil ? WebNavigationTypeLinkClicked : WebNavigationTypeOther) event:event]
+				       andRequest:request
+					  inFrame:self];
 
-    switch (clickPolicy) {
-    case WebClickPolicyShow:
-	return YES;
-    case WebClickPolicyOpenExternally:
+    switch (policy) {
+    case WebPolicyIgnore:
+	break;
+    case WebPolicyOpenURL:
 	if(![[NSWorkspace sharedWorkspace] openURL:[request URL]]){
-	    [self handleUnimplementablePolicy:clickPolicy errorCode:WebErrorCannotNotFindApplicationForURL forURL:[request URL]];
+	    [self handleUnimplementablePolicy:policy errorCode:WebErrorCannotNotFindApplicationForURL forURL:[request URL]];
 	}
 	break;
-    case WebClickPolicyOpenNewWindow:
+    case WebPolicyOpenNewWindow:
 	[controller _openNewWindowWithRequest:request behind:NO];
 	break;
-    case WebClickPolicyOpenNewWindowBehind:
+    case WebPolicyOpenNewWindowBehind:
 	[controller _openNewWindowWithRequest:request behind:YES];
 	break;
-    case WebClickPolicySave:
+    case WebPolicySave:
 	[controller _downloadURL:[request URL]];
 	break;
-    case WebClickPolicyIgnore:
-	break;
+    case WebPolicyUse:
+	if ([[request URL] isFileURL]) {
+	    return [self _continueAfterFileURLPolicyForRequest:request];
+	} else {
+	    if (![WebResourceHandle canInitWithRequest:request]) {
+		[self handleUnimplementablePolicy:policy errorCode:WebErrorCannotShowURL forURL:[request URL]];
+		break;
+	    }
+	    return YES;
+	}
     default:
 	[NSException raise:NSInvalidArgumentException
 		     format:@"clickPolicyForElement:button:modifierFlags: returned an invalid WebClickPolicy"];
     }
+
     return NO;
 }
 
@@ -1052,7 +1036,7 @@ static const char * const stateNames[] = {
 	[request setRequestCachePolicy:WebRequestCachePolicyLoadFromOrigin];
     }
 
-    if (event != nil && ![self _continueAfterClickPolicyForEvent:event request:request]) {
+    if (event != nil && ![self _continueAfterNavigationPolicyForRequest:request event:event]) {
 	return;
     }
 
diff --git a/WebKit/WebView.subproj/WebPolicyDelegate.h b/WebKit/WebView.subproj/WebPolicyDelegate.h
index bd00db8..4f38deb 100644
--- a/WebKit/WebView.subproj/WebPolicyDelegate.h
+++ b/WebKit/WebView.subproj/WebPolicyDelegate.h
@@ -58,35 +58,6 @@ typedef enum {
 } WebPolicyAction;
 
 /*!
- at enum WebClickAction
- @constant WebClickPolicyShow Have WebKit show the clicked URL.
- @constant WebClickPolicyOpenNewWindow Open the clicked URL in another window.
- @constant WebClickPolicyOpenNewWindowBehind Open the clicked URL in another window behind this window.
- @constant WebClickPolicySave Save the clicked URL to disk.
- @constant WebClickPolicyIgnore Do nothing with the clicked URL.
- */
-typedef enum {
-    WebClickPolicyShow = WebPolicyUse,
-    WebClickPolicyOpenExternally = WebPolicyOpenURL,
-    WebClickPolicyOpenNewWindow = WebPolicyOpenNewWindow,
-    WebClickPolicyOpenNewWindowBehind = WebPolicyOpenNewWindowBehind,
-    WebClickPolicySave = WebPolicySave,
-    WebClickPolicyIgnore = WebPolicyIgnore
-} WebClickAction;
-
-/*!
-    @enum WebURLAction
-    @constant WebURLPolicyUseContentPolicy Continue processing URL, ask for content policy.
-    @constant WebURLPolicyOpenExternally Open the URL in another application. 
-    @constant WebURLPolicyIgnore Do nothing with the URL.
-*/
-typedef enum {
-    WebURLPolicyUseContentPolicy = WebPolicyUse,
-    WebURLPolicyOpenExternally = WebPolicyOpenURL,
-    WebURLPolicyIgnore = WebPolicyIgnore
-} WebURLAction;
-
-/*!
     @enum WebFileAction
     @constant WebFileURLPolicyUseContentPolicy Continue processing the file, ask for content policy.
     @constant WebFileURLPolicyOpenExternally Open the file in another application.
@@ -130,27 +101,16 @@ typedef enum {
 @protocol WebControllerPolicyDelegate <NSObject>
 
 /*!
-     @method clickPolicyForElement:button:modifierFlags:
+     @method navigationPolicyForAction:andRequest:inFrame:
      @discussion Called right after the user clicks on a link.
-     @param elementInformation Dictionary that describes the clicked element.
-     @param eventType The type of event.
-     @param modifierFlags The modifier flags as described in NSEvent.h.
-     @result The WebClickPolicy for WebKit to implement
-*/
-- (WebClickAction)clickPolicyForAction:(NSDictionary *)actionInformation
-                              andRequest:(WebResourceRequest *)request
-                                 inFrame:(WebFrame *)frame;
-
-/*!
-    @method URLPolicyForURL:inFrame:
-    @discussion URLPolicyForURL: is used to determine what to do BEFORE a URL is loaded, i.e.
-    before it is clicked or loaded via a URL bar.  Clients can choose to handle the
-    URL normally, hand the URL off to launch services, or
-    ignore the URL.  The default implementation could return +defaultURLPolicyForURL:.
-    @param URL The URL that WebKit has been asked to load.
-    @param frame The frame which will load the URL.
+     @param actionInformation Dictionary that describes the action that triggered this navigation.
+     @param andRequest The request for the proposed navigation
+     @param frame The frame in which the navigation is taking place
+     @result The WebPolicyAction for WebKit to implement
 */
-- (WebURLAction)URLPolicyForRequest:(WebResourceRequest *)request inFrame:(WebFrame *)frame;
+- (WebPolicyAction)navigationPolicyForAction:(NSDictionary *)actionInformation
+                                  andRequest:(WebResourceRequest *)request
+                                     inFrame:(WebFrame *)frame;
 
 /*!
      @method fileURLPolicyForMIMEType:inFrame:isDirectory:
@@ -196,5 +156,3 @@ typedef enum {
 - (void)unableToImplementPolicy:(WebPolicyAction)policy error:(WebError *)error forURL:(NSURL *)URL inFrame:(WebFrame *)frame;
 
 @end
-
-

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list