Changeset 259629 in webkit
- Timestamp:
- Apr 7, 2020, 12:55:57 AM (6 years ago)
- Location:
- trunk/Source
- Files:
-
- 5 edited
-
WebCore/ChangeLog (modified) (1 diff)
-
WebCore/loader/NavigationAction.cpp (modified) (1 diff)
-
WebCore/loader/NavigationAction.h (modified) (3 diffs)
-
WebKit/ChangeLog (modified) (1 diff)
-
WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r259624 r259629 1 2020-04-07 Rob Buis <rbuis@igalia.com> 2 3 Use GlobalFrameIdentifier in NavigationAction 4 https://bugs.webkit.org/show_bug.cgi?id=210036 5 6 Reviewed by Darin Adler. 7 8 Use GlobalFrameIdentifier in NavigationAction rather than adding 9 yet another custom data type. 10 11 * loader/NavigationAction.cpp: 12 (WebCore::createGlobalFrameIdentifier): 13 (WebCore::m_globalFrameIdentifier): 14 * loader/NavigationAction.h: 15 (WebCore::NavigationAction::Requester::globalFrameIdentifier const): 16 (WebCore::NavigationAction::Requester::pageID const): Deleted. 17 (WebCore::NavigationAction::Requester::frameID const): Deleted. 18 1 19 2020-04-06 Jack Lee <shihchieh_lee@apple.com> 2 20 -
trunk/Source/WebCore/loader/NavigationAction.cpp
r248713 r259629 39 39 namespace WebCore { 40 40 41 static GlobalFrameIdentifier createGlobalFrameIdentifier(const Document& document) 42 { 43 if (document.frame()) 44 return { document.frame()->loader().client().pageID().valueOr(PageIdentifier { }), document.frame()->loader().client().frameID().valueOr(FrameIdentifier { }) }; 45 return GlobalFrameIdentifier(); 46 } 47 41 48 NavigationAction::Requester::Requester(const Document& document) 42 49 : m_url { URL { document.url() } } 43 50 , m_origin { makeRefPtr(document.securityOrigin()) } 44 , m_ pageIDAndFrameIDPair { document.frame() ? std::make_pair(document.frame()->loader().client().pageID().valueOr(PageIdentifier { }), document.frame()->loader().client().frameID().valueOr(FrameIdentifier { })) : std::make_pair<PageIdentifier, FrameIdentifier>({ }, { }) }51 , m_globalFrameIdentifier(createGlobalFrameIdentifier(document)) 45 52 { 46 53 } -
trunk/Source/WebCore/loader/NavigationAction.h
r248713 r259629 31 31 #include "AdClickAttribution.h" 32 32 #include "BackForwardItemIdentifier.h" 33 #include "FrameIdentifier.h"34 33 #include "FrameLoaderTypes.h" 34 #include "GlobalFrameIdentifier.h" 35 35 #include "LayoutPoint.h" 36 #include "PageIdentifier.h"37 36 #include "ResourceRequest.h" 38 37 #include "SecurityOrigin.h" … … 66 65 NavigationAction& operator=(NavigationAction&&); 67 66 68 using PageIDAndFrameIDPair = std::pair<PageIdentifier, FrameIdentifier>; // FIXME: Use GlobalFrameIdentifier.69 67 class Requester { 70 68 public: … … 73 71 const URL& url() const { return m_url; } 74 72 const SecurityOrigin& securityOrigin() const { return *m_origin; } 75 PageIdentifier pageID() const { return m_pageIDAndFrameIDPair.first; } 76 FrameIdentifier frameID() const { return m_pageIDAndFrameIDPair.second; } 73 const GlobalFrameIdentifier& globalFrameIdentifier() const { return m_globalFrameIdentifier; } 77 74 private: 78 75 URL m_url; 79 76 RefPtr<SecurityOrigin> m_origin; 80 PageIDAndFrameIDPair m_pageIDAndFrameIDPair;77 GlobalFrameIdentifier m_globalFrameIdentifier; 81 78 }; 82 79 const Optional<Requester>& requester() const { return m_requester; } -
trunk/Source/WebKit/ChangeLog
r259615 r259629 1 2020-04-07 Rob Buis <rbuis@igalia.com> 2 3 Use GlobalFrameIdentifier in NavigationAction 4 https://bugs.webkit.org/show_bug.cgi?id=210036 5 6 Reviewed by Darin Adler. 7 8 Adapt to API change. 9 10 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: 11 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): 12 1 13 2020-04-06 Kate Cheney <katherine_cheney@apple.com> 2 14 -
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
r259187 r259629 928 928 auto requester = navigationAction.requester().value(); 929 929 930 auto* requestingFrame = requester. frameID() ? WebProcess::singleton().webFrame(requester.frameID()) : nullptr;930 auto* requestingFrame = requester.globalFrameIdentifier().frameID ? WebProcess::singleton().webFrame(requester.globalFrameIdentifier().frameID) : nullptr; 931 931 Optional<WebCore::FrameIdentifier> originatingFrameID; 932 932 Optional<WebCore::FrameIdentifier> parentFrameID; … … 946 946 947 947 Optional<WebPageProxyIdentifier> originatingPageID; 948 if ( requester.pageID()) {949 if (auto* webPage = WebProcess::singleton().webPage( requester.pageID()))948 if (auto& pageID = requester.globalFrameIdentifier().pageID) { 949 if (auto* webPage = WebProcess::singleton().webPage(pageID)) 950 950 originatingPageID = webPage->webPageProxyIdentifier(); 951 951 }
Note:
See TracChangeset
for help on using the changeset viewer.