Title: [270710] trunk/Source
Revision
270710
Author
bfulg...@apple.com
Date
2020-12-11 14:34:24 -0800 (Fri, 11 Dec 2020)

Log Message

Expose API for enabling/disabling Private Click Measurement
https://bugs.webkit.org/show_bug.cgi?id=219791
<rdar://problem/70502198>

Reviewed by Alex Christensen.

Source/WebKit:

Tested by existing PCM test cases.

This patch moves the flag for enabling and disabling PCM support from the Experimental
features settings to standard settings in preparation for exposing the option in more
permanent UI. This patch does not make any changes in behavior.

* UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences _privateClickMeasurementEnabled]):
(-[WKPreferences _setPrivateClickMeasurementEnabled:]):
* UIProcess/API/Cocoa/WKPreferencesPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

Source/WTF:

This patch moves the flag for enabling and disabling PCM support from the Experimental
features settings to standard settings in preparation for exposing the option in more
permanent UI. This patch does not make any changes in behavior.

* Scripts/Preferences/WebPreferences.yaml: Add PCM flag here.
* Scripts/Preferences/WebPreferencesExperimental.yaml: Remove PCM flag from here.

Modified Paths

Diff

Modified: trunk/Source/WTF/ChangeLog (270709 => 270710)


--- trunk/Source/WTF/ChangeLog	2020-12-11 22:28:51 UTC (rev 270709)
+++ trunk/Source/WTF/ChangeLog	2020-12-11 22:34:24 UTC (rev 270710)
@@ -1,3 +1,18 @@
+2020-12-11  Brent Fulgham  <bfulg...@apple.com>
+
+        Expose API for enabling/disabling Private Click Measurement
+        https://bugs.webkit.org/show_bug.cgi?id=219791
+        <rdar://problem/70502198>
+
+        Reviewed by Alex Christensen.
+
+        This patch moves the flag for enabling and disabling PCM support from the Experimental
+        features settings to standard settings in preparation for exposing the option in more
+        permanent UI. This patch does not make any changes in behavior.
+
+        * Scripts/Preferences/WebPreferences.yaml: Add PCM flag here.
+        * Scripts/Preferences/WebPreferencesExperimental.yaml: Remove PCM flag from here.
+
 2020-12-11  Don Olmstead  <don.olmst...@sony.com>
 
         [CMake] Determine correct visibility for linked frameworks

Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferences.yaml (270709 => 270710)


--- trunk/Source/WTF/Scripts/Preferences/WebPreferences.yaml	2020-12-11 22:28:51 UTC (rev 270709)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferences.yaml	2020-12-11 22:34:24 UTC (rev 270710)
@@ -1729,6 +1729,18 @@
     WebCore:
       default: false
 
+PrivateClickMeasurementEnabled:
+  type: bool
+  humanReadableName: "Private Click Measurement"
+  humanReadableDescription: "Enable Private Click Measurement for Cross-Site Link Navigations"
+  defaultValue:
+    WebKitLegacy:
+      default: false
+    WebKit:
+      default: true
+    WebCore:
+      default: true
+
 PunchOutWhiteBackgroundsInDarkMode:
   type: bool
   webcoreOnChange: setNeedsRecalcStyleInAllFrames

Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (270709 => 270710)


--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2020-12-11 22:28:51 UTC (rev 270709)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2020-12-11 22:34:24 UTC (rev 270710)
@@ -665,18 +665,6 @@
     WebKit:
       default: false
 
-PrivateClickMeasurementEnabled:
-  type: bool
-  humanReadableName: "Private Click Measurement"
-  humanReadableDescription: "Enable Private Click Measurement for Cross-Site Link Navigations"
-  defaultValue:
-    WebKitLegacy:
-      default: false
-    WebKit:
-      default: true
-    WebCore:
-      default: true
-
 ProcessSwapOnCrossSiteNavigationEnabled:
   type: bool
   humanReadableName: "Swap Processes on Cross-Site Navigation"

Modified: trunk/Source/WebKit/ChangeLog (270709 => 270710)


--- trunk/Source/WebKit/ChangeLog	2020-12-11 22:28:51 UTC (rev 270709)
+++ trunk/Source/WebKit/ChangeLog	2020-12-11 22:34:24 UTC (rev 270710)
@@ -1,3 +1,24 @@
+2020-12-11  Brent Fulgham  <bfulg...@apple.com>
+
+        Expose API for enabling/disabling Private Click Measurement
+        https://bugs.webkit.org/show_bug.cgi?id=219791
+        <rdar://problem/70502198>
+
+        Reviewed by Alex Christensen.
+
+        Tested by existing PCM test cases.
+
+        This patch moves the flag for enabling and disabling PCM support from the Experimental
+        features settings to standard settings in preparation for exposing the option in more
+        permanent UI. This patch does not make any changes in behavior.
+
+        * UIProcess/API/Cocoa/WKPreferences.mm:
+        (-[WKPreferences _privateClickMeasurementEnabled]):
+        (-[WKPreferences _setPrivateClickMeasurementEnabled:]):
+        * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::updatePreferences):
+
 2020-12-11  Peng Liu  <peng.l...@apple.com>
 
         [Media in GPU Process][MSE] Implement some required functions with new IPC messages and remove some unneeded functions

Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm (270709 => 270710)


--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm	2020-12-11 22:28:51 UTC (rev 270709)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm	2020-12-11 22:34:24 UTC (rev 270710)
@@ -1458,6 +1458,16 @@
     _preferences->setSpeechRecognitionEnabled(speechRecognitionEnabled);
 }
 
+- (BOOL)_privateClickMeasurementEnabled
+{
+    return _preferences->privateClickMeasurementEnabled();
+}
+
+- (void)_setPrivateClickMeasurementEnabled:(BOOL)privateClickMeasurementEnabled
+{
+    _preferences->setPrivateClickMeasurementEnabled(privateClickMeasurementEnabled);
+}
+
 @end
 
 

Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h (270709 => 270710)


--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h	2020-12-11 22:28:51 UTC (rev 270709)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h	2020-12-11 22:34:24 UTC (rev 270710)
@@ -162,6 +162,7 @@
 @property (nonatomic, setter=_setServiceWorkerEntitlementDisabledForTesting:) BOOL _serviceWorkerEntitlementDisabledForTesting WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
 @property (nonatomic, setter=_setAccessibilityIsolatedTreeEnabled:) BOOL _accessibilityIsolatedTreeEnabled WK_API_AVAILABLE(macos(10.16));
 @property (nonatomic, setter=_setSpeechRecognitionEnabled:) BOOL _speechRecognitionEnabled WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
+@property (nonatomic, setter=_setPrivateClickMeasurementEnabled:) BOOL _privateClickMeasurementEnabled WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
 
 #if !TARGET_OS_IPHONE
 @property (nonatomic, setter=_setWebGLEnabled:) BOOL _webGLEnabled WK_API_AVAILABLE(macos(10.13.4));

Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp (270709 => 270710)


--- trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp	2020-12-11 22:28:51 UTC (rev 270709)
+++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp	2020-12-11 22:34:24 UTC (rev 270710)
@@ -3788,6 +3788,8 @@
     m_needsInAppBrowserPrivacyQuirks = store.getBoolValueForKey(WebPreferencesKey::needsInAppBrowserPrivacyQuirksKey());
 #endif
 
+    settings.setPrivateClickMeasurementEnabled(store.getBoolValueForKey(WebPreferencesKey::privateClickMeasurementEnabledKey()));
+
     if (m_drawingArea)
         m_drawingArea->updatePreferences(store);
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to