Diff
Modified: trunk/Source/WebKit2/ChangeLog (159443 => 159444)
--- trunk/Source/WebKit2/ChangeLog 2013-11-18 19:59:42 UTC (rev 159443)
+++ trunk/Source/WebKit2/ChangeLog 2013-11-18 20:00:11 UTC (rev 159444)
@@ -1,3 +1,24 @@
+2013-11-18 Anders Carlsson <[email protected]>
+
+ Add PageLoadState class
+ https://bugs.webkit.org/show_bug.cgi?id=124528
+
+ Reviewed by Dan Bernstein.
+
+ Trying to use the main frame load state as the page load state was a bad idea,
+ add a new PageLoadState and use it instead. Ultimately the long term plan is to
+ transition away from FrameLoadState entirely.
+
+ * UIProcess/PageLoadState.cpp: Added.
+ (WebKit::PageLoadState::PageLoadState):
+ (WebKit::PageLoadState::~PageLoadState):
+ (WebKit::PageLoadState::didStartProvisionalLoad):
+ * UIProcess/PageLoadState.h: Added.
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
+ * UIProcess/WebPageProxy.h:
+ * WebKit2.xcodeproj/project.pbxproj:
+
2013-11-14 David Farler <[email protected]>
[ASAN] WebKit2: Remove calls to dead DownloadAuthenticationClient code
Added: trunk/Source/WebKit2/UIProcess/PageLoadState.cpp (0 => 159444)
--- trunk/Source/WebKit2/UIProcess/PageLoadState.cpp (rev 0)
+++ trunk/Source/WebKit2/UIProcess/PageLoadState.cpp 2013-11-18 20:00:11 UTC (rev 159444)
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2013 Apple 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. 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 INC. 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.
+ */
+
+#include "config.h"
+#include "PageLoadState.h"
+
+namespace WebKit {
+
+PageLoadState::PageLoadState()
+{
+}
+
+PageLoadState::~PageLoadState()
+{
+}
+
+void PageLoadState::didStartProvisionalLoad(const String& url, const String& unreachableURL)
+{
+ // FIXME: Implement this.
+}
+
+} // namespace WebKit
Added: trunk/Source/WebKit2/UIProcess/PageLoadState.h (0 => 159444)
--- trunk/Source/WebKit2/UIProcess/PageLoadState.h (rev 0)
+++ trunk/Source/WebKit2/UIProcess/PageLoadState.h 2013-11-18 20:00:11 UTC (rev 159444)
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2013 Apple 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. 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 INC. 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.
+ */
+
+#ifndef PageLoadState_h
+#define PageLoadState_h
+
+#include <wtf/text/WTFString.h>
+
+namespace WebKit {
+
+class PageLoadState {
+public:
+ PageLoadState();
+ ~PageLoadState();
+
+ void didStartProvisionalLoad(const String& url, const String& unreachableURL);
+};
+
+} // namespace WebKit
+
+#endif // PageLoadState_h
Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (159443 => 159444)
--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp 2013-11-18 19:59:42 UTC (rev 159443)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp 2013-11-18 20:00:11 UTC (rev 159444)
@@ -2145,9 +2145,12 @@
MESSAGE_CHECK(frame);
MESSAGE_CHECK_URL(url);
+ if (frame->isMainFrame())
+ m_pageLoadState.didStartProvisionalLoad(url, unreachableURL);
+
frame->setUnreachableURL(unreachableURL);
+ frame->didStartProvisionalLoad(url);
- frame->didStartProvisionalLoad(url);
m_loaderClient.didStartProvisionalLoadForFrame(this, frame, userData.get());
}
Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (159443 => 159444)
--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h 2013-11-18 19:59:42 UTC (rev 159443)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h 2013-11-18 20:00:11 UTC (rev 159444)
@@ -34,6 +34,7 @@
#include "GeolocationPermissionRequestManagerProxy.h"
#include "LayerTreeContext.h"
#include "NotificationPermissionRequestManagerProxy.h"
+#include "PageLoadState.h"
#include "PlatformProcessIdentifier.h"
#include "SandboxExtension.h"
#include "ShareableBitmap.h"
@@ -1180,6 +1181,7 @@
WebCore::DragSession m_currentDragSession;
#endif
+ PageLoadState m_pageLoadState;
String m_pendingAPIRequestURL;
bool m_mainFrameHasHorizontalScrollbar;
Modified: trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj (159443 => 159444)
--- trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj 2013-11-18 19:59:42 UTC (rev 159443)
+++ trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj 2013-11-18 20:00:11 UTC (rev 159444)
@@ -247,6 +247,8 @@
1AC25FC212A48F6000BD2671 /* PluginProcessShim.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1AC25F8A12A48E0300BD2671 /* PluginProcessShim.mm */; };
1AC4C82916B876A90069DCCD /* MessageFlags.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC4C82816B876A90069DCCD /* MessageFlags.h */; };
1AC5FFC2174BFD1B0001483D /* PluginProcessAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC5FFC1174BFD1B0001483D /* PluginProcessAttributes.h */; };
+ 1AC7537B183A9FDB0072CB15 /* PageLoadState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AC75379183A9FDA0072CB15 /* PageLoadState.cpp */; };
+ 1AC7537C183A9FDB0072CB15 /* PageLoadState.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC7537A183A9FDB0072CB15 /* PageLoadState.h */; };
1AC86FF3130B46D3002C1257 /* WKPluginSiteDataManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AC86FF1130B46D3002C1257 /* WKPluginSiteDataManager.cpp */; };
1AC86FF4130B46D3002C1257 /* WKPluginSiteDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC86FF2130B46D3002C1257 /* WKPluginSiteDataManager.h */; settings = {ATTRIBUTES = (Private, ); }; };
1AC8702D130B49A2002C1257 /* WebPluginSiteDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC8702B130B49A2002C1257 /* WebPluginSiteDataManager.h */; };
@@ -1729,6 +1731,8 @@
1AC25FB012A48EA700BD2671 /* PluginProcessShim.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = PluginProcessShim.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
1AC4C82816B876A90069DCCD /* MessageFlags.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageFlags.h; sourceTree = "<group>"; };
1AC5FFC1174BFD1B0001483D /* PluginProcessAttributes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PluginProcessAttributes.h; sourceTree = "<group>"; };
+ 1AC75379183A9FDA0072CB15 /* PageLoadState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PageLoadState.cpp; sourceTree = "<group>"; };
+ 1AC7537A183A9FDB0072CB15 /* PageLoadState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PageLoadState.h; sourceTree = "<group>"; };
1AC86FF1130B46D3002C1257 /* WKPluginSiteDataManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPluginSiteDataManager.cpp; sourceTree = "<group>"; };
1AC86FF2130B46D3002C1257 /* WKPluginSiteDataManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKPluginSiteDataManager.h; sourceTree = "<group>"; };
1AC8702B130B49A2002C1257 /* WebPluginSiteDataManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPluginSiteDataManager.h; sourceTree = "<group>"; };
@@ -4302,6 +4306,8 @@
BC06F43912DBCCFB002D78DE /* GeolocationPermissionRequestProxy.cpp */,
BC06F43812DBCCFB002D78DE /* GeolocationPermissionRequestProxy.h */,
BC6EDAA5111271C600E7678B /* PageClient.h */,
+ 1AC75379183A9FDA0072CB15 /* PageLoadState.cpp */,
+ 1AC7537A183A9FDB0072CB15 /* PageLoadState.h */,
BC597074116591D000551FCA /* ProcessModel.h */,
BC111B08112F5E3C00337BAB /* ResponsivenessTimer.cpp */,
1A30066C1110F4F70031937C /* ResponsivenessTimer.h */,
@@ -5858,6 +5864,7 @@
BCC5715B115ADAEF001CCAF9 /* WebSystemInterface.h in Headers */,
1A594ABB112A1FB6009DE7C7 /* WebUIClient.h in Headers */,
BCA0EF7F12331E78007D3CFB /* WebUndoStep.h in Headers */,
+ 1AC7537C183A9FDB0072CB15 /* PageLoadState.h in Headers */,
BCDB86C11200FB97007254BE /* WebURL.h in Headers */,
BCE2315D122C30CA00D5C35A /* WebURLRequest.h in Headers */,
BC90A1D2122DD55E00CC8C50 /* WebURLResponse.h in Headers */,
@@ -7305,6 +7312,7 @@
BC407605124FF0270068F20A /* WKString.cpp in Sources */,
BC407619124FF0370068F20A /* WKStringCF.mm in Sources */,
1A4A9AA912B7E796008FE984 /* WKTextInputWindowController.mm in Sources */,
+ 1AC7537B183A9FDB0072CB15 /* PageLoadState.cpp in Sources */,
BC407607124FF0270068F20A /* WKType.cpp in Sources */,
7CD5EBBE1746B04C000C1C45 /* WKTypeRefWrapper.mm in Sources */,
BC407609124FF0270068F20A /* WKURL.cpp in Sources */,