Title: [124647] trunk
Revision
124647
Author
[email protected]
Date
2012-08-03 13:24:11 -0700 (Fri, 03 Aug 2012)

Log Message

Add API for enabling blanket third-party data blocking
https://bugs.webkit.org/show_bug.cgi?id=93022

Reviewed by Anders Carlsson.

Source/WebCore:

Added API for enabling third-party storage blocking.

* page/Settings.cpp:
(WebCore::Settings::Settings):
* page/Settings.h:
(WebCore::Settings::setThirdPartyStorageBlockingEnabled):
(WebCore::Settings::thirdPartyStorageBlockingEnabled):
(Settings):

Source/WebKit2:

Added API for enabling third-party storage blocking.

* Shared/WebPreferencesStore.h:
(WebKit):
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetThirdPartyStorageBlockingEnabled):
(WKPreferencesGetThirdPartyStorageBlockingEnabled):
* UIProcess/API/C/WKPreferences.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

Tools:

Added test for default setting of new third-party storage blocking API.

* TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
(TestWebKitAPI::TEST):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (124646 => 124647)


--- trunk/Source/WebCore/ChangeLog	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebCore/ChangeLog	2012-08-03 20:24:11 UTC (rev 124647)
@@ -1,3 +1,19 @@
+2012-08-02  Jeffrey Pfau  <[email protected]>
+
+        Add API for enabling blanket third-party data blocking
+        https://bugs.webkit.org/show_bug.cgi?id=93022
+
+        Reviewed by Anders Carlsson.
+
+        Added API for enabling third-party storage blocking.
+
+        * page/Settings.cpp:
+        (WebCore::Settings::Settings):
+        * page/Settings.h:
+        (WebCore::Settings::setThirdPartyStorageBlockingEnabled):
+        (WebCore::Settings::thirdPartyStorageBlockingEnabled):
+        (Settings):
+
 2012-08-03  Anna Cavender  <[email protected]>
 
         Negative timestamps for TextTrackCues should not be allowed.

Modified: trunk/Source/WebCore/page/Settings.cpp (124646 => 124647)


--- trunk/Source/WebCore/page/Settings.cpp	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebCore/page/Settings.cpp	2012-08-03 20:24:11 UTC (rev 124647)
@@ -284,6 +284,7 @@
     , m_cookieEnabled(true)
     , m_windowFocusRestricted(true)
     , m_diagnosticLoggingEnabled(false)
+    , m_thirdPartyStorageBlockingEnabled(false)
     , m_loadsImagesAutomaticallyTimer(this, &Settings::loadsImagesAutomaticallyTimerFired)
     , m_incrementalRenderingSuppressionTimeoutInSeconds(defaultIncrementalRenderingSuppressionTimeoutInSeconds)
 {

Modified: trunk/Source/WebCore/page/Settings.h (124646 => 124647)


--- trunk/Source/WebCore/page/Settings.h	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebCore/page/Settings.h	2012-08-03 20:24:11 UTC (rev 124647)
@@ -601,6 +601,9 @@
         void setWindowFocusRestricted(bool restricted) { m_windowFocusRestricted = restricted; }
         bool windowFocusRestricted() const { return m_windowFocusRestricted; }
 
+        void setThirdPartyStorageBlockingEnabled(bool enabled) { m_thirdPartyStorageBlockingEnabled = enabled; }
+        bool thirdPartyStorageBlockingEnabled() const { return m_thirdPartyStorageBlockingEnabled; }
+
 #if USE(JSC)
         static void setShouldRespectPriorityInCSSAttributeSetters(bool);
         static bool shouldRespectPriorityInCSSAttributeSetters();
@@ -789,6 +792,8 @@
 
         bool m_diagnosticLoggingEnabled : 1;
 
+        bool m_thirdPartyStorageBlockingEnabled : 1;
+
         Timer<Settings> m_loadsImagesAutomaticallyTimer;
         void loadsImagesAutomaticallyTimerFired(Timer<Settings>*);
         

Modified: trunk/Source/WebKit2/ChangeLog (124646 => 124647)


--- trunk/Source/WebKit2/ChangeLog	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebKit2/ChangeLog	2012-08-03 20:24:11 UTC (rev 124647)
@@ -1,3 +1,21 @@
+2012-08-02  Jeffrey Pfau  <[email protected]>
+
+        Add API for enabling blanket third-party data blocking
+        https://bugs.webkit.org/show_bug.cgi?id=93022
+
+        Reviewed by Anders Carlsson.
+
+        Added API for enabling third-party storage blocking.
+
+        * Shared/WebPreferencesStore.h:
+        (WebKit):
+        * UIProcess/API/C/WKPreferences.cpp:
+        (WKPreferencesSetThirdPartyStorageBlockingEnabled):
+        (WKPreferencesGetThirdPartyStorageBlockingEnabled):
+        * UIProcess/API/C/WKPreferences.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::updatePreferences):
+
 2012-08-03  Hugo Parente Lima  <[email protected]>
 
         [Qt][WK2] There's no way to test the gesture tap on WTR

