Diff
Modified: trunk/Source/WebKit2/ChangeLog (137789 => 137790)
--- trunk/Source/WebKit2/ChangeLog 2012-12-15 00:28:29 UTC (rev 137789)
+++ trunk/Source/WebKit2/ChangeLog 2012-12-15 00:48:13 UTC (rev 137790)
@@ -1,3 +1,22 @@
+2012-12-14 Anders Carlsson <[email protected]>
+
+ DownloadProxy objects should be message receivers
+ https://bugs.webkit.org/show_bug.cgi?id=105068
+
+ Reviewed by Andreas Kling.
+
+ This simplifies the WebContext message dispatch code somewhat.
+
+ * UIProcess/Downloads/DownloadProxy.cpp:
+ (WebKit::DownloadProxy::didReceiveMessage):
+ (WebKit::DownloadProxy::didReceiveSyncMessage):
+ * UIProcess/Downloads/DownloadProxy.h:
+ (DownloadProxy):
+ * UIProcess/WebContext.cpp:
+ (WebKit::WebContext::createDownloadProxy):
+ (WebKit::WebContext::didReceiveMessage):
+ (WebKit::WebContext::didReceiveSyncMessage):
+
2012-12-14 Sheriff Bot <[email protected]>
Unreviewed, rolling out r137767.
Modified: trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.cpp (137789 => 137790)
--- trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.cpp 2012-12-15 00:28:29 UTC (rev 137789)
+++ trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.cpp 2012-12-15 00:48:13 UTC (rev 137790)
@@ -84,6 +84,16 @@
m_webContext->downloadClient().processDidCrash(m_webContext, this);
}
+void DownloadProxy::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::MessageDecoder& decoder)
+{
+ didReceiveDownloadProxyMessage(connection, messageID, decoder);
+}
+
+void DownloadProxy::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::MessageDecoder& decoder, OwnPtr<CoreIPC::MessageEncoder>& replyEncoder)
+{
+ didReceiveSyncDownloadProxyMessage(connection, messageID, decoder, replyEncoder);
+}
+
void DownloadProxy::didStart(const ResourceRequest& request)
{
m_request = request;
Modified: trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.h (137789 => 137790)
--- trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.h 2012-12-15 00:28:29 UTC (rev 137789)
+++ trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.h 2012-12-15 00:48:13 UTC (rev 137790)
@@ -45,7 +45,7 @@
class WebData;
class WebPageProxy;
-class DownloadProxy : public APIObject {
+class DownloadProxy : public APIObject, public CoreIPC::MessageReceiver {
public:
static const Type APIType = TypeDownload;
@@ -73,6 +73,10 @@
virtual Type type() const { return APIType; }
+ // CoreIPC::MessageReceiver
+ virtual void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::MessageDecoder&) OVERRIDE;
+ virtual void didReceiveSyncMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::MessageDecoder&, OwnPtr<CoreIPC::MessageEncoder>&) OVERRIDE;
+
// Message handlers.
void didStart(const WebCore::ResourceRequest&);
void didReceiveAuthenticationChallenge(const WebCore::AuthenticationChallenge&, uint64_t challengeID);
Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (137789 => 137790)
--- trunk/Source/WebKit2/UIProcess/WebContext.cpp 2012-12-15 00:28:29 UTC (rev 137789)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp 2012-12-15 00:48:13 UTC (rev 137790)
@@ -838,7 +838,7 @@
{
DownloadProxy* downloadProxy = DownloadProxyMap::shared().createDownloadProxy(this);
m_downloads.set(downloadProxy->downloadID(), downloadProxy);
- addMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID(), this);
+ addMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID(), downloadProxy);
return downloadProxy;
}
@@ -895,13 +895,6 @@
return;
}
- if (messageID.is<CoreIPC::MessageClassDownloadProxy>()) {
- if (DownloadProxy* downloadProxy = m_downloads.get(decoder.destinationID()).get())
- downloadProxy->didReceiveDownloadProxyMessage(connection, messageID, decoder);
-
- return;
- }
-
switch (messageID.get<WebContextLegacyMessage::Kind>()) {
case WebContextLegacyMessage::PostMessage: {
String messageName;
@@ -929,12 +922,6 @@
return;
}
- if (messageID.is<CoreIPC::MessageClassDownloadProxy>()) {
- if (DownloadProxy* downloadProxy = m_downloads.get(decoder.destinationID()).get())
- downloadProxy->didReceiveSyncDownloadProxyMessage(connection, messageID, decoder, replyEncoder);
- return;
- }
-
switch (messageID.get<WebContextLegacyMessage::Kind>()) {
case WebContextLegacyMessage::PostSynchronousMessage: {
// FIXME: We should probably encode something in the case that the arguments do not decode correctly.