Bug 231990

Summary: WebKit should process-swap for initial navigation of a popup if it has no opener
Product: WebKit Reporter: Chris Dumez <cdumez>
Component: WebKit2Assignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, beidson, bfulgham, ggaren, kkinnunen, webkit-bug-importer, youennf
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch none

Chris Dumez
Reported 2021-10-19 15:07:13 PDT
WebKit should process-swap for initial navigation of a popup if it has no opener, even if the navigation is same-site. Swapping process is not Web-observable here since there is no opener relationship. However, swapping processes has benefits here since we don't want to end up with too many tabs sharing the same process. This impacts Google Drive where double-clicking a document will open Google Docs in a new tab and in the same WebProcess as Google Drive.
Attachments
Patch (6.06 KB, patch)
2021-10-19 15:12 PDT, Chris Dumez
no flags
Patch (33.44 KB, patch)
2021-10-20 09:55 PDT, Chris Dumez
no flags
Patch (33.42 KB, patch)
2021-10-20 11:55 PDT, Chris Dumez
no flags
Patch (42.82 KB, patch)
2021-10-20 15:37 PDT, Chris Dumez
no flags
Patch (50.79 KB, patch)
2021-10-20 17:19 PDT, Chris Dumez
no flags
Patch (53.13 KB, patch)
2021-10-20 20:50 PDT, Chris Dumez
no flags
Patch (55.07 KB, patch)
2021-10-21 07:49 PDT, Chris Dumez
no flags
Chris Dumez
Comment 1 2021-10-19 15:07:24 PDT
Chris Dumez
Comment 2 2021-10-19 15:12:53 PDT
Chris Dumez
Comment 3 2021-10-20 09:55:30 PDT
Chris Dumez
Comment 4 2021-10-20 11:55:39 PDT
Chris Dumez
Comment 5 2021-10-20 15:37:41 PDT
Chris Dumez
Comment 6 2021-10-20 17:19:25 PDT
Chris Dumez
Comment 7 2021-10-20 20:50:32 PDT
Brent Fulgham
Comment 8 2021-10-20 23:54:58 PDT
Comment on attachment 441979 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=441979&action=review R=me > Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:1296 > + EXPECT_NE(pid1, pid2); Is it worth having a test for the named window case to confirm it doesn’t process swap? > Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:1387 > + // Since the window was open via JS, it should be able to close itself. “Was opened”
Chris Dumez
Comment 9 2021-10-21 07:26:45 PDT
(In reply to Brent Fulgham from comment #8) > Comment on attachment 441979 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=441979&action=review > > R=me > > > Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:1296 > > + EXPECT_NE(pid1, pid2); > > Is it worth having a test for the named window case to confirm it doesn’t > process swap? Why not, I'll add one. That said, process swapping when there is a window name and no opener would be safe. I merely haven't gone to the trouble of making it work. > > > Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:1387 > > + // Since the window was open via JS, it should be able to close itself. > > “Was opened”
Chris Dumez
Comment 10 2021-10-21 07:49:51 PDT
Chris Dumez
Comment 11 2021-10-21 09:47:57 PDT
Comment on attachment 442019 [details] Patch Clearing flags on attachment: 442019 Committed r284610 (243337@main): <https://commits.webkit.org/243337@main>
Chris Dumez
Comment 12 2021-10-21 09:48:01 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.