Reviewed by Brady.
authormjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 24 Aug 2006 06:22:13 +0000 (06:22 +0000)
committermjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 24 Aug 2006 06:22:13 +0000 (06:22 +0000)
        - move WebFrame code that creates WebDataSources down to WebFrameLoader, in preparation
        for WebFrameLoader just holding on to WebDocumentLoadState

        * Loader/WebFrameLoader.h:
        * Loader/WebFrameLoader.m:
        (-[WebFrameLoader _loadRequest:archive:]):
        (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
        (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]):
        (-[WebFrameLoader reload]):
        * WebView/WebFrame.m:
        (-[WebFrame _loadItem:withLoadType:]):
        (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
        (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
        (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
        (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]):
        (-[WebFrame loadRequest:]):
        (-[WebFrame loadArchive:]):
        (-[WebFrame reload]):
        * WebView/WebFrameInternal.h:
        * WebView/WebFramePrivate.h:
        * WebView/WebView.m:
        (-[WebView setCustomTextEncodingName:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@16006 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKit/ChangeLog
WebKit/Loader/WebFrameLoader.h
WebKit/Loader/WebFrameLoader.m
WebKit/WebView/WebFrame.m
WebKit/WebView/WebFrameInternal.h
WebKit/WebView/WebFramePrivate.h
WebKit/WebView/WebView.m

index 79bbb1d62414a1e88f6f9b69f830e867b42088b9..7279951dbf1f3e792011e7dbbb5b03a146ca91fc 100644 (file)
@@ -1,3 +1,30 @@
+2006-08-23  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Brady.
+        
+        - move WebFrame code that creates WebDataSources down to WebFrameLoader, in preparation
+        for WebFrameLoader just holding on to WebDocumentLoadState
+
+        * Loader/WebFrameLoader.h:
+        * Loader/WebFrameLoader.m:
+        (-[WebFrameLoader _loadRequest:archive:]):
+        (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
+        (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]):
+        (-[WebFrameLoader reload]):
+        * WebView/WebFrame.m:
+        (-[WebFrame _loadItem:withLoadType:]):
+        (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
+        (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
+        (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
+        (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]):
+        (-[WebFrame loadRequest:]):
+        (-[WebFrame loadArchive:]):
+        (-[WebFrame reload]):
+        * WebView/WebFrameInternal.h:
+        * WebView/WebFramePrivate.h:
+        * WebView/WebView.m:
+        (-[WebView setCustomTextEncodingName:]):
+
 2006-08-23  Brady Eidson  <beidson@apple.com>
 
         Reviewed by Maciej
index 607d07505db39adea2fab049a956fb8aea991b9d..ba0ebf2f23d29b2019225e29284162cae8474ece 100644 (file)
@@ -28,6 +28,9 @@
 
 #import <Cocoa/Cocoa.h>
 
+#import <WebKit/WebFramePrivate.h>
+
+@class WebArchive;
 @class WebDataSource;
 @class WebMainResourceLoader;
 @class WebIconLoader;
@@ -155,5 +158,9 @@ typedef enum {
 - (void)_checkNavigationPolicyForRequest:(NSURLRequest *)newRequest andCall:(id)obj withSelector:(SEL)sel;
 - (void)_checkContentPolicyForMIMEType:(NSString *)MIMEType andCall:(id)obj withSelector:(SEL)sel;
 - (void)cancelContentPolicy;
+- (void)_loadRequest:(NSURLRequest *)request archive:(WebArchive *)archive;
+- (void)reload;
+- (void)_reloadAllowingStaleDataWithOverrideEncoding:(NSString *)encoding;
+- (void)_loadRequest:(NSURLRequest *)request triggeringAction:(NSDictionary *)action loadType:(WebFrameLoadType)loadType formState:(WebFormState *)formState;
 
 @end
index edf92106a9799eaf2dd94755a688be8f7f96dc68..34b0f0e758ca475907c4a9b7e99e8c44a3537edb 100644 (file)
@@ -43,7 +43,8 @@
 #import <WebKit/WebIconDatabasePrivate.h>
 #import <WebKit/WebNSURLExtras.h>
 #import <WebKit/WebFrameLoadDelegate.h>
-
+#import <WebKit/WebDataProtocol.h>
+#import <WebKit/WebKitNSStringExtras.h>
 
 @implementation WebFrameLoader
 
@@ -733,4 +734,104 @@ static BOOL isCaseInsensitiveEqual(NSString *a, NSString *b)
     listener = nil;
 }
 
+- (void)_loadRequest:(NSURLRequest *)request archive:(WebArchive *)archive
+{
+    WebFrameLoadType loadType;
+    
+    // note this copies request
+    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:request];
+    NSMutableURLRequest *r = [newDataSource request];
+    [webFrame _addExtraFieldsToRequest:r mainResource:YES alwaysFromRequest:NO];
+    if ([webFrame _shouldTreatURLAsSameAsCurrent:[request URL]]) {
+        [r setCachePolicy:NSURLRequestReloadIgnoringCacheData];
+        loadType = WebFrameLoadTypeSame;
+    } else
+        loadType = WebFrameLoadTypeStandard;
+    
+    [newDataSource _setOverrideEncoding:[[self dataSource] _overrideEncoding]];
+    [newDataSource _addToUnarchiveState:archive];
+    
+    // When we loading alternate content for an unreachable URL that we're
+    // visiting in the b/f list, we treat it as a reload so the b/f list 
+    // is appropriately maintained.
+    if ([webFrame _shouldReloadToHandleUnreachableURLFromRequest:request]) {
+        ASSERT(loadType == WebFrameLoadTypeStandard);
+        loadType = WebFrameLoadTypeReload;
+    }
+    
+    [webFrame _loadDataSource:newDataSource withLoadType:loadType formState:nil];
+    [newDataSource release];
+}
+
+- (void)_loadRequest:(NSURLRequest *)request triggeringAction:(NSDictionary *)action loadType:(WebFrameLoadType)loadType formState:(WebFormState *)formState
+{
+    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:request];
+    [newDataSource _setTriggeringAction:action];
+
+    [newDataSource _setOverrideEncoding:[[self dataSource] _overrideEncoding]];
+
+    [webFrame _loadDataSource:newDataSource withLoadType:loadType formState:formState];
+
+    [newDataSource release];
+}
+
+- (void)_reloadAllowingStaleDataWithOverrideEncoding:(NSString *)encoding
+{
+    WebDataSource *ds = [self dataSource];
+    if (ds == nil)
+        return;
+
+    NSMutableURLRequest *request = [[ds request] mutableCopy];
+    NSURL *unreachableURL = [ds unreachableURL];
+    if (unreachableURL != nil)
+        [request setURL:unreachableURL];
+
+    [request setCachePolicy:NSURLRequestReturnCacheDataElseLoad];
+    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:request];
+    [request release];
+    
+    [newDataSource _setOverrideEncoding:encoding];
+
+    [webFrame _loadDataSource:newDataSource withLoadType:WebFrameLoadTypeReloadAllowingStaleData formState:nil];
+    
+    [newDataSource release];
+}
+
+- (void)reload
+{
+    WebDataSource *ds = [self dataSource];
+    if (ds == nil)
+        return;
+
+    NSMutableURLRequest *initialRequest = [ds request];
+    
+    // If a window is created by javascript, its main frame can have an empty but non-nil URL.
+    // Reloading in this case will lose the current contents (see 4151001).
+    if ([[[[ds request] URL] absoluteString] length] == 0)
+        return;
+
+    // Replace error-page URL with the URL we were trying to reach.
+    NSURL *unreachableURL = [initialRequest _webDataRequestUnreachableURL];
+    if (unreachableURL != nil)
+        initialRequest = [NSURLRequest requestWithURL:unreachableURL];
+    
+    // initWithRequest copies the request
+    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:initialRequest];
+    NSMutableURLRequest *request = [newDataSource request];
+
+    [request setCachePolicy:NSURLRequestReloadIgnoringCacheData];
+
+    // If we're about to rePOST, set up action so the app can warn the user
+    if ([[request HTTPMethod] _webkit_isCaseInsensitiveEqualToString:@"POST"]) {
+        NSDictionary *action = [webFrame _actionInformationForNavigationType:WebNavigationTypeFormResubmitted event:nil originalURL:[request URL]];
+        [newDataSource _setTriggeringAction:action];
+    }
+
+    [newDataSource _setOverrideEncoding:[ds _overrideEncoding]];
+    
+    [webFrame _loadDataSource:newDataSource withLoadType:WebFrameLoadTypeReload formState:nil];
+
+    [newDataSource release];
+}
+
 @end
index e887ab3ac6ec268ebcfa772794568faa1f925b03..ba49ce237aedd902e359fda3457e77d3f989edb7 100644 (file)
@@ -135,7 +135,6 @@ NSString *WebPageCacheDocumentViewKey = @"WebPageCacheDocumentViewKey";
 @end
 
 @interface WebFrame (ForwardDecls)
-- (void)_loadRequest:(NSURLRequest *)request triggeringAction:(NSDictionary *)action loadType:(WebFrameLoadType)loadType formState:(WebFormState *)formState;
 - (void)_loadHTMLString:(NSString *)string baseURL:(NSURL *)URL unreachableURL:(NSURL *)unreachableURL;
 - (NSDictionary *)_actionInformationForLoadType:(WebFrameLoadType)loadType isFormSubmission:(BOOL)isFormSubmission event:(NSEvent *)event originalURL:(NSURL *)URL;
 
@@ -346,64 +345,6 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
     return request;
 }
 
-- (BOOL)_shouldReloadToHandleUnreachableURLFromRequest:(NSURLRequest *)request
-{
-    NSURL *unreachableURL = [request _webDataRequestUnreachableURL];
-    if (unreachableURL == nil) {
-        return NO;
-    }
-    
-    if (_private->policyLoadType != WebFrameLoadTypeForward
-        && _private->policyLoadType != WebFrameLoadTypeBack
-        && _private->policyLoadType != WebFrameLoadTypeIndexedBackForward) {
-        return NO;
-    }
-    
-    // We only treat unreachableURLs specially during the delegate callbacks
-    // for provisional load errors and navigation policy decisions. The former
-    // case handles well-formed URLs that can't be loaded, and the latter
-    // case handles malformed URLs and unknown schemes. Loading alternate content
-    // at other times behaves like a standard load.
-    WebDataSource *compareDataSource = nil;
-    if (_private->delegateIsDecidingNavigationPolicy || _private->delegateIsHandlingUnimplementablePolicy) {
-        compareDataSource = _private->policyDataSource;
-    } else if (_private->delegateIsHandlingProvisionalLoadError) {
-        compareDataSource = [self provisionalDataSource];
-    }
-    
-    return compareDataSource != nil && [unreachableURL isEqual:[[compareDataSource request] URL]];
-}
-
-- (void)_loadRequest:(NSURLRequest *)request archive:(WebArchive *)archive
-{
-    WebFrameLoadType loadType;
-    
-    // note this copies request
-    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:request];
-    NSMutableURLRequest *r = [newDataSource request];
-    [self _addExtraFieldsToRequest:r mainResource:YES alwaysFromRequest:NO];
-    if ([self _shouldTreatURLAsSameAsCurrent:[request URL]]) {
-        [r setCachePolicy:NSURLRequestReloadIgnoringCacheData];
-        loadType = WebFrameLoadTypeSame;
-    } else {
-        loadType = WebFrameLoadTypeStandard;
-    }
-    
-    [newDataSource _setOverrideEncoding:[[self dataSource] _overrideEncoding]];
-    [newDataSource _addToUnarchiveState:archive];
-    
-    // When we loading alternate content for an unreachable URL that we're
-    // visiting in the b/f list, we treat it as a reload so the b/f list 
-    // is appropriately maintained.
-    if ([self _shouldReloadToHandleUnreachableURLFromRequest:request]) {
-        ASSERT(loadType == WebFrameLoadTypeStandard);
-        loadType = WebFrameLoadTypeReload;
-    }
-    
-    [self _loadDataSource:newDataSource withLoadType:loadType formState:nil];
-    [newDataSource release];
-}
-
 // helper method used in various nav cases below
 - (void)_addBackForwardItemClippedAtTarget:(BOOL)doClip
 {
@@ -1265,7 +1206,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
                 action = [self _actionInformationForLoadType:loadType isFormSubmission:NO event:nil originalURL:itemOriginalURL];
             }
 