Modified: trunk/Source/WebKit2/Shared/WebPreferencesStore.h (124646 => 124647)


--- trunk/Source/WebKit2/Shared/WebPreferencesStore.h	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebKit2/Shared/WebPreferencesStore.h	2012-08-03 20:24:11 UTC (rev 124647)
@@ -116,6 +116,7 @@
     macro(DiagnosticLoggingEnabled, diagnosticLoggingEnabled, Bool, bool, false) \
     macro(AsynchronousPluginInitializationEnabled, asynchronousPluginInitializationEnabled, Bool, bool, false) \
     macro(ArtificialPluginInitializationDelayEnabled, artificialPluginInitializationDelayEnabled, Bool, bool, false) \
+    macro(ThirdPartyStorageBlockingEnabled, thirdPartyStorageBlockingEnabled, Bool, bool, false) \
     \
 
 #define FOR_EACH_WEBKIT_DOUBLE_PREFERENCE(macro) \

Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp (124646 => 124647)


--- trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp	2012-08-03 20:24:11 UTC (rev 124647)
@@ -817,6 +817,16 @@
     return toImpl(preferencesRef)->requestAnimationFrameEnabled();
 }
 
+void WKPreferencesSetThirdPartyStorageBlockingEnabled(WKPreferencesRef preferencesRef, bool flag)
+{
+    toImpl(preferencesRef)->setThirdPartyStorageBlockingEnabled(flag);
+}
+
+bool WKPreferencesGetThirdPartyStorageBlockingEnabled(WKPreferencesRef preferencesRef)
+{
+    return toImpl(preferencesRef)->thirdPartyStorageBlockingEnabled();
+}
+
 void WKPreferencesResetTestRunnerOverrides(WKPreferencesRef preferencesRef)
 {
     // Currently we reset the overrides on the web process when preferencesDidChange() is called. Since WTR preferences

Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.h (124646 => 124647)


--- trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.h	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.h	2012-08-03 20:24:11 UTC (rev 124647)
@@ -205,6 +205,10 @@
 WK_EXPORT void WKPreferencesSetShouldRespectImageOrientation(WKPreferencesRef preferencesRef, bool enabled);
 WK_EXPORT bool WKPreferencesGetShouldRespectImageOrientation(WKPreferencesRef preferencesRef);
 
+// Defaults to false
+WK_EXPORT void WKPreferencesSetThirdPartyStorageBlockingEnabled(WKPreferencesRef preferencesRef, bool enabled);
+WK_EXPORT bool WKPreferencesGetThirdPartyStorageBlockingEnabled(WKPreferencesRef preferencesRef);
+
 #ifdef __cplusplus
 }
 #endif

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (124646 => 124647)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2012-08-03 20:24:11 UTC (rev 124647)
@@ -2094,6 +2094,7 @@
 #endif
 
     settings->setShouldRespectImageOrientation(store.getBoolValueForKey(WebPreferencesKey::shouldRespectImageOrientationKey()));
+    settings->setThirdPartyStorageBlockingEnabled(store.getBoolValueForKey(WebPreferencesKey::thirdPartyStorageBlockingEnabledKey()));
 
     settings->setDiagnosticLoggingEnabled(store.getBoolValueForKey(WebPreferencesKey::diagnosticLoggingEnabledKey()));
 

Modified: trunk/Tools/ChangeLog (124646 => 124647)


--- trunk/Tools/ChangeLog	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Tools/ChangeLog	2012-08-03 20:24:11 UTC (rev 124647)
@@ -1,3 +1,15 @@
+2012-08-02  Jeffrey Pfau  <[email protected]>
+
+        Add API for enabling blanket third-party data blocking
+        https://bugs.webkit.org/show_bug.cgi?id=93022
+
+        Reviewed by Anders Carlsson.
+
+        Added test for default setting of new third-party storage blocking API.
+
+        * TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
+        (TestWebKitAPI::TEST):
+
 2012-08-03  Arvid Nilsson  <[email protected]>
 
         Unreviewed, adding self to committers.py after becoming committer.

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp (124646 => 124647)


--- trunk/Tools/TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp	2012-08-03 20:23:50 UTC (rev 124646)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp	2012-08-03 20:24:11 UTC (rev 124647)
@@ -101,6 +101,7 @@
     EXPECT_FALSE(WKPreferencesGetCompositingBordersVisible(preference));
     EXPECT_FALSE(WKPreferencesGetCompositingRepaintCountersVisible(preference));
     EXPECT_FALSE(WKPreferencesGetNeedsSiteSpecificQuirks(preference));
+    EXPECT_FALSE(WKPreferencesGetThirdPartyStorageBlockingEnabled(preference));
 
     WKRelease(preference);
 }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to