Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 49835f37f06e9d64e5cb668b3efd16f1780363af
      
https://github.com/WebKit/WebKit/commit/49835f37f06e9d64e5cb668b3efd16f1780363af
  Author: Matthew Finkel <[email protected]>
  Date:   2026-02-03 (Tue, 03 Feb 2026)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WebCore/dom/ScriptExecutionContext.cpp
    M Source/WebCore/page/Page.cpp
    M Source/WebCore/page/Quirks.cpp
    M Source/WebCore/page/Quirks.h
    M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
    M Tools/TestWebKitAPI/Tests/WebKit/AdvancedPrivacyProtections.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/ScriptTrackingPrivacyTests.mm

  Log Message:
  -----------
  Add quirk for consistently applying filtering rules
https://bugs.webkit.org/show_bug.cgi?id=306429
rdar://169100961

Reviewed by Wenson Hsieh.

Query parameter filtering and hiding has become a complex web of decisions.
Some websites benefit from having consistent behavior. This PR lays the
groundwork for that quirk where filtering and hiding will be applied without
worrying about exceptions causing web compatibility issues.

Test: Tools/TestWebKitAPI/Tests/WebKit/AdvancedPrivacyProtections.mm

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::requiresScriptTrackingPrivacyProtection):
* Source/WebCore/page/Page.cpp:
(WebCore::Page::requiresScriptTrackingPrivacyProtections const):
* Source/WebCore/page/Quirks.cpp:
(WebCore::needsConsistentQueryParameterFilteringInternal):
(WebCore::Quirks::needsConsistentQueryParameterFilteringQuirk const):
* Source/WebCore/page/Quirks.h:
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::applyLinkDecorationFilteringWithResult):
* Tools/TestWebKitAPI/Tests/WebKit/AdvancedPrivacyProtections.mm:
(TestWebKitAPI::createWebViewWithAdvancedPrivacyProtections):
(TestWebKitAPI::createWebViewLinkDecorationFiltering):
(TestWebKitAPI::TEST(AdvancedPrivacyProtections, 
RemoveTrackingQueryParametersWhenPrivacyProtectionsAreDisabled)):
(TestWebKitAPI::TEST(AdvancedPrivacyProtections, 
ConsistentlyRemoveTrackingQueryParametersWhenPrivacyProtectionsAreDisabled)):
(TestWebKitAPI::TEST(AdvancedPrivacyProtections, 
TrackingQueryParametersWith8BitValues)):
(TestWebKitAPI::TEST(AdvancedPrivacyProtections, 
ConsistentlyFilterQueryParametersOnSource)):
(TestWebKitAPI::TEST(AdvancedPrivacyProtections, 
ConsistentlyFilterQueryParametersOnDestination)):
(TestWebKitAPI::TEST(AdvancedPrivacyProtections, 
DoNotRemoveTrackingQueryParametersWith8BitValues)): Deleted.
* Tools/TestWebKitAPI/Tests/WebKitCocoa/ScriptTrackingPrivacyTests.mm:
(TestWebKitAPI::setUpWebViewForFingerprintingTests):
(TestWebKitAPI::(ScriptTrackingPrivacyTests, ConsistentQueryParameters)):

Canonical link: https://commits.webkit.org/306714@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to