-            [self _loadRequest:request triggeringAction:action loadType:loadType formState:nil];
+            [_private->frameLoader _loadRequest:request triggeringAction:action loadType:loadType formState:nil];
             [request release];
         }
     }
@@ -1343,18 +1284,6 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
     }
 }
 
-- (void)_loadRequest:(NSURLRequest *)request triggeringAction:(NSDictionary *)action loadType:(WebFrameLoadType)loadType formState:(WebFormState *)formState
-{
-    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:request];
-    [newDataSource _setTriggeringAction:action];
-
-    [newDataSource _setOverrideEncoding:[[self dataSource] _overrideEncoding]];
-
-    [self _loadDataSource:newDataSource withLoadType:loadType formState:formState];
-
-    [newDataSource release];
-}
-
 -(NSDictionary *)_actionInformationForNavigationType:(WebNavigationType)navigationType event:(NSEvent *)event originalURL:(NSURL *)URL
 {
     switch ([event type]) {
@@ -1663,7 +1592,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
     [[webView _UIDelegateForwarder] webViewShow:webView];
 
     [[self _bridge] setOpener:[frame _bridge]];
-    [frame _loadRequest:request triggeringAction:nil loadType:WebFrameLoadTypeStandard formState:formState];
+    [_private->frameLoader _loadRequest:request triggeringAction:nil loadType:WebFrameLoadTypeStandard formState:formState];
 }
 
 
@@ -1741,7 +1670,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
     } else {
         // must grab this now, since this load may stop the previous load and clear this flag
         BOOL isRedirect = _private->quickRedirectComing;
-        [self _loadRequest:request triggeringAction:action loadType:loadType formState:formState];
+        [_private->frameLoader _loadRequest:request triggeringAction:action loadType:loadType formState:formState];
         if (isRedirect) {
             LOG(Redirect, "%@(%p) _private->quickRedirectComing was %d", [self name], self, (int)isRedirect);
             _private->quickRedirectComing = NO;
@@ -1832,7 +1761,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
         WebFrame *targetFrame = [self findFrameNamed:target];
 
         if (targetFrame != nil) {
-            [targetFrame _loadRequest:request triggeringAction:action loadType:WebFrameLoadTypeStandard formState:formState];
+            [[targetFrame _frameLoader] _loadRequest:request triggeringAction:action loadType:WebFrameLoadTypeStandard formState:formState];
         } else {
             [self _checkNewWindowPolicyForRequest:request action:action frameName:target formState:formState andCall:self withSelector:@selector(_continueLoadRequestAfterNewWindowPolicy:frameName:formState:)];
         }
@@ -1841,7 +1770,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
         return;
     }
 
-    [self _loadRequest:request triggeringAction:action loadType:WebFrameLoadTypeStandard formState:formState];
+    [_private->frameLoader _loadRequest:request triggeringAction:action loadType:WebFrameLoadTypeStandard formState:formState];
 
     [request release];
     [formState release];
@@ -1968,29 +1897,6 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
         [[[frame frameView] documentView] viewDidMoveToHostWindow];
 }
 
