summaryrefslogtreecommitdiff
path: root/Source/WebKit2/WebProcess/WebProcess.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2012-05-18 14:03:11 +0200
committerSimon Hausmann <simon.hausmann@nokia.com>2012-05-18 14:03:11 +0200
commit8d473cf9743f1d30a16a27114e93bd5af5648d23 (patch)
treecdca40d0353886b3ca52f33a2d7b8f1c0011aafc /Source/WebKit2/WebProcess/WebProcess.cpp
parent1b914638db989aaa98631a1c1e02c7b2d44805d8 (diff)
downloadqtwebkit-8d473cf9743f1d30a16a27114e93bd5af5648d23.tar.gz
Imported WebKit commit 1350e72f7345ced9da2bd9980deeeb5a8d62fab4 (http://svn.webkit.org/repository/webkit/trunk@117578)
Weekly snapshot
Diffstat (limited to 'Source/WebKit2/WebProcess/WebProcess.cpp')
-rw-r--r--Source/WebKit2/WebProcess/WebProcess.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/Source/WebKit2/WebProcess/WebProcess.cpp b/Source/WebKit2/WebProcess/WebProcess.cpp
index 20d9260b7..15cb28e80 100644
--- a/Source/WebKit2/WebProcess/WebProcess.cpp
+++ b/Source/WebKit2/WebProcess/WebProcess.cpp
@@ -130,6 +130,7 @@ static const double shutdownTimeout = 60;
WebProcess::WebProcess()
: ChildProcess(shutdownTimeout)
, m_inDidClose(false)
+ , m_shouldTrackVisitedLinks(true)
, m_hasSetCacheModel(false)
, m_cacheModel(CacheModelDocumentViewer)
#if USE(ACCELERATED_COMPOSITING) && PLATFORM(MAC)
@@ -261,6 +262,7 @@ void WebProcess::initializeWebProcess(const WebProcessCreationParameters& parame
void WebProcess::setShouldTrackVisitedLinks(bool shouldTrackVisitedLinks)
{
+ m_shouldTrackVisitedLinks = shouldTrackVisitedLinks;
PageGroup::setShouldTrackVisitedLinks(shouldTrackVisitedLinks);
}
@@ -344,7 +346,7 @@ bool WebProcess::isLinkVisited(LinkHash linkHash) const
void WebProcess::addVisitedLink(WebCore::LinkHash linkHash)
{
- if (isLinkVisited(linkHash))
+ if (isLinkVisited(linkHash) || !m_shouldTrackVisitedLinks)
return;
connection()->send(Messages::WebContext::AddVisitedLinkHash(linkHash), 0);
}
@@ -810,6 +812,7 @@ void WebProcess::getSitesWithPluginData(const Vector<String>& pluginPaths, uint6
HashSet<String> sitesSet;
+#if ENABLE(NETSCAPE_PLUGIN_API)
for (size_t i = 0; i < pluginPaths.size(); ++i) {
RefPtr<NetscapePluginModule> netscapePluginModule = NetscapePluginModule::getOrCreate(pluginPaths[i]);
if (!netscapePluginModule)
@@ -819,6 +822,7 @@ void WebProcess::getSitesWithPluginData(const Vector<String>& pluginPaths, uint6
for (size_t i = 0; i < sites.size(); ++i)
sitesSet.add(sites[i]);
}
+#endif
Vector<String> sites;
copyToVector(sitesSet, sites);
@@ -830,6 +834,7 @@ void WebProcess::clearPluginSiteData(const Vector<String>& pluginPaths, const Ve
{
LocalTerminationDisabler terminationDisabler(*this);
+#if ENABLE(NETSCAPE_PLUGIN_API)
for (size_t i = 0; i < pluginPaths.size(); ++i) {
RefPtr<NetscapePluginModule> netscapePluginModule = NetscapePluginModule::getOrCreate(pluginPaths[i]);
if (!netscapePluginModule)
@@ -844,6 +849,7 @@ void WebProcess::clearPluginSiteData(const Vector<String>& pluginPaths, const Ve
for (size_t i = 0; i < sites.size(); ++i)
netscapePluginModule->clearSiteData(sites[i], flags, maxAgeInSeconds);
}
+#endif
connection()->send(Messages::WebContext::DidClearPluginSiteData(callbackID), 0);
}
@@ -962,6 +968,11 @@ void WebProcess::garbageCollectJavaScriptObjects()
gcController().garbageCollectNow();
}
+void WebProcess::setJavaScriptGarbageCollectorTimerEnabled(bool flag)
+{
+ gcController().setJavaScriptGarbageCollectorTimerEnabled(flag);
+}
+
#if ENABLE(PLUGIN_PROCESS)
void WebProcess::pluginProcessCrashed(CoreIPC::Connection*, const String& pluginPath)
{
@@ -1031,4 +1042,10 @@ void WebProcess::setTextCheckerState(const TextCheckerState& textCheckerState)
}
}
+void WebProcess::didGetPlugins(CoreIPC::Connection*, uint64_t requestID, const Vector<WebCore::PluginInfo>& plugins)
+{
+ // Pass this to WebPlatformStrategies.cpp.
+ handleDidGetPlugins(requestID, plugins);
+}
+
} // namespace WebKit