diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebKit2/WebProcess/Plugins/PluginProxy.h | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/WebKit2/WebProcess/Plugins/PluginProxy.h')
-rw-r--r-- | Source/WebKit2/WebProcess/Plugins/PluginProxy.h | 140 |
1 files changed, 76 insertions, 64 deletions
diff --git a/Source/WebKit2/WebProcess/Plugins/PluginProxy.h b/Source/WebKit2/WebProcess/Plugins/PluginProxy.h index 0bc30cb03..031619355 100644 --- a/Source/WebKit2/WebProcess/Plugins/PluginProxy.h +++ b/Source/WebKit2/WebProcess/Plugins/PluginProxy.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010 Apple Inc. All rights reserved. + * Copyright (C) 2010, 2015 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -35,8 +35,9 @@ #include <WebCore/FindOptions.h> #include <WebCore/IntRect.h> #include <WebCore/SecurityOrigin.h> +#include <memory> -#if PLATFORM(MAC) +#if PLATFORM(COCOA) #include <wtf/RetainPtr.h> OBJC_CLASS CALayer; #endif @@ -56,88 +57,95 @@ struct PluginCreationParameters; class PluginProxy : public Plugin { public: - static PassRefPtr<PluginProxy> create(uint64_t pluginProcessToken, bool isRestartedProcess); + static Ref<PluginProxy> create(uint64_t pluginProcessToken, bool isRestartedProcess); ~PluginProxy(); uint64_t pluginInstanceID() const { return m_pluginInstanceID; } void pluginProcessCrashed(); - void didReceivePluginProxyMessage(IPC::Connection*, IPC::MessageDecoder&); - void didReceiveSyncPluginProxyMessage(IPC::Connection*, IPC::MessageDecoder&, std::unique_ptr<IPC::MessageEncoder>&); + void didReceivePluginProxyMessage(IPC::Connection&, IPC::Decoder&); + void didReceiveSyncPluginProxyMessage(IPC::Connection&, IPC::Decoder&, std::unique_ptr<IPC::Encoder>&); - bool isBeingAsynchronouslyInitialized() const { return m_waitingOnAsynchronousInitialization; } + bool isBeingAsynchronouslyInitialized() const override { return m_waitingOnAsynchronousInitialization; } private: explicit PluginProxy(uint64_t pluginProcessToken, bool isRestartedProcess); // Plugin - virtual bool initialize(const Parameters&); + bool initialize(const Parameters&) override; bool initializeSynchronously(); - virtual void destroy(); - virtual void paint(WebCore::GraphicsContext*, const WebCore::IntRect& dirtyRect); - virtual bool supportsSnapshotting() const; - virtual PassRefPtr<ShareableBitmap> snapshot(); -#if PLATFORM(MAC) - virtual PlatformLayer* pluginLayer(); + void destroy() override; + void paint(WebCore::GraphicsContext&, const WebCore::IntRect& dirtyRect) override; + bool supportsSnapshotting() const override; + RefPtr<ShareableBitmap> snapshot() override; +#if PLATFORM(COCOA) + PlatformLayer* pluginLayer() override; #endif - virtual bool isTransparent(); - virtual bool wantsWheelEvents() override; - virtual void geometryDidChange(const WebCore::IntSize& pluginSize, const WebCore::IntRect& clipRect, const WebCore::AffineTransform& pluginToRootViewTransform); - virtual void visibilityDidChange(bool isVisible); - virtual void frameDidFinishLoading(uint64_t requestID); - virtual void frameDidFail(uint64_t requestID, bool wasCancelled); - virtual void didEvaluateJavaScript(uint64_t requestID, const String& result); - virtual void streamDidReceiveResponse(uint64_t streamID, const WebCore::URL& responseURL, uint32_t streamLength, uint32_t lastModifiedTime, const String& mimeType, const String& headers, const String& suggestedFileName); - virtual void streamDidReceiveData(uint64_t streamID, const char* bytes, int length); - virtual void streamDidFinishLoading(uint64_t streamID); - virtual void streamDidFail(uint64_t streamID, bool wasCancelled); - virtual void manualStreamDidReceiveResponse(const WebCore::URL& responseURL, uint32_t streamLength, uint32_t lastModifiedTime, const WTF::String& mimeType, const WTF::String& headers, const String& suggestedFileName); - virtual void manualStreamDidReceiveData(const char* bytes, int length); - virtual void manualStreamDidFinishLoading(); - virtual void manualStreamDidFail(bool wasCancelled); + bool isTransparent() override; + bool wantsWheelEvents() override; + void geometryDidChange(const WebCore::IntSize& pluginSize, const WebCore::IntRect& clipRect, const WebCore::AffineTransform& pluginToRootViewTransform) override; + void visibilityDidChange(bool isVisible) override; + void frameDidFinishLoading(uint64_t requestID) override; + void frameDidFail(uint64_t requestID, bool wasCancelled) override; + void didEvaluateJavaScript(uint64_t requestID, const String& result) override; + void streamWillSendRequest(uint64_t streamID, const WebCore::URL& requestURL, const WebCore::URL& responseURL, int responseStatus) override; + void streamDidReceiveResponse(uint64_t streamID, const WebCore::URL& responseURL, uint32_t streamLength, uint32_t lastModifiedTime, const String& mimeType, const String& headers, const String& suggestedFileName) override; + void streamDidReceiveData(uint64_t streamID, const char* bytes, int length) override; + void streamDidFinishLoading(uint64_t streamID) override; + void streamDidFail(uint64_t streamID, bool wasCancelled) override; + void manualStreamDidReceiveResponse(const WebCore::URL& responseURL, uint32_t streamLength, uint32_t lastModifiedTime, const WTF::String& mimeType, const WTF::String& headers, const String& suggestedFileName) override; + void manualStreamDidReceiveData(const char* bytes, int length) override; + void manualStreamDidFinishLoading() override; + void manualStreamDidFail(bool wasCancelled) override; - virtual bool handleMouseEvent(const WebMouseEvent&); - virtual bool handleWheelEvent(const WebWheelEvent&); - virtual bool handleMouseEnterEvent(const WebMouseEvent&); - virtual bool handleMouseLeaveEvent(const WebMouseEvent&); - virtual bool handleContextMenuEvent(const WebMouseEvent&); - virtual bool handleKeyboardEvent(const WebKeyboardEvent&); - virtual void setFocus(bool); - virtual bool handleEditingCommand(const String& commandName, const String& argument) override; - virtual bool isEditingCommandEnabled(const String& commandName) override; - virtual bool shouldAllowScripting() override { return true; } - virtual bool shouldAllowNavigationFromDrags() override { return false; } + bool handleMouseEvent(const WebMouseEvent&) override; + bool handleWheelEvent(const WebWheelEvent&) override; + bool handleMouseEnterEvent(const WebMouseEvent&) override; + bool handleMouseLeaveEvent(const WebMouseEvent&) override; + bool handleContextMenuEvent(const WebMouseEvent&) override; + bool handleKeyboardEvent(const WebKeyboardEvent&) override; + void setFocus(bool) override; + bool handleEditingCommand(const String& commandName, const String& argument) override; + bool isEditingCommandEnabled(const String& commandName) override; + bool shouldAllowScripting() override { return true; } + bool shouldAllowNavigationFromDrags() override { return false; } - virtual bool handlesPageScaleFactor(); + bool handlesPageScaleFactor() const override; + bool requiresUnifiedScaleFactor() const override; - virtual NPObject* pluginScriptableNPObject(); -#if PLATFORM(MAC) - virtual void windowFocusChanged(bool); - virtual void windowAndViewFramesChanged(const WebCore::IntRect& windowFrameInScreenCoordinates, const WebCore::IntRect& viewFrameInWindowCoordinates); - virtual void windowVisibilityChanged(bool); - virtual uint64_t pluginComplexTextInputIdentifier() const; - virtual void sendComplexTextInput(const String& textInput); - virtual void setLayerHostingMode(LayerHostingMode) override; + NPObject* pluginScriptableNPObject() override; + + void windowFocusChanged(bool) override; + void windowVisibilityChanged(bool) override; + +#if PLATFORM(COCOA) + void windowAndViewFramesChanged(const WebCore::IntRect& windowFrameInScreenCoordinates, const WebCore::IntRect& viewFrameInWindowCoordinates) override; + uint64_t pluginComplexTextInputIdentifier() const override; + void sendComplexTextInput(const String& textInput) override; + void setLayerHostingMode(LayerHostingMode) override; #endif - virtual void contentsScaleFactorChanged(float); - virtual void storageBlockingStateChanged(bool); - virtual void privateBrowsingStateChanged(bool); - virtual bool getFormValue(String& formValue); - virtual bool handleScroll(WebCore::ScrollDirection, WebCore::ScrollGranularity); - virtual WebCore::Scrollbar* horizontalScrollbar(); - virtual WebCore::Scrollbar* verticalScrollbar(); + void contentsScaleFactorChanged(float) override; + void storageBlockingStateChanged(bool) override; + void privateBrowsingStateChanged(bool) override; + void mutedStateChanged(bool) override; + bool getFormValue(String& formValue) override; + bool handleScroll(WebCore::ScrollDirection, WebCore::ScrollGranularity) override; + WebCore::Scrollbar* horizontalScrollbar() override; + WebCore::Scrollbar* verticalScrollbar() override; - virtual unsigned countFindMatches(const String&, WebCore::FindOptions, unsigned) override { return 0; } - virtual bool findString(const String&, WebCore::FindOptions, unsigned) override { return false; } + unsigned countFindMatches(const String&, WebCore::FindOptions, unsigned) override { return 0; } + bool findString(const String&, WebCore::FindOptions, unsigned) override { return false; } - virtual WebCore::IntPoint convertToRootView(const WebCore::IntPoint&) const override; + WebCore::IntPoint convertToRootView(const WebCore::IntPoint&) const override; - virtual PassRefPtr<WebCore::SharedBuffer> liveResourceData() const override; - virtual bool performDictionaryLookupAtLocation(const WebCore::FloatPoint&) override { return false; } + RefPtr<WebCore::SharedBuffer> liveResourceData() const override; + bool performDictionaryLookupAtLocation(const WebCore::FloatPoint&) override { return false; } - virtual String getSelectionString() const override { return String(); } + String getSelectionString() const override { return String(); } + String getSelectionForWordAtPoint(const WebCore::FloatPoint&) const override { return String(); } + bool existingSelectionContainsPoint(const WebCore::FloatPoint&) const override { return false; } float contentsScaleFactor(); bool needsBackingStore() const; @@ -156,10 +164,12 @@ private: 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 setPluginIsPlayingAudio(bool); + void continueStreamLoad(uint64_t streamID); void cancelStreamLoad(uint64_t streamID); void cancelManualStreamLoad(); void setStatusbarText(const String& statusbarText); -#if PLATFORM(MAC) +#if PLATFORM(COCOA) void pluginFocusOrWindowFocusChanged(bool); void setComplexTextInputState(uint64_t); void setLayerHostingContextID(uint32_t); @@ -212,10 +222,10 @@ private: // The client ID for the CA layer in the plug-in process. Will be 0 if the plug-in is not a CA plug-in. uint32_t m_remoteLayerClientID; - OwnPtr<PluginCreationParameters> m_pendingPluginCreationParameters; + std::unique_ptr<PluginCreationParameters> m_pendingPluginCreationParameters; bool m_waitingOnAsynchronousInitialization; -#if PLATFORM(MAC) +#if PLATFORM(COCOA) RetainPtr<CALayer> m_pluginLayer; #endif @@ -224,6 +234,8 @@ private: } // namespace WebKit +SPECIALIZE_TYPE_TRAITS_PLUGIN(PluginProxy, PluginProxyType) + #endif // ENABLE(NETSCAPE_PLUGIN_API) #endif // PluginProxy_h |