-- (void)_reloadAllowingStaleDataWithOverrideEncoding:(NSString *)encoding
-{
-    WebDataSource *dataSource = [self dataSource];
-    if (dataSource == nil) {
-        return;
-    }
-
-    NSMutableURLRequest *request = [[dataSource request] mutableCopy];
-    NSURL *unreachableURL = [dataSource unreachableURL];
-    if (unreachableURL != nil) {
-        [request setURL:unreachableURL];
-    }
-    [request setCachePolicy:NSURLRequestReturnCacheDataElseLoad];
-    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:request];
-    [request release];
-    
-    [newDataSource _setOverrideEncoding:encoding];
-
-    [self _loadDataSource:newDataSource withLoadType:WebFrameLoadTypeReloadAllowingStaleData formState:nil];
-    
-    [newDataSource release];
-}
-
 - (void)_addChild:(WebFrame *)child
 {
     [[self _bridge] appendChild:[child _bridge]];
@@ -2696,6 +2602,34 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
         _private->firstLayoutDone = YES;
 }
 
+- (BOOL)_shouldReloadToHandleUnreachableURLFromRequest:(NSURLRequest *)request
+{
+    NSURL *unreachableURL = [request _webDataRequestUnreachableURL];
+    if (unreachableURL == nil) {
+        return NO;
+    }
+    
+    if (_private->policyLoadType != WebFrameLoadTypeForward
+        && _private->policyLoadType != WebFrameLoadTypeBack
+        && _private->policyLoadType != WebFrameLoadTypeIndexedBackForward) {
+        return NO;
+    }
+    
+    // We only treat unreachableURLs specially during the delegate callbacks
+    // for provisional load errors and navigation policy decisions. The former
+    // case handles well-formed URLs that can't be loaded, and the latter
+    // case handles malformed URLs and unknown schemes. Loading alternate content
+    // at other times behaves like a standard load.
+    WebDataSource *compareDataSource = nil;
+    if (_private->delegateIsDecidingNavigationPolicy || _private->delegateIsHandlingUnimplementablePolicy) {
+        compareDataSource = _private->policyDataSource;
+    } else if (_private->delegateIsHandlingProvisionalLoadError) {
+        compareDataSource = [self provisionalDataSource];
+    }
+    
+    return compareDataSource != nil && [unreachableURL isEqual:[[compareDataSource request] URL]];
+}
+
 @end
 
 @implementation WebFormState : NSObject
