Title: [197516] trunk/Source/WebKit2
Revision
197516
Author
[email protected]
Date
2016-03-03 13:25:09 -0800 (Thu, 03 Mar 2016)

Log Message

[WK2] testRunner.setPrivateBrowsingEnabled doesn't work with NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=115274

Patch by Alex Christensen <[email protected]> on 2016-03-03
Reviewed by Darin Adler.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::blobSize):
(WebKit::NetworkConnectionToWebProcess::ensureLegacyPrivateBrowsingSession):
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* NetworkProcess/NetworkProcess.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setPrivateBrowsingEnabled):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::destroyPrivateBrowsingSession):
(WebKit::WebProcess::ensureLegacyPrivateBrowsingSessionInNetworkProcess):
(WebKit::WebProcess::pluginProcessConnectionManager):
* WebProcess/WebProcess.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (197515 => 197516)


--- trunk/Source/WebKit2/ChangeLog	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/ChangeLog	2016-03-03 21:25:09 UTC (rev 197516)
@@ -1,3 +1,24 @@
+2016-03-03  Alex Christensen  <[email protected]>
+
+        [WK2] testRunner.setPrivateBrowsingEnabled doesn't work with NetworkProcess
+        https://bugs.webkit.org/show_bug.cgi?id=115274
+
+        Reviewed by Darin Adler.
+
+        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+        (WebKit::NetworkConnectionToWebProcess::blobSize):
+        (WebKit::NetworkConnectionToWebProcess::ensureLegacyPrivateBrowsingSession):
+        * NetworkProcess/NetworkConnectionToWebProcess.h:
+        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
+        * NetworkProcess/NetworkProcess.h:
+        * WebProcess/InjectedBundle/InjectedBundle.cpp:
+        (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::destroyPrivateBrowsingSession):
+        (WebKit::WebProcess::ensureLegacyPrivateBrowsingSessionInNetworkProcess):
+        (WebKit::WebProcess::pluginProcessConnectionManager):
+        * WebProcess/WebProcess.h:
+
 2016-03-02  Alex Christensen  <[email protected]>
 
         Properly cancel downloads when using NetworkSession

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp (197515 => 197516)


--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp	2016-03-03 21:25:09 UTC (rev 197516)
@@ -270,4 +270,9 @@
     resultSize = NetworkBlobRegistry::singleton().blobSize(this, url);
 }
 
+void NetworkConnectionToWebProcess::ensureLegacyPrivateBrowsingSession()
+{
+    NetworkProcess::singleton().ensurePrivateBrowsingSession(SessionID::legacyPrivateSessionID());
+}
+
 } // namespace WebKit

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h (197515 => 197516)


--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h	2016-03-03 21:25:09 UTC (rev 197516)
@@ -93,6 +93,7 @@
     void registerBlobURLForSlice(const WebCore::URL&, const WebCore::URL& srcURL, int64_t start, int64_t end);
     void blobSize(const WebCore::URL&, uint64_t& resultSize);
     void unregisterBlobURL(const WebCore::URL&);
+    void ensureLegacyPrivateBrowsingSession();
 
     RefPtr<IPC::Connection> m_connection;
 

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.messages.in (197515 => 197516)


--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.messages.in	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.messages.in	2016-03-03 21:25:09 UTC (rev 197516)
@@ -45,4 +45,5 @@
     RegisterBlobURLForSlice(WebCore::URL url, WebCore::URL srcURL, int64_t start, int64_t end)
     UnregisterBlobURL(WebCore::URL url)
     BlobSize(WebCore::URL url) -> (uint64_t resultSize)
+    EnsureLegacyPrivateBrowsingSession()
 }

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkProcess.h (197515 => 197516)


--- trunk/Source/WebKit2/NetworkProcess/NetworkProcess.h	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkProcess.h	2016-03-03 21:25:09 UTC (rev 197516)
@@ -108,6 +108,8 @@
     
     void prefetchDNS(const String&);
 
+    void ensurePrivateBrowsingSession(WebCore::SessionID);
+
 private:
     NetworkProcess();
     ~NetworkProcess();
@@ -149,7 +151,6 @@
     void didReceiveSyncNetworkProcessMessage(IPC::Connection&, IPC::MessageDecoder&, std::unique_ptr<IPC::MessageEncoder>&);
     void initializeNetworkProcess(const NetworkProcessCreationParameters&);
     void createNetworkConnectionToWebProcess();
-    void ensurePrivateBrowsingSession(WebCore::SessionID);
     void destroyPrivateBrowsingSession(WebCore::SessionID);
 
     void fetchWebsiteData(WebCore::SessionID, OptionSet<WebsiteDataType>, OptionSet<WebsiteDataFetchOption>, uint64_t callbackID);

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp (197515 => 197516)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp	2016-03-03 21:25:09 UTC (rev 197516)
@@ -285,13 +285,12 @@
 
 void InjectedBundle::setPrivateBrowsingEnabled(WebPageGroupProxy* pageGroup, bool enabled)
 {
-    // FIXME (NetworkProcess): This test-only function doesn't work with NetworkProcess, <https://bugs.webkit.org/show_bug.cgi?id=115274>.
-#if PLATFORM(COCOA) || USE(CFNETWORK) || USE(SOUP)
-    if (enabled)
+    if (enabled) {
+        WebProcess::singleton().ensureLegacyPrivateBrowsingSessionInNetworkProcess();
         WebFrameNetworkingContext::ensurePrivateBrowsingSession(SessionID::legacyPrivateSessionID());
-    else
+    } else
         SessionTracker::destroySession(SessionID::legacyPrivateSessionID());
-#endif
+
     const HashSet<Page*>& pages = PageGroup::pageGroup(pageGroup->identifier())->pages();
     for (HashSet<Page*>::iterator iter = pages.begin(); iter != pages.end(); ++iter)
         (*iter)->enableLegacyPrivateBrowsing(enabled);

Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (197515 => 197516)


--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2016-03-03 21:25:09 UTC (rev 197516)
@@ -479,6 +479,11 @@
     SessionTracker::destroySession(sessionID);
 }
 
+void WebProcess::ensureLegacyPrivateBrowsingSessionInNetworkProcess()
+{
+    networkConnection()->connection()->send(Messages::NetworkConnectionToWebProcess::EnsureLegacyPrivateBrowsingSession(), 0);
+}
+
 #if ENABLE(NETSCAPE_PLUGIN_API)
 PluginProcessConnectionManager& WebProcess::pluginProcessConnectionManager()
 {

Modified: trunk/Source/WebKit2/WebProcess/WebProcess.h (197515 => 197516)


--- trunk/Source/WebKit2/WebProcess/WebProcess.h	2016-03-03 20:34:39 UTC (rev 197515)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.h	2016-03-03 21:25:09 UTC (rev 197516)
@@ -164,6 +164,7 @@
 
     void ensurePrivateBrowsingSession(WebCore::SessionID);
     void destroyPrivateBrowsingSession(WebCore::SessionID);
+    void ensureLegacyPrivateBrowsingSessionInNetworkProcess();
 
     void pageDidEnterWindow(uint64_t pageID);
     void pageWillLeaveWindow(uint64_t pageID);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to