Diff
Modified: trunk/Source/WebKit/ChangeLog (241777 => 241778)
--- trunk/Source/WebKit/ChangeLog 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/ChangeLog 2019-02-19 22:51:29 UTC (rev 241778)
@@ -1,5 +1,37 @@
2019-02-19 Alex Christensen <[email protected]>
+ Reduce use of LegacySync IPC messages
+ https://bugs.webkit.org/show_bug.cgi?id=194783
+
+ Reviewed by Geoffrey Garen.
+
+ * UIProcess/WebProcessPool.cpp:
+ (WebKit::WebProcessPool::handleSynchronousMessage):
+ * UIProcess/WebProcessPool.h:
+ * UIProcess/WebProcessPool.messages.in:
+ * UIProcess/WebProcessProxy.cpp:
+ (WebKit::WebProcessProxy::getPlugins):
+ (WebKit::WebProcessProxy::shouldTerminate):
+ * UIProcess/WebProcessProxy.h:
+ * UIProcess/WebProcessProxy.messages.in:
+ * WebProcess/Plugins/PluginProcessConnection.cpp:
+ (WebKit::PluginProcessConnection::setException):
+ * WebProcess/Plugins/PluginProcessConnection.h:
+ * WebProcess/Plugins/PluginProcessConnection.messages.in:
+ * WebProcess/Plugins/PluginProxy.cpp:
+ (WebKit::PluginProxy::didCreatePlugin):
+ (WebKit::PluginProxy::didFailToCreatePlugin):
+ (WebKit::PluginProxy::proxiesForURL):
+ (WebKit::PluginProxy::cookiesForURL):
+ (WebKit::PluginProxy::getAuthenticationInfo):
+ (WebKit::PluginProxy::getPluginElementNPObject):
+ (WebKit::PluginProxy::evaluate):
+ (WebKit::PluginProxy::createPluginContainer):
+ * WebProcess/Plugins/PluginProxy.h:
+ * WebProcess/Plugins/PluginProxy.messages.in:
+
+2019-02-19 Alex Christensen <[email protected]>
+
Remove assertion introduced in r229683
https://bugs.webkit.org/show_bug.cgi?id=194825
<rdar://problem/47628258>
Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (241777 => 241778)
--- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2019-02-19 22:51:29 UTC (rev 241778)
@@ -1788,15 +1788,15 @@
m_injectedBundleClient->didReceiveMessageFromInjectedBundle(*this, messageName, webProcessProxy->transformHandlesToObjects(messageBody.object()).get());
}
-void WebProcessPool::handleSynchronousMessage(IPC::Connection& connection, const String& messageName, const UserData& messageBody, UserData& returnUserData)
+void WebProcessPool::handleSynchronousMessage(IPC::Connection& connection, const String& messageName, const UserData& messageBody, CompletionHandler<void(UserData&&)>&& completionHandler)
{
auto* webProcessProxy = webProcessProxyFromConnection(connection, m_processes);
if (!webProcessProxy)
- return;
+ return completionHandler({ });
RefPtr<API::Object> returnData;
m_injectedBundleClient->didReceiveSynchronousMessageFromInjectedBundle(*this, messageName, webProcessProxy->transformHandlesToObjects(messageBody.object()).get(), returnData);
- returnUserData = UserData(webProcessProxy->transformObjectsToHandles(returnData.get()));
+ completionHandler(UserData(webProcessProxy->transformObjectsToHandles(returnData.get())));
}
void WebProcessPool::didGetStatistics(const StatisticsData& statisticsData, uint64_t requestID)
Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.h (241777 => 241778)
--- trunk/Source/WebKit/UIProcess/WebProcessPool.h 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.h 2019-02-19 22:51:29 UTC (rev 241778)
@@ -512,7 +512,7 @@
void platformInitializeNetworkProcess(NetworkProcessCreationParameters&);
void handleMessage(IPC::Connection&, const String& messageName, const UserData& messageBody);
- void handleSynchronousMessage(IPC::Connection&, const String& messageName, const UserData& messageBody, UserData& returnUserData);
+ void handleSynchronousMessage(IPC::Connection&, const String& messageName, const UserData& messageBody, CompletionHandler<void(UserData&&)>&&);
void didGetStatistics(const StatisticsData&, uint64_t callbackID);
Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.messages.in (241777 => 241778)
--- trunk/Source/WebKit/UIProcess/WebProcessPool.messages.in 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.messages.in 2019-02-19 22:51:29 UTC (rev 241778)
@@ -22,7 +22,7 @@
messages -> WebProcessPool {
HandleMessage(String messageName, WebKit::UserData messageBody) WantsConnection
- HandleSynchronousMessage(String messageName, WebKit::UserData messageBody) -> (WebKit::UserData returnData) LegacySync WantsConnection
+ HandleSynchronousMessage(String messageName, WebKit::UserData messageBody) -> (WebKit::UserData returnData) Delayed WantsConnection
DidGetStatistics(struct WebKit::StatisticsData statisticsData, uint64_t callbackID)
Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp (241777 => 241778)
--- trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp 2019-02-19 22:51:29 UTC (rev 241778)
@@ -532,17 +532,19 @@
}
#if ENABLE(NETSCAPE_PLUGIN_API)
-void WebProcessProxy::getPlugins(bool refresh, Vector<PluginInfo>& plugins, Vector<PluginInfo>& applicationPlugins, Optional<Vector<WebCore::SupportedPluginIdentifier>>& supportedPluginIdentifiers)
+void WebProcessProxy::getPlugins(bool refresh, CompletionHandler<void(Vector<PluginInfo>&& plugins, Vector<PluginInfo>&& applicationPlugins, Optional<Vector<WebCore::SupportedPluginIdentifier>>&& supportedPluginIdentifiers)>&& completionHandler)
{
if (refresh)
m_processPool->pluginInfoStore().refresh();
- supportedPluginIdentifiers = m_processPool->pluginInfoStore().supportedPluginIdentifiers();
+ auto supportedPluginIdentifiers = m_processPool->pluginInfoStore().supportedPluginIdentifiers();
+ Vector<PluginInfo> plugins;
Vector<PluginModuleInfo> pluginModules = m_processPool->pluginInfoStore().plugins();
for (size_t i = 0; i < pluginModules.size(); ++i)
plugins.append(pluginModules[i].info);
+ Vector<PluginInfo> applicationPlugins;
#if ENABLE(PDFKIT_PLUGIN)
// Add built-in PDF last, so that it's not used when a real plug-in is installed.
if (!m_processPool->omitPDFSupport()) {
@@ -549,9 +551,8 @@
plugins.append(PDFPlugin::pluginInfo());
applicationPlugins.append(PDFPlugin::pluginInfo());
}
-#else
- UNUSED_PARAM(applicationPlugins);
#endif
+ completionHandler(WTFMove(plugins), WTFMove(applicationPlugins), WTFMove(supportedPluginIdentifiers));
}
#endif // ENABLE(NETSCAPE_PLUGIN_API)
@@ -855,13 +856,14 @@
return true;
}
-void WebProcessProxy::shouldTerminate(bool& shouldTerminate)
+void WebProcessProxy::shouldTerminate(CompletionHandler<void(bool)>&& completionHandler)
{
- shouldTerminate = canTerminateAuxiliaryProcess();
+ bool shouldTerminate = canTerminateAuxiliaryProcess();
if (shouldTerminate) {
// We know that the web process is going to terminate so start shutting it down in the UI process.
shutDown();
}
+ completionHandler(shouldTerminate);
}
void WebProcessProxy::updateTextCheckerState()
Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.h (241777 => 241778)
--- trunk/Source/WebKit/UIProcess/WebProcessProxy.h 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.h 2019-02-19 22:51:29 UTC (rev 241778)
@@ -282,7 +282,7 @@
void didDestroyUserGestureToken(uint64_t);
bool canBeAddedToWebProcessCache() const;
- void shouldTerminate(bool& shouldTerminate);
+ void shouldTerminate(CompletionHandler<void(bool)>&&);
void createNewMessagePortChannel(const WebCore::MessagePortIdentifier& port1, const WebCore::MessagePortIdentifier& port2);
void entangleLocalPortInThisProcessToRemote(const WebCore::MessagePortIdentifier& local, const WebCore::MessagePortIdentifier& remote);
@@ -299,7 +299,7 @@
// Plugins
#if ENABLE(NETSCAPE_PLUGIN_API)
- void getPlugins(bool refresh, Vector<WebCore::PluginInfo>& plugins, Vector<WebCore::PluginInfo>& applicationPlugins, Optional<Vector<WebCore::SupportedPluginIdentifier>>&);
+ void getPlugins(bool refresh, CompletionHandler<void(Vector<WebCore::PluginInfo>&& plugins, Vector<WebCore::PluginInfo>&& applicationPlugins, Optional<Vector<WebCore::SupportedPluginIdentifier>>&&)>&&);
#endif // ENABLE(NETSCAPE_PLUGIN_API)
#if ENABLE(NETSCAPE_PLUGIN_API)
void getPluginProcessConnection(uint64_t pluginProcessToken, Messages::WebProcessProxy::GetPluginProcessConnection::DelayedReply&&);
Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.messages.in (241777 => 241778)
--- trunk/Source/WebKit/UIProcess/WebProcessProxy.messages.in 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.messages.in 2019-02-19 22:51:29 UTC (rev 241778)
@@ -26,7 +26,7 @@
DidDestroyUserGestureToken(uint64_t userGestureTokenID)
- ShouldTerminate() -> (bool shouldTerminate) LegacySync
+ ShouldTerminate() -> (bool shouldTerminate) Delayed
EnableSuddenTermination()
DisableSuddenTermination()
@@ -33,7 +33,7 @@
# Plugin messages.
#if ENABLE(NETSCAPE_PLUGIN_API)
- GetPlugins(bool refresh) -> (Vector<WebCore::PluginInfo> plugins, Vector<WebCore::PluginInfo> applicationPlugins, struct Optional<Vector<WebCore::SupportedPluginIdentifier>> supportedPluginIdentifiers) LegacySync
+ GetPlugins(bool refresh) -> (Vector<WebCore::PluginInfo> plugins, Vector<WebCore::PluginInfo> applicationPlugins, struct Optional<Vector<WebCore::SupportedPluginIdentifier>> supportedPluginIdentifiers) Delayed
GetPluginProcessConnection(uint64_t pluginProcessToken) -> (IPC::Attachment connectionHandle, bool supportsAsynchronousInitialization) Delayed
#endif
GetNetworkProcessConnection() -> (IPC::Attachment connectionHandle) Delayed
Modified: trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.cpp (241777 => 241778)
--- trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.cpp 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.cpp 2019-02-19 22:51:29 UTC (rev 241778)
@@ -132,9 +132,10 @@
{
}
-void PluginProcessConnection::setException(const String& exceptionString)
+void PluginProcessConnection::setException(const String& exceptionString, CompletionHandler<void()>&& completionHandler)
{
NPRuntimeObjectMap::setGlobalException(exceptionString);
+ completionHandler();
}
} // namespace WebKit
Modified: trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.h (241777 => 241778)
--- trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.h 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.h 2019-02-19 22:51:29 UTC (rev 241778)
@@ -70,7 +70,7 @@
// Message handlers.
void didReceiveSyncPluginProcessConnectionMessage(IPC::Connection&, IPC::Decoder&, std::unique_ptr<IPC::Encoder>&);
- void setException(const String&);
+ void setException(const String&, CompletionHandler<void()>&&);
PluginProcessConnectionManager* m_pluginProcessConnectionManager;
uint64_t m_pluginProcessToken;
Modified: trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.messages.in (241777 => 241778)
--- trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.messages.in 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/WebProcess/Plugins/PluginProcessConnection.messages.in 2019-02-19 22:51:29 UTC (rev 241778)
@@ -24,7 +24,7 @@
messages -> PluginProcessConnection LegacyReceiver {
# Set a global _javascript_ exception.
- SetException(String exceptionString) -> () LegacySync
+ SetException(String exceptionString) -> () Delayed
}
#endif
Modified: trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.cpp (241777 => 241778)
--- trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.cpp 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.cpp 2019-02-19 22:51:29 UTC (rev 241778)
@@ -141,24 +141,26 @@
return result;
}
-void PluginProxy::didCreatePlugin(bool wantsWheelEvents, uint32_t remoteLayerClientID)
+void PluginProxy::didCreatePlugin(bool wantsWheelEvents, uint32_t remoteLayerClientID, CompletionHandler<void()>&& completionHandler)
{
// We might have tried to create the plug-in sychronously while waiting on the asynchronous reply,
// in which case we should ignore this message.
if (!m_waitingOnAsynchronousInitialization)
- return;
+ return completionHandler();
didCreatePluginInternal(wantsWheelEvents, remoteLayerClientID);
+ completionHandler();
}
-void PluginProxy::didFailToCreatePlugin()
+void PluginProxy::didFailToCreatePlugin(CompletionHandler<void()>&& completionHandler)
{
// We might have tried to create the plug-in sychronously while waiting on the asynchronous reply,
// in which case we should ignore this message.
if (!m_waitingOnAsynchronousInitialization)
- return;
+ return completionHandler();
didFailToCreatePluginInternal();
+ completionHandler();
}
void PluginProxy::didCreatePluginInternal(bool wantsWheelEvents, uint32_t remoteLayerClientID)
@@ -574,14 +576,14 @@
controller()->loadURL(requestID, method, urlString, target, headerFields, httpBody, allowPopups);
}
-void PluginProxy::proxiesForURL(const String& urlString, String& proxyString)
+void PluginProxy::proxiesForURL(const String& urlString, CompletionHandler<void(String)>&& completionHandler)
{
- proxyString = controller()->proxiesForURL(urlString);
+ completionHandler(controller()->proxiesForURL(urlString));
}
-void PluginProxy::cookiesForURL(const String& urlString, String& cookieString)
+void PluginProxy::cookiesForURL(const String& urlString, CompletionHandler<void(String)>&& completionHandler)
{
- cookieString = controller()->cookiesForURL(urlString);
+ completionHandler(controller()->cookiesForURL(urlString));
}
void PluginProxy::setCookiesForURL(const String& urlString, const String& cookieString)
@@ -589,9 +591,12 @@
controller()->setCookiesForURL(urlString, cookieString);
}
-void PluginProxy::getAuthenticationInfo(const ProtectionSpace& protectionSpace, bool& returnValue, String& username, String& password)
+void PluginProxy::getAuthenticationInfo(const ProtectionSpace& protectionSpace, CompletionHandler<void(bool returnValue, String username, String password)>&& completionHandler)
{
- returnValue = controller()->getAuthenticationInfo(protectionSpace, username, password);
+ String username;
+ String password;
+ bool returnValue = controller()->getAuthenticationInfo(protectionSpace, username, password);
+ completionHandler(returnValue, username, password);
}
float PluginProxy::contentsScaleFactor()
@@ -634,40 +639,38 @@
return IntRect(IntPoint(), m_pluginSize);
}
-void PluginProxy::getPluginElementNPObject(uint64_t& pluginElementNPObjectID)
+void PluginProxy::getPluginElementNPObject(CompletionHandler<void(uint64_t)>&& completionHandler)
{
NPObject* pluginElementNPObject = controller()->pluginElementNPObject();
- if (!pluginElementNPObject) {
- pluginElementNPObjectID = 0;
- return;
- }
+ if (!pluginElementNPObject)
+ return completionHandler(0);
- pluginElementNPObjectID = m_connection->npRemoteObjectMap()->registerNPObject(pluginElementNPObject, this);
+ uint64_t pluginElementNPObjectID = m_connection->npRemoteObjectMap()->registerNPObject(pluginElementNPObject, this);
releaseNPObject(pluginElementNPObject);
+ completionHandler(pluginElementNPObjectID);
}
-void PluginProxy::evaluate(const NPVariantData& npObjectAsVariantData, const String& scriptString, bool allowPopups, bool& returnValue, NPVariantData& resultData)
+void PluginProxy::evaluate(const NPVariantData& npObjectAsVariantData, const String& scriptString, bool allowPopups, CompletionHandler<void(bool returnValue, NPVariantData&& resultData)>&& completionHandler)
{
PluginController::PluginDestructionProtector protector(controller());
NPVariant npObjectAsVariant = m_connection->npRemoteObjectMap()->npVariantDataToNPVariant(npObjectAsVariantData, this);
- if (!NPVARIANT_IS_OBJECT(npObjectAsVariant) || !(NPVARIANT_TO_OBJECT(npObjectAsVariant))) {
- returnValue = false;
- return;
- }
-
+ if (!NPVARIANT_IS_OBJECT(npObjectAsVariant) || !(NPVARIANT_TO_OBJECT(npObjectAsVariant)))
+ return completionHandler(false, { });
+
NPVariant result;
- returnValue = controller()->evaluate(NPVARIANT_TO_OBJECT(npObjectAsVariant), scriptString, &result, allowPopups);
+ bool returnValue = controller()->evaluate(NPVARIANT_TO_OBJECT(npObjectAsVariant), scriptString, &result, allowPopups);
if (!returnValue)
- return;
+ return completionHandler(false, { });
// Convert the NPVariant to an NPVariantData.
- resultData = m_connection->npRemoteObjectMap()->npVariantToNPVariantData(result, this);
+ NPVariantData resultData = m_connection->npRemoteObjectMap()->npVariantToNPVariantData(result, this);
// And release the result.
releaseNPVariantValue(&result);
-
releaseNPVariantValue(&npObjectAsVariant);
+
+ completionHandler(returnValue, WTFMove(resultData));
}
void PluginProxy::setPluginIsPlayingAudio(bool pluginIsPlayingAudio)
@@ -696,9 +699,9 @@
}
#if PLATFORM(X11)
-void PluginProxy::createPluginContainer(uint64_t& windowID)
+void PluginProxy::createPluginContainer(CompletionHandler<void(uint64_t windowID)>&& completionHandler)
{
- windowID = controller()->createPluginContainer();
+ completionHandler(controller()->createPluginContainer());
}
void PluginProxy::windowedPluginGeometryDidChange(const WebCore::IntRect& frameRect, const WebCore::IntRect& clipRect, uint64_t windowID)
Modified: trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.h (241777 => 241778)
--- trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.h 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.h 2019-02-19 22:51:29 UTC (rev 241778)
@@ -156,12 +156,12 @@
// Message handlers.
void loadURL(uint64_t requestID, const String& method, const String& urlString, const String& target, const WebCore::HTTPHeaderMap& headerFields, const Vector<uint8_t>& httpBody, bool allowPopups);
void update(const WebCore::IntRect& paintedRect);
- void proxiesForURL(const String& urlString, String& proxyString);
- void cookiesForURL(const String& urlString, String& cookieString);
+ void proxiesForURL(const String& urlString, CompletionHandler<void(String)>&&);
+ void cookiesForURL(const String& urlString, CompletionHandler<void(String)>&&);
void setCookiesForURL(const String& urlString, const String& cookieString);
- void getAuthenticationInfo(const WebCore::ProtectionSpace&, bool& returnValue, String& username, String& password);
- void getPluginElementNPObject(uint64_t& pluginElementNPObjectID);
- void evaluate(const NPVariantData& npObjectAsVariantData, const String& scriptString, bool allowPopups, bool& returnValue, NPVariantData& resultData);
+ void getAuthenticationInfo(const WebCore::ProtectionSpace&, CompletionHandler<void(bool returnValue, String username, String password)>&&);
+ void getPluginElementNPObject(CompletionHandler<void(uint64_t)>&&);
+ void evaluate(const NPVariantData& npObjectAsVariantData, const String& scriptString, bool allowPopups, CompletionHandler<void(bool returnValue, NPVariantData&& resultData)>&&);
void setPluginIsPlayingAudio(bool);
void continueStreamLoad(uint64_t streamID);
void cancelStreamLoad(uint64_t streamID);
@@ -173,7 +173,7 @@
void setLayerHostingContextID(uint32_t);
#endif
#if PLATFORM(X11)
- void createPluginContainer(uint64_t& windowID);
+ void createPluginContainer(CompletionHandler<void(uint64_t windowID)>&&);
void windowedPluginGeometryDidChange(const WebCore::IntRect& frameRect, const WebCore::IntRect& clipRect, uint64_t windowID);
void windowedPluginVisibilityDidChange(bool isVisible, uint64_t windowID);
#endif
@@ -180,8 +180,8 @@
bool canInitializeAsynchronously() const;
- void didCreatePlugin(bool wantsWheelEvents, uint32_t remoteLayerClientID);
- void didFailToCreatePlugin();
+ void didCreatePlugin(bool wantsWheelEvents, uint32_t remoteLayerClientID, CompletionHandler<void()>&&);
+ void didFailToCreatePlugin(CompletionHandler<void()>&&);
void didCreatePluginInternal(bool wantsWheelEvents, uint32_t remoteLayerClientID);
void didFailToCreatePluginInternal();
Modified: trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.messages.in (241777 => 241778)
--- trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.messages.in 2019-02-19 22:49:13 UTC (rev 241777)
+++ trunk/Source/WebKit/WebProcess/Plugins/PluginProxy.messages.in 2019-02-19 22:51:29 UTC (rev 241778)
@@ -30,22 +30,22 @@
Update(WebCore::IntRect paintedRect)
# Returns a PAC style string with proxies for the given URL.
- ProxiesForURL(String urlString) -> (String proxiesString) LegacySync
+ ProxiesForURL(String urlString) -> (String proxiesString) Delayed
# Returns the cookies for the given URL.
- CookiesForURL(String urlString) -> (String cookieString) LegacySync
+ CookiesForURL(String urlString) -> (String cookieString) Delayed
# Sets the cookies for the given URL.
SetCookiesForURL(String urlString, String cookieString)
# Gets the authentication info for the given protection space.
- GetAuthenticationInfo(WebCore::ProtectionSpace protectionSpace) -> (bool returnValue, String username, String password) LegacySync
+ GetAuthenticationInfo(WebCore::ProtectionSpace protectionSpace) -> (bool returnValue, String username, String password) Delayed
# Gets a reference to the plug-in element NPObject.
- GetPluginElementNPObject() -> (uint64_t pluginElementNPObjectID) LegacySync
+ GetPluginElementNPObject() -> (uint64_t pluginElementNPObjectID) Delayed
# Evaluates the given _javascript_ string.
- Evaluate(WebKit::NPVariantData npObjectAsVariantData, String scriptString, bool allowPopups) -> (bool returnValue, WebKit::NPVariantData resultData) LegacySync
+ Evaluate(WebKit::NPVariantData npObjectAsVariantData, String scriptString, bool allowPopups) -> (bool returnValue, WebKit::NPVariantData resultData) Delayed
# Cancels the given stream load.
CancelStreamLoad(uint64_t streamID)
@@ -72,7 +72,7 @@
#if PLATFORM(X11)
# Create the plugin container for windowed plugins
- CreatePluginContainer() -> (uint64_t windowID) LegacySync
+ CreatePluginContainer() -> (uint64_t windowID) Delayed
# Update geometry of windowed plugin widget
WindowedPluginGeometryDidChange(WebCore::IntRect frameRect, WebCore::IntRect clipRect, uint64_t windowID)
@@ -82,10 +82,10 @@
#endif
# Tells the WebProcess that the plug-in was successfully initialized asynchronously
- DidCreatePlugin(bool wantsWheelEvents, uint32_t remoteLayerClientID) -> () LegacySync
+ DidCreatePlugin(bool wantsWheelEvents, uint32_t remoteLayerClientID) -> () Delayed
# Tells the WebProcess that the plug-in failed to initialize.
- DidFailToCreatePlugin() -> () LegacySync
+ DidFailToCreatePlugin() -> () Delayed
# Tells the WebProcess that the plug-in has started or stopped playing audio.
SetPluginIsPlayingAudio(bool pluginIsPlayingAudio)