diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2012-10-16 14:56:46 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-10-16 14:57:30 +0200 |
commit | b297e0fa5c217c9467033b7c8b46891a52870120 (patch) | |
tree | 43fc14689295e9e64f2719d05aad94e3049f6cd7 /Source/WebKit2/UIProcess/WebProcessProxy.cpp | |
parent | 69d517dbfa69903d8593cc1737f0474b21e3251e (diff) | |
download | qtwebkit-b297e0fa5c217c9467033b7c8b46891a52870120.tar.gz |
Revert "Imported WebKit commit 0dc6cd75e1d4836eaffbb520be96fac4847cc9d2 (http://svn.webkit.org/repository/webkit/trunk@131300)"
This reverts commit 5466563f4b5b6b86523e3f89bb7f77e5b5270c78.
Caused OOM issues on some CI machines :(
Diffstat (limited to 'Source/WebKit2/UIProcess/WebProcessProxy.cpp')
-rw-r--r-- | Source/WebKit2/UIProcess/WebProcessProxy.cpp | 98 |
1 files changed, 57 insertions, 41 deletions
diff --git a/Source/WebKit2/UIProcess/WebProcessProxy.cpp b/Source/WebKit2/UIProcess/WebProcessProxy.cpp index 4114a2851..579783eed 100644 --- a/Source/WebKit2/UIProcess/WebProcessProxy.cpp +++ b/Source/WebKit2/UIProcess/WebProcessProxy.cpp @@ -46,10 +46,7 @@ #include <wtf/text/WTFString.h> #if PLATFORM(MAC) -#include "SimplePDFPlugin.h" -#if ENABLE(PDFKIT_PLUGIN) -#include "PDFPlugin.h" -#endif +#include "BuiltInPDFView.h" #endif using namespace WebCore; @@ -105,16 +102,6 @@ WebProcessProxy::~WebProcessProxy() } } -WebProcessProxy* WebProcessProxy::fromConnection(CoreIPC::Connection* connection) -{ - ASSERT(connection); - WebConnectionToWebProcess* webConnection = static_cast<WebConnectionToWebProcess*>(connection->client()); - - WebProcessProxy* webProcessProxy = webConnection->webProcessProxy(); - ASSERT(webProcessProxy->connection() == connection); - return webProcessProxy; -} - void WebProcessProxy::connect() { ASSERT(!m_processLauncher); @@ -199,13 +186,6 @@ void WebProcessProxy::removeWebPage(uint64_t pageID) m_pageMap.remove(pageID); } -Vector<WebPageProxy*> WebProcessProxy::pages() const -{ - Vector<WebPageProxy*> result; - copyValuesToVector(m_pageMap, result); - return result; -} - #if ENABLE(WEB_INTENTS) void WebProcessProxy::removeMessagePortChannel(uint64_t channelID) { @@ -273,9 +253,9 @@ bool WebProcessProxy::checkURLReceivedFromWebProcess(const KURL& url) // Items in back/forward list have been already checked. // One case where we don't have sandbox extensions for file URLs in b/f list is if the list has been reinstated after a crash or a browser restart. for (WebBackForwardListItemMap::iterator iter = m_backForwardListItemMap.begin(), end = m_backForwardListItemMap.end(); iter != end; ++iter) { - if (KURL(KURL(), iter->value->url()).fileSystemPath() == path) + if (KURL(KURL(), iter->second->url()).fileSystemPath() == path) return true; - if (KURL(KURL(), iter->value->originalURL()).fileSystemPath() == path) + if (KURL(KURL(), iter->second->originalURL()).fileSystemPath() == path) return true; } @@ -298,15 +278,15 @@ void WebProcessProxy::addBackForwardItem(uint64_t itemID, const String& original WebBackForwardListItemMap::AddResult result = m_backForwardListItemMap.add(itemID, 0); if (result.isNewEntry) { - result.iterator->value = WebBackForwardListItem::create(originalURL, url, title, backForwardData.data(), backForwardData.size(), itemID); + result.iterator->second = WebBackForwardListItem::create(originalURL, url, title, backForwardData.data(), backForwardData.size(), itemID); return; } // Update existing item. - result.iterator->value->setOriginalURL(originalURL); - result.iterator->value->setURL(url); - result.iterator->value->setTitle(title); - result.iterator->value->setBackForwardData(backForwardData.data(), backForwardData.size()); + result.iterator->second->setOriginalURL(originalURL); + result.iterator->second->setURL(url); + result.iterator->second->setTitle(title); + result.iterator->second->setBackForwardData(backForwardData.data(), backForwardData.size()); } void WebProcessProxy::sendDidGetPlugins(uint64_t requestID, PassOwnPtr<Vector<PluginInfo> > pluginInfos) @@ -318,12 +298,8 @@ void WebProcessProxy::sendDidGetPlugins(uint64_t requestID, PassOwnPtr<Vector<Pl #if PLATFORM(MAC) // Add built-in PDF last, so that it's not used when a real plug-in is installed. // NOTE: This has to be done on the main thread as it calls localizedString(). - if (!m_context->omitPDFSupport()) { -#if ENABLE(PDFKIT_PLUGIN) - plugins->append(PDFPlugin::pluginInfo()); -#endif - plugins->append(SimplePDFPlugin::pluginInfo()); - } + if (!m_context->omitPDFSupport()) + plugins->append(BuiltInPDFView::pluginInfo()); #endif send(Messages::WebProcess::DidGetPlugins(requestID, *plugins), 0); @@ -376,6 +352,11 @@ void WebProcessProxy::getPluginProcessConnection(const String& pluginPath, PassR PluginProcessManager::shared().getPluginProcessConnection(m_context->pluginInfoStore(), pluginPath, reply); } +void WebProcessProxy::pluginSyncMessageSendTimedOut(const String& pluginPath) +{ + PluginProcessManager::shared().pluginSyncMessageSendTimedOut(pluginPath); +} + #else void WebProcessProxy::didGetSitesWithPluginData(const Vector<String>& sites, uint64_t callbackID) @@ -392,14 +373,39 @@ void WebProcessProxy::didClearPluginSiteData(uint64_t callbackID) void WebProcessProxy::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments) { - if (m_context->dispatchMessage(connection, messageID, arguments)) - return; - if (messageID.is<CoreIPC::MessageClassWebProcessProxy>()) { didReceiveWebProcessProxyMessage(connection, messageID, arguments); return; } + if (messageID.is<CoreIPC::MessageClassWebContext>() + || messageID.is<CoreIPC::MessageClassWebContextLegacy>() + || messageID.is<CoreIPC::MessageClassDownloadProxy>() + || messageID.is<CoreIPC::MessageClassWebApplicationCacheManagerProxy>() +#if ENABLE(BATTERY_STATUS) + || messageID.is<CoreIPC::MessageClassWebBatteryManagerProxy>() +#endif + || messageID.is<CoreIPC::MessageClassWebCookieManagerProxy>() + || messageID.is<CoreIPC::MessageClassWebDatabaseManagerProxy>() + || messageID.is<CoreIPC::MessageClassWebGeolocationManagerProxy>() + || messageID.is<CoreIPC::MessageClassWebIconDatabase>() + || messageID.is<CoreIPC::MessageClassWebKeyValueStorageManagerProxy>() + || messageID.is<CoreIPC::MessageClassWebMediaCacheManagerProxy>() +#if ENABLE(NETWORK_INFO) + || messageID.is<CoreIPC::MessageClassWebNetworkInfoManagerProxy>() +#endif + || messageID.is<CoreIPC::MessageClassWebNotificationManagerProxy>() +#if USE(SOUP) + || messageID.is<CoreIPC::MessageClassWebSoupRequestManagerProxy>() +#endif +#if ENABLE(VIBRATION) + || messageID.is<CoreIPC::MessageClassWebVibrationProxy>() +#endif + || messageID.is<CoreIPC::MessageClassWebResourceCacheManagerProxy>()) { + m_context->didReceiveMessage(this, messageID, arguments); + return; + } + uint64_t pageID = arguments->destinationID(); if (!pageID) return; @@ -413,14 +419,20 @@ void WebProcessProxy::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC void WebProcessProxy::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments, OwnPtr<CoreIPC::ArgumentEncoder>& reply) { - if (m_context->dispatchSyncMessage(connection, messageID, arguments, reply)) - return; - if (messageID.is<CoreIPC::MessageClassWebProcessProxy>()) { didReceiveSyncWebProcessProxyMessage(connection, messageID, arguments, reply); return; } + if (messageID.is<CoreIPC::MessageClassWebContext>() || messageID.is<CoreIPC::MessageClassWebContextLegacy>() +#if ENABLE(NETWORK_INFO) + || messageID.is<CoreIPC::MessageClassWebNetworkInfoManagerProxy>() +#endif + || messageID.is<CoreIPC::MessageClassDownloadProxy>() || messageID.is<CoreIPC::MessageClassWebIconDatabase>()) { + m_context->didReceiveSyncMessage(this, messageID, arguments, reply); + return; + } + uint64_t pageID = arguments->destinationID(); if (!pageID) return; @@ -461,6 +473,10 @@ void WebProcessProxy::didReceiveInvalidMessage(CoreIPC::Connection*, CoreIPC::Me terminate(); } +void WebProcessProxy::syncMessageSendTimedOut(CoreIPC::Connection*) +{ +} + void WebProcessProxy::didBecomeUnresponsive(ResponsivenessTimer*) { Vector<RefPtr<WebPageProxy> > pages; @@ -549,7 +565,7 @@ size_t WebProcessProxy::frameCountInPage(WebPageProxy* page) const { size_t result = 0; for (HashMap<uint64_t, RefPtr<WebFrameProxy> >::const_iterator iter = m_frameMap.begin(); iter != m_frameMap.end(); ++iter) { - if (iter->value->page() == page) + if (iter->second->page() == page) ++result; } return result; |