Commit b7f98995 authored by sullivan's avatar sullivan

WebCore:

        Reviewed by Darin

        - WebCore part of fix for: <rdar://problem/4451715> REGRESSION: On some sites, have to 
          type a character before username/password autofill kicks in

        * loader/FrameLoaderClient.h:
        new dispatchDidFinishDocumentLoad call

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::finishedParsing):
        call dispatchDidFinishDocumentLoad
        
        * platform/graphics/svg/SVGImageEmptyClients.h:
        (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFinishDocumentLoad):
        empty implementation for dispatchDidFinishDocumentLoad

WebKit:

        Reviewed by Darin

        - WebKit part of fix for: <rdar://problem/4451715> REGRESSION: On some sites, have to 
          type a character before username/password autofill kicks in
          
        Added new webView:didFinishDocumentLoadForFrame: SPI and wired it up

        * WebView/WebViewPrivate.h:
        declare new delegate method

        * WebCoreSupport/WebFrameLoaderClient.h:
        declare dispatchDidFinishDocumentLoad()

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
        new method, calls new delegate method

        * DefaultDelegates/WebDefaultFrameLoadDelegate.m:
        (-[WebDefaultFrameLoadDelegate webView:didFinishDocumentLoadForFrame:]):
        empty default implementation of new delegate method

WebKitQt:

        Added stubs for new callbacks, to try to avoid breaking the Qt port.

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::dispatchDidFinishDocumentLoad):
        * WebCoreSupport/FrameLoaderClientQt.h:



