Title: [161291] trunk/Source/WebKit2
Revision
161291
Author
[email protected]
Date
2014-01-03 16:03:49 -0800 (Fri, 03 Jan 2014)

Log Message

Remove SPI, user default for disabling process suppression
https://bugs.webkit.org/show_bug.cgi?id=126458

Reviewed by Sam Weinig.

* Shared/API/c/WKDeprecatedFunctions.cpp:
(WKContextGetProcessSuppressionEnabled):
(WKContextSetProcessSuppressionEnabled):
    - depracated SPI.
* UIProcess/API/C/mac/WKContextPrivateMac.mm:
    - depracated SPI.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
    - removed m_processSuppressionEnabled.
* UIProcess/WebContext.h:
    - removed setProcessSuppressionEnabled, processSuppressionEnabled implementation,
      processSuppressionEnabledChanged, m_processSuppressionEnabled.
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitialize):
    - removed m_processSuppressionEnabled.
(WebKit::WebContext::processSuppressionEnabled):
    - check whether all pages in all processes are suppressible.
(WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):
    - removed call to omitProcessSuppression, m_processSuppressionEnabled -> processSuppressionEnabled().
(WebKit::WebContext::canEnableProcessSuppressionForWebProcess):
    - removed call to omitProcessSuppression, processSuppressionEnabled (we don't care if a page in a difference process is not suppresible).
(WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):
    - removed call to omitProcessSuppression, s_processSuppressionEnabledForAllContexts -> processSuppressionIsEnabledForAllContexts().

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (161290 => 161291)


--- trunk/Source/WebKit2/ChangeLog	2014-01-03 23:38:44 UTC (rev 161290)
+++ trunk/Source/WebKit2/ChangeLog	2014-01-04 00:03:49 UTC (rev 161291)
@@ -1,3 +1,34 @@
+2014-01-03  Gavin Barraclough  <[email protected]>
+
+        Remove SPI, user default for disabling process suppression
+        https://bugs.webkit.org/show_bug.cgi?id=126458
+
+        Reviewed by Sam Weinig.
+
+        * Shared/API/c/WKDeprecatedFunctions.cpp:
+        (WKContextGetProcessSuppressionEnabled):
+        (WKContextSetProcessSuppressionEnabled):
+            - depracated SPI.
+        * UIProcess/API/C/mac/WKContextPrivateMac.mm:
+            - depracated SPI.
+        * UIProcess/WebContext.cpp:
+        (WebKit::WebContext::WebContext):
+            - removed m_processSuppressionEnabled.
+        * UIProcess/WebContext.h:
+            - removed setProcessSuppressionEnabled, processSuppressionEnabled implementation,
+              processSuppressionEnabledChanged, m_processSuppressionEnabled.
+        * UIProcess/mac/WebContextMac.mm:
+        (WebKit::WebContext::platformInitialize):
+            - removed m_processSuppressionEnabled.
+        (WebKit::WebContext::processSuppressionEnabled):
+            - check whether all pages in all processes are suppressible.
+        (WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):
+            - removed call to omitProcessSuppression, m_processSuppressionEnabled -> processSuppressionEnabled().
+        (WebKit::WebContext::canEnableProcessSuppressionForWebProcess):
+            - removed call to omitProcessSuppression, processSuppressionEnabled (we don't care if a page in a difference process is not suppresible).
+        (WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):
+            - removed call to omitProcessSuppression, s_processSuppressionEnabledForAllContexts -> processSuppressionIsEnabledForAllContexts().
+
 2014-01-03  Thiago de Barros Lacerda  <[email protected]>
 
         [WK2][CoordinatedGraphics] Removing repeated protected keyword in WebView

Modified: trunk/Source/WebKit2/Shared/API/c/WKDeprecatedFunctions.cpp (161290 => 161291)


--- trunk/Source/WebKit2/Shared/API/c/WKDeprecatedFunctions.cpp	2014-01-03 23:38:44 UTC (rev 161290)
+++ trunk/Source/WebKit2/Shared/API/c/WKDeprecatedFunctions.cpp	2014-01-04 00:03:49 UTC (rev 161291)
@@ -27,6 +27,7 @@
 
 #include "MutableDictionary.h"
 #include "WKArray.h"
+#include "WKContextPrivateMac.h"
 #include "WKMutableDictionary.h"
 #include "WKSharedAPICast.h"
 
@@ -72,4 +73,13 @@
 {
     return nullptr;
 }
+
+bool WKContextGetProcessSuppressionEnabled(WKContextRef)
+{
+    return true;
+}
+
+void WKContextSetProcessSuppressionEnabled(WKContextRef, bool)
+{
+}
 #endif

Modified: trunk/Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.mm (161290 => 161291)


--- trunk/Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.mm	2014-01-03 23:38:44 UTC (rev 161290)
+++ trunk/Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.mm	2014-01-04 00:03:49 UTC (rev 161291)
@@ -44,16 +44,6 @@
 
 using namespace WebKit;
 
-bool WKContextGetProcessSuppressionEnabled(WKContextRef contextRef)
-{
-    return toImpl(contextRef)->processSuppressionEnabled();
-}
-
-void WKContextSetProcessSuppressionEnabled(WKContextRef contextRef, bool enabled)
-{
-    toImpl(contextRef)->setProcessSuppressionEnabled(enabled);
-}
-
 bool WKContextIsPlugInUpdateAvailable(WKContextRef contextRef, WKStringRef plugInBundleIdentifierRef)
 {
 #if PLATFORM(IOS)

Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (161290 => 161291)


--- trunk/Source/WebKit2/UIProcess/WebContext.cpp	2014-01-03 23:38:44 UTC (rev 161290)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp	2014-01-04 00:03:49 UTC (rev 161291)
@@ -146,9 +146,6 @@
 #if ENABLE(NETWORK_PROCESS)
     , m_usesNetworkProcess(false)
 #endif
-#if PLATFORM(MAC)
-    , m_processSuppressionEnabled(true)
-#endif
 #if USE(SOUP)
     , m_ignoreTLSErrors(true)
 #endif

Modified: trunk/Source/WebKit2/UIProcess/WebContext.h (161290 => 161291)


--- trunk/Source/WebKit2/UIProcess/WebContext.h	2014-01-03 23:38:44 UTC (rev 161290)
+++ trunk/Source/WebKit2/UIProcess/WebContext.h	2014-01-04 00:03:49 UTC (rev 161291)
@@ -283,8 +283,7 @@
 #endif
 
 #if PLATFORM(MAC)
-    void setProcessSuppressionEnabled(bool);
-    bool processSuppressionEnabled() const { return m_processSuppressionEnabled; }
+    bool processSuppressionEnabled() const;
     bool canEnableProcessSuppressionForNetworkProcess() const;
     bool canEnableProcessSuppressionForWebProcess(const WebProcessProxy*) const;
     static bool canEnableProcessSuppressionForGlobalChildProcesses();
@@ -396,7 +395,6 @@
     String platformDefaultCookieStorageDirectory() const;
 
 #if PLATFORM(MAC)
-    void processSuppressionEnabledChanged();
     void registerNotificationObservers();
     void unregisterNotificationObservers();
 #endif
@@ -505,10 +503,6 @@
     HashMap<uint64_t, RefPtr<DictionaryCallback>> m_dictionaryCallbacks;
     HashMap<uint64_t, RefPtr<StatisticsRequest>> m_statisticsRequests;
 
-#if PLATFORM(MAC)
-    bool m_processSuppressionEnabled;
-#endif
-
 #if USE(SOUP)
     bool m_ignoreTLSErrors;
 #endif

Modified: trunk/Source/WebKit2/UIProcess/mac/WebContextMac.mm (161290 => 161291)


--- trunk/Source/WebKit2/UIProcess/mac/WebContextMac.mm	2014-01-03 23:38:44 UTC (rev 161290)
+++ trunk/Source/WebKit2/UIProcess/mac/WebContextMac.mm	2014-01-04 00:03:49 UTC (rev 161291)
@@ -85,8 +85,6 @@
 NSString *SchemeForCustomProtocolRegisteredNotificationName = @"WebKitSchemeForCustomProtocolRegisteredNotification";
 NSString *SchemeForCustomProtocolUnregisteredNotificationName = @"WebKitSchemeForCustomProtocolUnregisteredNotification";
 
-static bool s_processSuppressionEnabledForAllContexts = true;
-
 static void registerUserDefaultsIfNeeded()
 {
     static bool didRegister;
@@ -128,17 +126,10 @@
     return result;
 }
 
-static bool omitProcessSuppression()
-{
-    static bool result = [[NSUserDefaults standardUserDefaults] boolForKey:@"WebKit2OmitProcessSuppression"];
-    return result;
-}
-
 void WebContext::platformInitialize()
 {
     registerUserDefaultsIfNeeded();
     registerNotificationObservers();
-    ASSERT(m_processSuppressionEnabled);
 }
 
 String WebContext::platformDefaultApplicationCacheDirectory() const
@@ -400,12 +391,13 @@
 
 #endif
 
-void WebContext::setProcessSuppressionEnabled(bool enabled)
+bool WebContext::processSuppressionEnabled() const
 {
-    if (m_processSuppressionEnabled == enabled)
-        return;
-    m_processSuppressionEnabled = enabled;
-    processSuppressionEnabledChanged();
+    for (const auto& process : m_processes) {
+        if (!process->allPagesAreProcessSuppressible())
+            return false;
+    }
+    return true;
 }
 
 void WebContext::updateProcessSuppressionStateOfChildProcesses()
@@ -424,31 +416,19 @@
 
 bool WebContext::canEnableProcessSuppressionForNetworkProcess() const
 {
-    return (WindowServerConnection::shared().applicationIsOccluded() || WindowServerConnection::shared().applicationWindowModificationsHaveStopped()) && m_processSuppressionEnabled && !omitProcessSuppression();
+    return (WindowServerConnection::shared().applicationIsOccluded() || WindowServerConnection::shared().applicationWindowModificationsHaveStopped()) && processSuppressionEnabled();
 }
 
 bool WebContext::canEnableProcessSuppressionForWebProcess(const WebKit::WebProcessProxy *webProcess) const
 {
-    return (WindowServerConnection::shared().applicationIsOccluded() || WindowServerConnection::shared().applicationWindowModificationsHaveStopped() || webProcess->allPagesAreProcessSuppressible())
-           && m_processSuppressionEnabled && !omitProcessSuppression();
+    return WindowServerConnection::shared().applicationIsOccluded() || WindowServerConnection::shared().applicationWindowModificationsHaveStopped() || webProcess->allPagesAreProcessSuppressible();
 }
 
 bool WebContext::canEnableProcessSuppressionForGlobalChildProcesses()
 {
-    return (WindowServerConnection::shared().applicationIsOccluded() || WindowServerConnection::shared().applicationWindowModificationsHaveStopped()) && s_processSuppressionEnabledForAllContexts && !omitProcessSuppression();
+    return (WindowServerConnection::shared().applicationIsOccluded() || WindowServerConnection::shared().applicationWindowModificationsHaveStopped()) && processSuppressionIsEnabledForAllContexts();
 }
 
-void WebContext::processSuppressionEnabledChanged()
-{
-    updateProcessSuppressionStateOfChildProcesses();
-
-    bool newProcessSuppressionEnabledForAllContexts = processSuppressionIsEnabledForAllContexts();
-    if (s_processSuppressionEnabledForAllContexts != newProcessSuppressionEnabledForAllContexts) {
-        s_processSuppressionEnabledForAllContexts = newProcessSuppressionEnabledForAllContexts;
-        updateProcessSuppressionStateOfGlobalChildProcesses();
-    }
-}
-
 void WebContext::registerNotificationObservers()
 {
 #if !PLATFORM(IOS)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to