@@ -2810,7 +2744,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
     // after loading is finished or aborted.
     _private->loadType = WebFrameLoadTypeStandard;
     
-    [self _loadRequest:request archive:nil];
+    [_private->frameLoader _loadRequest:request archive:nil];
 }
 
 - (void)_loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)URL unreachableURL:(NSURL *)unreachableURL
@@ -2864,7 +2798,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
                                             textEncodingName:[mainResource textEncodingName]
                                                      baseURL:[mainResource URL]
                                               unreachableURL:nil];
-        [self _loadRequest:request archive:archive];
+        [_private->frameLoader _loadRequest:request archive:archive];
     }
 }
 
@@ -2886,41 +2820,7 @@ static inline WebFrame *Frame(WebCoreFrameBridge *bridge)
 
 - (void)reload
 {
-    WebDataSource *dataSource = [self dataSource];
-    if (dataSource == nil)
-        return;
-
-    NSMutableURLRequest *initialRequest = [dataSource request];
-    
-    // If a window is created by javascript, its main frame can have an empty but non-nil URL.
-    // Reloading in this case will lose the current contents (see 4151001).
-    if ([[[[dataSource request] URL] absoluteString] length] == 0) {
-        return;
-    }
-
-    // Replace error-page URL with the URL we were trying to reach.
-    NSURL *unreachableURL = [initialRequest _webDataRequestUnreachableURL];
-    if (unreachableURL != nil) {
-        initialRequest = [NSURLRequest requestWithURL:unreachableURL];
-    }
-    
-    // initWithRequest copies the request
-    WebDataSource *newDataSource = [[WebDataSource alloc] initWithRequest:initialRequest];
-    NSMutableURLRequest *request = [newDataSource request];
-
-    [request setCachePolicy:NSURLRequestReloadIgnoringCacheData];
-
-    // If we're about to rePOST, set up action so the app can warn the user
-    if ([[request HTTPMethod] _webkit_isCaseInsensitiveEqualToString:@"POST"]) {
-        NSDictionary *action = [self _actionInformationForNavigationType:WebNavigationTypeFormResubmitted event:nil originalURL:[request URL]];
-        [newDataSource _setTriggeringAction:action];
-    }
-
-    [newDataSource _setOverrideEncoding:[dataSource _overrideEncoding]];
-    
-    [self _loadDataSource:newDataSource withLoadType:WebFrameLoadTypeReload formState:nil];
-
-    [newDataSource release];
+    [_private->frameLoader reload];
 }
 
 - (WebFrame *)findFrameNamed:(NSString *)name
