[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-10851-g50815da
andersca at apple.com
andersca at apple.com
Wed Dec 22 18:49:48 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit b046b35dac076c186f599da875136a6b7f267636
Author: andersca at apple.com <andersca at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Dec 20 20:59:44 2010 +0000
2010-12-20 Anders Carlsson <andersca at apple.com>
Reviewed by Sam Weinig.
Flash plug-in does not work on YouTube video page when accelerated compositing is disabled
https://bugs.webkit.org/show_bug.cgi?id=51348
<rdar://problem/8787667>
* Platform/CoreIPC/HandleMessage.h:
(CoreIPC::callMemberFunction):
Add new overload.
* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::create):
(WebKit::PluginControllerProxy::PluginControllerProxy):
These now take an additional isAcceleratedCompositingEnabled parameter.
(WebKit::PluginControllerProxy::isAcceleratedCompositingEnabled):
Return m_isAcceleratedCompositingEnabled.
* PluginProcess/PluginControllerProxy.h:
* PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::createPlugin):
This now takes an additional isAcceleratedCompositingEnabled parameter.
* PluginProcess/WebProcessConnection.messages.in:
Add isAcceleratedCompositingEnabled parameter to the CreatePlugin message.
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::initialize):
Pass isAcceleratedCompositingEnabled when sending the CreatePlugin message.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@74359 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index 7bd6ccc..2f14b68 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,5 +1,37 @@
2010-12-20 Anders Carlsson <andersca at apple.com>
+ Reviewed by Sam Weinig.
+
+ Flash plug-in does not work on YouTube video page when accelerated compositing is disabled
+ https://bugs.webkit.org/show_bug.cgi?id=51348
+ <rdar://problem/8787667>
+
+ * Platform/CoreIPC/HandleMessage.h:
+ (CoreIPC::callMemberFunction):
+ Add new overload.
+
+ * PluginProcess/PluginControllerProxy.cpp:
+ (WebKit::PluginControllerProxy::create):
+ (WebKit::PluginControllerProxy::PluginControllerProxy):
+ These now take an additional isAcceleratedCompositingEnabled parameter.
+
+ (WebKit::PluginControllerProxy::isAcceleratedCompositingEnabled):
+ Return m_isAcceleratedCompositingEnabled.
+
+ * PluginProcess/PluginControllerProxy.h:
+ * PluginProcess/WebProcessConnection.cpp:
+ (WebKit::WebProcessConnection::createPlugin):
+ This now takes an additional isAcceleratedCompositingEnabled parameter.
+
+ * PluginProcess/WebProcessConnection.messages.in:
+ Add isAcceleratedCompositingEnabled parameter to the CreatePlugin message.
+
+ * WebProcess/Plugins/PluginProxy.cpp:
+ (WebKit::PluginProxy::initialize):
+ Pass isAcceleratedCompositingEnabled when sending the CreatePlugin message.
+
+2010-12-20 Anders Carlsson <andersca at apple.com>
+
Unreviewed, rolling out r74345.
http://trac.webkit.org/changeset/74345
https://bugs.webkit.org/show_bug.cgi?id=51115
diff --git a/WebKit2/Platform/CoreIPC/HandleMessage.h b/WebKit2/Platform/CoreIPC/HandleMessage.h
index 57d30b7..1ed1a1b 100644
--- a/WebKit2/Platform/CoreIPC/HandleMessage.h
+++ b/WebKit2/Platform/CoreIPC/HandleMessage.h
@@ -151,6 +151,13 @@ void callMemberFunction(const Arguments4<P1, P2, P3, P4>& args, Arguments2<R1, R
(object->*function)(args.argument1, args.argument2, args.argument3, args.argument4, replyArgs.argument1, replyArgs.argument2);
}
+template<typename C, typename MF, typename P1, typename P2, typename P3, typename P4, typename P5, typename R1, typename R2>
+void callMemberFunction(const Arguments5<P1, P2, P3, P4, P5>& args, Arguments2<R1, R2>& replyArgs, C* object, MF function)
+{
+ (object->*function)(args.argument1, args.argument2, args.argument3, args.argument4, args.argument5, replyArgs.argument1, replyArgs.argument2);
+}
+
+
template<typename C, typename MF, typename P1, typename P2, typename P3, typename P4, typename R1, typename R2, typename R3>
void callMemberFunction(const Arguments4<P1, P2, P3, P4>& args, Arguments3<R1, R2, R3>& replyArgs, C* object, MF function)
{
diff --git a/WebKit2/PluginProcess/PluginControllerProxy.cpp b/WebKit2/PluginProcess/PluginControllerProxy.cpp
index 75a2d88..881d5d2 100644
--- a/WebKit2/PluginProcess/PluginControllerProxy.cpp
+++ b/WebKit2/PluginProcess/PluginControllerProxy.cpp
@@ -45,16 +45,17 @@ using namespace WebCore;
namespace WebKit {
-PassOwnPtr<PluginControllerProxy> PluginControllerProxy::create(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled)
+PassOwnPtr<PluginControllerProxy> PluginControllerProxy::create(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled, bool isAcceleratedCompositingEnabled)
{
- return adoptPtr(new PluginControllerProxy(connection, pluginInstanceID, userAgent, isPrivateBrowsingEnabled));
+ return adoptPtr(new PluginControllerProxy(connection, pluginInstanceID, userAgent, isPrivateBrowsingEnabled, isAcceleratedCompositingEnabled));
}
-PluginControllerProxy::PluginControllerProxy(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled)
+PluginControllerProxy::PluginControllerProxy(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled, bool isAcceleratedCompositingEnabled)
: m_connection(connection)
, m_pluginInstanceID(pluginInstanceID)
, m_userAgent(userAgent)
, m_isPrivateBrowsingEnabled(isPrivateBrowsingEnabled)
+ , m_isAcceleratedCompositingEnabled(isAcceleratedCompositingEnabled)
, m_paintTimer(RunLoop::main(), this, &PluginControllerProxy::paint)
, m_waitingForDidUpdate(false)
, m_pluginCanceledManualStreamLoad(false)
@@ -229,7 +230,7 @@ void PluginControllerProxy::setStatusbarText(const String& statusbarText)
bool PluginControllerProxy::isAcceleratedCompositingEnabled()
{
- return PluginProcess::shared().compositingRenderServerPort();
+ return m_isAcceleratedCompositingEnabled;
}
void PluginControllerProxy::pluginProcessCrashed()
diff --git a/WebKit2/PluginProcess/PluginControllerProxy.h b/WebKit2/PluginProcess/PluginControllerProxy.h
index 1e157b5..ebf4567 100644
--- a/WebKit2/PluginProcess/PluginControllerProxy.h
+++ b/WebKit2/PluginProcess/PluginControllerProxy.h
@@ -54,7 +54,7 @@ class PluginControllerProxy : PluginController {
WTF_MAKE_NONCOPYABLE(PluginControllerProxy);
public:
- static PassOwnPtr<PluginControllerProxy> create(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled);
+ static PassOwnPtr<PluginControllerProxy> create(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled, bool isAcceleratedCompositingEnabled);
~PluginControllerProxy();
uint64_t pluginInstanceID() const { return m_pluginInstanceID; }
@@ -70,7 +70,7 @@ public:
#endif
private:
- PluginControllerProxy(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled);
+ PluginControllerProxy(WebProcessConnection* connection, uint64_t pluginInstanceID, const String& userAgent, bool isPrivateBrowsingEnabled, bool isAcceleratedCompositingEnabled);
void startPaintTimer();
void paint();
@@ -138,6 +138,7 @@ private:
String m_userAgent;
bool m_isPrivateBrowsingEnabled;
+ bool m_isAcceleratedCompositingEnabled;
RefPtr<Plugin> m_plugin;
diff --git a/WebKit2/PluginProcess/WebProcessConnection.cpp b/WebKit2/PluginProcess/WebProcessConnection.cpp
index 005c72c..ae5d7ca 100644
--- a/WebKit2/PluginProcess/WebProcessConnection.cpp
+++ b/WebKit2/PluginProcess/WebProcessConnection.cpp
@@ -145,9 +145,9 @@ void WebProcessConnection::didReceiveInvalidMessage(CoreIPC::Connection*, CoreIP
// FIXME: Implement.
}
-void WebProcessConnection::createPlugin(uint64_t pluginInstanceID, const Plugin::Parameters& parameters, const String& userAgent, bool isPrivateBrowsingEnabled, bool& result, uint32_t& remoteLayerClientID)
+void WebProcessConnection::createPlugin(uint64_t pluginInstanceID, const Plugin::Parameters& parameters, const String& userAgent, bool isPrivateBrowsingEnabled, bool isAcceleratedCompositingEnabled, bool& result, uint32_t& remoteLayerClientID)
{
- OwnPtr<PluginControllerProxy> pluginControllerProxy = PluginControllerProxy::create(this, pluginInstanceID, userAgent, isPrivateBrowsingEnabled);
+ OwnPtr<PluginControllerProxy> pluginControllerProxy = PluginControllerProxy::create(this, pluginInstanceID, userAgent, isPrivateBrowsingEnabled, isAcceleratedCompositingEnabled);
PluginControllerProxy* pluginControllerProxyPtr = pluginControllerProxy.get();
diff --git a/WebKit2/PluginProcess/WebProcessConnection.h b/WebKit2/PluginProcess/WebProcessConnection.h
index e04b842..d965e49 100644
--- a/WebKit2/PluginProcess/WebProcessConnection.h
+++ b/WebKit2/PluginProcess/WebProcessConnection.h
@@ -64,7 +64,7 @@ private:
// Message handlers.
CoreIPC::SyncReplyMode didReceiveSyncWebProcessConnectionMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*, CoreIPC::ArgumentEncoder*);
- void createPlugin(uint64_t pluginInstanceID, const Plugin::Parameters&, const String& userAgent, bool isPrivateBrowsingEnabled, bool& result, uint32_t& remoteLayerClientID);
+ void createPlugin(uint64_t pluginInstanceID, const Plugin::Parameters&, const String& userAgent, bool isPrivateBrowsingEnabled, bool isAcceleratedCompositingEnabled, bool& result, uint32_t& remoteLayerClientID);
void destroyPlugin(uint64_t pluginInstanceID);
RefPtr<CoreIPC::Connection> m_connection;
diff --git a/WebKit2/PluginProcess/WebProcessConnection.messages.in b/WebKit2/PluginProcess/WebProcessConnection.messages.in
index c311400..1240074 100644
--- a/WebKit2/PluginProcess/WebProcessConnection.messages.in
+++ b/WebKit2/PluginProcess/WebProcessConnection.messages.in
@@ -24,7 +24,7 @@
messages -> WebProcessConnection {
# Creates a plug-in instance with the given instance ID.
- CreatePlugin(uint64_t pluginInstanceID, WebKit::Plugin::Parameters parameters, WTF::String userAgent, bool isPrivateBrowsingEnabled) -> (bool result, uint32_t remoteLayerClientID)
+ CreatePlugin(uint64_t pluginInstanceID, WebKit::Plugin::Parameters parameters, WTF::String userAgent, bool isPrivateBrowsingEnabled, bool isAcceleratedCompositingEnabled) -> (bool result, uint32_t remoteLayerClientID)
# Destroys the plug-in instance with the given instance ID.
DestroyPlugin(uint64_t pluginInstanceID) -> ()
diff --git a/WebKit2/WebProcess/Plugins/PluginProxy.cpp b/WebKit2/WebProcess/Plugins/PluginProxy.cpp
index eea38b0..b12b43e 100644
--- a/WebKit2/WebProcess/Plugins/PluginProxy.cpp
+++ b/WebKit2/WebProcess/Plugins/PluginProxy.cpp
@@ -98,7 +98,7 @@ bool PluginProxy::initialize(PluginController* pluginController, const Parameter
bool result = false;
uint32_t remoteLayerClientID = 0;
- if (!m_connection->connection()->sendSync(Messages::WebProcessConnection::CreatePlugin(m_pluginInstanceID, parameters, pluginController->userAgent(), pluginController->isPrivateBrowsingEnabled()), Messages::WebProcessConnection::CreatePlugin::Reply(result, remoteLayerClientID), 0) || !result) {
+ if (!m_connection->connection()->sendSync(Messages::WebProcessConnection::CreatePlugin(m_pluginInstanceID, parameters, pluginController->userAgent(), pluginController->isPrivateBrowsingEnabled(), pluginController->isAcceleratedCompositingEnabled()), Messages::WebProcessConnection::CreatePlugin::Reply(result, remoteLayerClientID), 0) || !result) {
m_connection->removePluginProxy(this);
return false;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list