Bug 174531 - WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction() may not be able to determine page that initiated navigation
Summary: WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction() may not be ab...
Status: RESOLVED WONTFIX
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: WebKit Local Build
Hardware: All All
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-07-14 15:19 PDT by Daniel Bates
Modified: 2017-07-31 14:27 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Bates 2017-07-14 15:19:15 PDT
Currently WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction() determines the originating page from the originating frame. So, if the originating frame is removed from the page then we cannot determine the originating page regardless of whether the originating page still exists (i.e. its windows was not closed). We should be able to determine the originating page so long as it still exists.
Comment 1 Geoffrey Garen 2017-07-14 17:00:20 PDT
This seems like an OK improvement. But I'm not sure it's necessary.

It's kind of difficult to maintain the plumbing, and test, to be able to identify the original WebView even after a frame has been removed from it.

I don't know of a strong motivating example where original WebView is better than nil for navigations after the source frame has been removed from the WebView. Maybe nil is better for some cases?

Given the difficulty involved, I think it may be better to stick with the existing nil behavior unless / until we come up with a motivating example for something more special.
Comment 2 Daniel Bates 2017-07-31 14:27:02 PDT
Removed a comment that referenced this bug in <http://trac.webkit.org/changeset/220074>.