Bug 244945 - Implement the concept of "browsing context set"
Summary: Implement the concept of "browsing context set"
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-09-08 12:41 PDT by Chris Dumez
Modified: 2022-09-15 12:42 PDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Dumez 2022-09-08 12:41:08 PDT
Implement the concept of "browsing context set" from the HTML specification:
- https://html.spec.whatwg.org/multipage/browsers.html#browsing-context-set

For example, COOP violation reporting relies on the size of this set to determine if a violation report should be sent or not:
- https://html.spec.whatwg.org/multipage/origin.html#browsing-context-group-switches-due-to-cross-origin-opener-policy:coop-violation-navigation-from

"""
If browsingContext's group's browsing context set's size is greater than 1, then:
    * Queue a violation report for browsing context group switch when navigating to a COOP response with responseCOOP, "enforce", responseURL, currentCOOPEnforcementResult's url, currentCOOPEnforcementResult's origin, responseOrigin, and referrer.
"""

Right now, we have code in PingLoader that relies on Page::nonUtilityPageCount() instead, which is not correct.
Comment 1 Radar WebKit Bug Importer 2022-09-15 12:42:24 PDT
<rdar://problem/99982953>