index b541f45c309527256f1214cb019d328e8d6d35c4..356894325a31a05b5acb3913e7f4f4f9f74f2c77 100644 (file)
@@ -70,6 +70,7 @@
 - (void)_provisionalLoadStarted;
 - (void)_prepareForDataSourceReplacement;
 - (void)_frameLoadCompleted;
+- (BOOL)_shouldReloadToHandleUnreachableURLFromRequest:(NSURLRequest *)request;
 
 @end
 
index 1d7db8467a23cda1a4062f991051c3d5ae538dc9..5c238ea32649cbcc7aece392f6e4c7d412dd33d7 100644 (file)
 @class WebScriptDebugger;
 @class WebView;
 
+// Keys for accessing the values in the page cache dictionary.
+extern NSString *WebPageCacheEntryDateKey;
+extern NSString *WebPageCacheDataSourceKey;
+extern NSString *WebPageCacheDocumentViewKey;
+
 typedef enum {
     WebFrameLoadTypeStandard,
     WebFrameLoadTypeBack,
@@ -60,11 +65,6 @@ typedef enum {
     WebFrameLoadTypeReplace
 } WebFrameLoadType;
 
-// Keys for accessing the values in the page cache dictionary.
-extern NSString *WebPageCacheEntryDateKey;
-extern NSString *WebPageCacheDataSourceKey;
-extern NSString *WebPageCacheDocumentViewKey;
-
 @interface WebFrame (WebPrivate)
 
 // Other private methods
@@ -102,8 +102,6 @@ extern NSString *WebPageCacheDocumentViewKey;
 - (void)_viewWillMoveToHostWindow:(NSWindow *)hostWindow;
 - (void)_viewDidMoveToHostWindow;
 
-- (void)_reloadAllowingStaleDataWithOverrideEncoding:(NSString *)encoding;
-
 - (void)_addChild:(WebFrame *)child;
 
 - (NSDictionary *)_actionInformationForNavigationType:(WebNavigationType)navigationType event:(NSEvent *)event originalURL:(NSURL *)URL;
index 34e6228bab15e84f82a3ddad6c5512aa208dd862..d5e6cc61ea3e2421b90a7f5e605ca81afa0c4dd8 100644 (file)
@@ -50,7 +50,7 @@
 #import "WebFormDelegatePrivate.h"
 #import "WebFrameBridge.h"
 #import "WebFrameInternal.h"
-#import "WebFramePrivate.h"
+#import "WebFrameLoader.h"
 #import "WebFrameViewInternal.h"
 #import "WebHTMLRepresentation.h"
 #import "WebHTMLViewInternal.h"
@@ -2150,7 +2150,7 @@ NS_ENDHANDLER
     if (encoding == oldEncoding || [encoding isEqualToString:oldEncoding]) {
         return;
     }
-    [[self mainFrame] _reloadAllowingStaleDataWithOverrideEncoding:encoding];
+    [[[self mainFrame] _frameLoader] _reloadAllowingStaleDataWithOverrideEncoding:encoding];
 }
 
 - (NSString *)_mainFrameOverrideEncoding