We established a set of stubs in Bug 221430 that need to be fleshed out. 1. They should thread the NSURLRequest/NSURLResponse objects to the loading layer (I think this is already true for NSURLRequest). 2. Loads via these API should cause entries to be added to the back/forward list. 3. We need API Tests to confirm the back/forward list works as expected.
<rdar://problem/74166568>
Created attachment 420561 [details] Patch
Created attachment 420565 [details] Patch
Created attachment 420573 [details] Patch
Comment on attachment 420573 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=420573&action=review > Source/WebKit/UIProcess/WebPageProxy.cpp:1501 > +void WebPageProxy::loadSimulatedRequestDataWithNavigationShared(Ref<WebProcessProxy>&& process, WebCore::PageIdentifier webPageID, API::Navigation& navigation, WebCore::ResourceRequest&& simulatedRequest, WebCore::ResourceResponse&& simulatedResponse, const IPC::DataReference& data, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, Optional<NavigatingToAppBoundDomain> isNavigatingToAppBoundDomain, Optional<WebsitePoliciesData>&& websitePolicies, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy) @Chris: I can merge this with the above if I don’t need to do a ProvisionalPageProxy.
Comment on attachment 420573 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=420573&action=review >> Source/WebKit/UIProcess/WebPageProxy.cpp:1501 >> +void WebPageProxy::loadSimulatedRequestDataWithNavigationShared(Ref<WebProcessProxy>&& process, WebCore::PageIdentifier webPageID, API::Navigation& navigation, WebCore::ResourceRequest&& simulatedRequest, WebCore::ResourceResponse&& simulatedResponse, const IPC::DataReference& data, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, Optional<NavigatingToAppBoundDomain> isNavigatingToAppBoundDomain, Optional<WebsitePoliciesData>&& websitePolicies, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy) > > @Chris: I can merge this with the above if I don’t need to do a ProvisionalPageProxy. Right. I think we should merge. > Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewLoadAPIs.mm:100 > + EXPECT_EQ((NSUInteger)1, list.backList.count); Would be good to check WKBackForwardListItem.URL too for both the current item and the backList item. > Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewLoadAPIs.mm:111 > + EXPECT_EQ((NSUInteger)1, list.forwardList.count); ditto.
Comment on attachment 420573 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=420573&action=review > Source/WebKit/UIProcess/WebPageProxy.cpp:1476 > + UNUSED_PARAM(data); Is this meant to be here? It seems like data is used below.
Created attachment 420691 [details] Patch for landing
Committed r273023: <https://commits.webkit.org/r273023> All reviewed patches have been landed. Closing bug and clearing flags on attachment 420691 [details].
Reopening to add a test fix.
Created attachment 420746 [details] Patch
Comment on attachment 420746 [details] Patch r=me
Committed r273048: <https://commits.webkit.org/r273048> All reviewed patches have been landed. Closing bug and clearing flags on attachment 420746 [details].