git-svn-id: svn://svn.chromium.org/blink/trunk@18994 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 166ac5f1
2007-01-19 John Sullivan <sullivan@apple.com>
Reviewed by Darin
- WebCore part of fix for: <rdar://problem/4451715> REGRESSION: On some sites, have to
type a character before username/password autofill kicks in
* loader/FrameLoaderClient.h:
new dispatchDidFinishDocumentLoad call
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::finishedParsing):
call dispatchDidFinishDocumentLoad
* platform/graphics/svg/SVGImageEmptyClients.h:
(WebCore::SVGEmptyFrameLoaderClient::dispatchDidFinishDocumentLoad):
empty implementation for dispatchDidFinishDocumentLoad
2007-01-19 Adele Peterson <adele@apple.com> 2007-01-19 Adele Peterson <adele@apple.com>
Reviewed by Hyatt. Reviewed by Hyatt.
......
...@@ -11040,7 +11040,6 @@ ...@@ -11040,7 +11040,6 @@
0867D690FE84028FC02AAC07 /* Project object */ = { 0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject; isa = PBXProject;
buildConfigurationList = 149C284308902B11008A9EFC /* Build configuration list for PBXProject "WebCore" */; buildConfigurationList = 149C284308902B11008A9EFC /* Build configuration list for PBXProject "WebCore" */;
compatibilityVersion = "Xcode 2.4";
hasScannedForEncodings = 1; hasScannedForEncodings = 1;
knownRegions = ( knownRegions = (
English, English,
...@@ -11055,7 +11054,6 @@ ...@@ -11055,7 +11054,6 @@
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */; productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = ""; projectDirPath = "";
projectRoot = ""; projectRoot = "";
shouldCheckCompatibility = 1;
targets = ( targets = (
93F198A508245E59001E9ABC /* WebCore */, 93F198A508245E59001E9ABC /* WebCore */,
DD041FBE09D9DDBE0010AF2A /* Derived Sources */, DD041FBE09D9DDBE0010AF2A /* Derived Sources */,
...@@ -1027,6 +1027,8 @@ void FrameLoader::finishedParsing() ...@@ -1027,6 +1027,8 @@ void FrameLoader::finishedParsing()
// If not, remove them, relayout, and repaint. // If not, remove them, relayout, and repaint.
m_frame->view()->restoreScrollbar(); m_frame->view()->restoreScrollbar();
m_client->dispatchDidFinishDocumentLoad();
gotoAnchor(); gotoAnchor();
} }
......
...@@ -101,6 +101,7 @@ namespace WebCore { ...@@ -101,6 +101,7 @@ namespace WebCore {
virtual void dispatchDidCommitLoad() = 0; virtual void dispatchDidCommitLoad() = 0;
virtual void dispatchDidFailProvisionalLoad(const ResourceError&) = 0; virtual void dispatchDidFailProvisionalLoad(const ResourceError&) = 0;
virtual void dispatchDidFailLoad(const ResourceError&) = 0; virtual void dispatchDidFailLoad(const ResourceError&) = 0;
virtual void dispatchDidFinishDocumentLoad() = 0;
virtual void dispatchDidFinishLoad() = 0; virtual void dispatchDidFinishLoad() = 0;
virtual void dispatchDidFirstLayout() = 0; virtual void dispatchDidFirstLayout() = 0;
......
...@@ -171,6 +171,7 @@ public: ...@@ -171,6 +171,7 @@ public:
virtual void dispatchDidFailProvisionalLoad(const ResourceError&) { } virtual void dispatchDidFailProvisionalLoad(const ResourceError&) { }
virtual void dispatchDidFailLoad(const ResourceError&) { } virtual void dispatchDidFailLoad(const ResourceError&) { }
#endif #endif
virtual void dispatchDidFinishDocumentLoad() { }
virtual void dispatchDidFinishLoad() { } virtual void dispatchDidFinishLoad() { }
virtual void dispatchDidFirstLayout() { } virtual void dispatchDidFirstLayout() { }
......
2007-01-19 John Sullivan <sullivan@apple.com>
Reviewed by Darin
- WebKit part of fix for: <rdar://problem/4451715> REGRESSION: On some sites, have to
type a character before username/password autofill kicks in
Added new webView:didFinishDocumentLoadForFrame: SPI and wired it up
* WebView/WebViewPrivate.h:
declare new delegate method
* WebCoreSupport/WebFrameLoaderClient.h:
declare dispatchDidFinishDocumentLoad()
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
new method, calls new delegate method
* DefaultDelegates/WebDefaultFrameLoadDelegate.m:
(-[WebDefaultFrameLoadDelegate webView:didFinishDocumentLoadForFrame:]):
empty default implementation of new delegate method
2007-01-19 Anders Carlsson <acarlsson@apple.com> 2007-01-19 Anders Carlsson <acarlsson@apple.com>
Reviewed by John Sullivan. Reviewed by John Sullivan.
......
...@@ -57,6 +57,8 @@ static WebDefaultFrameLoadDelegate *sharedDelegate = nil; ...@@ -57,6 +57,8 @@ static WebDefaultFrameLoadDelegate *sharedDelegate = nil;
- (void)webView:(WebView *)sender didReceiveIcon:(NSImage *)image forFrame:(WebFrame *)frame { } - (void)webView:(WebView *)sender didReceiveIcon:(NSImage *)image forFrame:(WebFrame *)frame { }
- (void)webView:(WebView *)sender didFinishDocumentLoadForFrame:(WebFrame *)frame { }
- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame { } - (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame { }
- (void)webView:(WebView *)sender didHandleOnloadEventsForFrame:(WebFrame *)frame { } - (void)webView:(WebView *)sender didHandleOnloadEventsForFrame:(WebFrame *)frame { }
......
...@@ -102,6 +102,7 @@ private: ...@@ -102,6 +102,7 @@ private:
virtual void dispatchDidCommitLoad(); virtual void dispatchDidCommitLoad();
virtual void dispatchDidFailProvisionalLoad(const WebCore::ResourceError&); virtual void dispatchDidFailProvisionalLoad(const WebCore::ResourceError&);
virtual void dispatchDidFailLoad(const WebCore::ResourceError&); virtual void dispatchDidFailLoad(const WebCore::ResourceError&);
virtual void dispatchDidFinishDocumentLoad();
virtual void dispatchDidFinishLoad(); virtual void dispatchDidFinishLoad();
virtual void dispatchDidFirstLayout(); virtual void dispatchDidFirstLayout();
......
...@@ -437,7 +437,7 @@ void WebFrameLoaderClient::dispatchDidCommitLoad() ...@@ -437,7 +437,7 @@ void WebFrameLoaderClient::dispatchDidCommitLoad()
{ {
// Tell the client we've committed this URL. // Tell the client we've committed this URL.
ASSERT([m_webFrame->_private->webFrameView documentView] != nil); ASSERT([m_webFrame->_private->webFrameView documentView] != nil);
WebView *webView = getWebView(m_webFrame.get()); WebView *webView = getWebView(m_webFrame.get());
[webView _didCommitLoadForFrame:m_webFrame.get()]; [webView _didCommitLoadForFrame:m_webFrame.get()];
[[webView _frameLoadDelegateForwarder] webView:webView didCommitLoadForFrame:m_webFrame.get()]; [[webView _frameLoadDelegateForwarder] webView:webView didCommitLoadForFrame:m_webFrame.get()];
...@@ -459,6 +459,14 @@ void WebFrameLoaderClient::dispatchDidFailLoad(const ResourceError& error) ...@@ -459,6 +459,14 @@ void WebFrameLoaderClient::dispatchDidFailLoad(const ResourceError& error)
[m_webFrame->_private->internalLoadDelegate webFrame:m_webFrame.get() didFinishLoadWithError:error]; [m_webFrame->_private->internalLoadDelegate webFrame:m_webFrame.get() didFinishLoadWithError:error];
} }
void WebFrameLoaderClient::dispatchDidFinishDocumentLoad()
{
WebView *webView = getWebView(m_webFrame.get());
id delegate = [webView frameLoadDelegate];
if ([delegate respondsToSelector:@selector(webView:didFinishDocumentLoadForFrame:)])
[delegate webView:webView didFinishDocumentLoadForFrame:m_webFrame.get()];
}
void WebFrameLoaderClient::dispatchDidFinishLoad() void WebFrameLoaderClient::dispatchDidFinishLoad()
{ {
WebView *webView = getWebView(m_webFrame.get()); WebView *webView = getWebView(m_webFrame.get());
......
...@@ -388,6 +388,11 @@ Could be worth adding to the API. ...@@ -388,6 +388,11 @@ Could be worth adding to the API.
@interface NSObject (WebFrameLoadDelegatePrivate) @interface NSObject (WebFrameLoadDelegatePrivate)
- (void)webView:(WebView *)sender didFirstLayoutInFrame:(WebFrame *)frame; - (void)webView:(WebView *)sender didFirstLayoutInFrame:(WebFrame *)frame;
// didFinishDocumentLoadForFrame is sent when the document has finished loading, though not necessarily all
// of its subresources.
- (void)webView:(WebView *)sender didFinishDocumentLoadForFrame:(WebFrame *)frame;
// Addresses 4192534. Private API for now. // Addresses 4192534. Private API for now.
- (void)webView:(WebView *)sender didHandleOnloadEventsForFrame:(WebFrame *)frame; - (void)webView:(WebView *)sender didHandleOnloadEventsForFrame:(WebFrame *)frame;
@end @end
......
2007-01-19 John Sullivan <sullivan@apple.com>
Added stubs for new callbacks, to try to avoid breaking the Qt port.
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::dispatchDidFinishDocumentLoad):
* WebCoreSupport/FrameLoaderClientQt.h:
2007-01-19 Anders Carlsson <acarlsson@apple.com> 2007-01-19 Anders Carlsson <acarlsson@apple.com>
Try fixing the QT build. Try fixing the QT build.
......
...@@ -335,6 +335,12 @@ void FrameLoaderClientQt::dispatchDidCommitLoad() ...@@ -335,6 +335,12 @@ void FrameLoaderClientQt::dispatchDidCommitLoad()
} }
void FrameLoaderClientQt::dispatchDidFinishDocumentLoad()
{
notImplemented();
}
void FrameLoaderClientQt::dispatchDidFinishLoad() void FrameLoaderClientQt::dispatchDidFinishLoad()
{ {
notImplemented(); notImplemented();
......
...@@ -122,6 +122,7 @@ namespace WebCore { ...@@ -122,6 +122,7 @@ namespace WebCore {
virtual void dispatchDidReceiveTitle(const String& title); virtual void dispatchDidReceiveTitle(const String& title);
virtual void dispatchDidCommitLoad(); virtual void dispatchDidCommitLoad();
virtual void dispatchDidFinishDocumentLoad();
virtual void dispatchDidFinishLoad(); virtual void dispatchDidFinishLoad();
virtual void dispatchDidFirstLayout(); virtual void dispatchDidFirstLayout();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment