Index: content/renderer/pepper/pepper_plugin_delegate_impl.h |
=================================================================== |
--- content/renderer/pepper/pepper_plugin_delegate_impl.h (revision 214295) |
+++ content/renderer/pepper/pepper_plugin_delegate_impl.h (working copy) |
@@ -18,8 +18,8 @@ |
#include "base/observer_list.h" |
#include "content/public/renderer/render_view_observer.h" |
#include "content/renderer/pepper/pepper_browser_connection.h" |
-#include "content/renderer/pepper/plugin_delegate.h" |
#include "content/renderer/render_view_pepper_helper.h" |
+#include "ipc/ipc_platform_file.h" |
#include "ppapi/c/pp_file_info.h" |
#include "ppapi/c/ppb_tcp_socket.h" |
#include "ppapi/c/private/ppb_tcp_socket_private.h" |
@@ -33,6 +33,7 @@ |
namespace ppapi { |
class PepperFilePath; |
+class PpapiPermissions; |
class PPB_X509Certificate_Fields; |
namespace host { |
class ResourceHost; |
@@ -41,7 +42,9 @@ |
namespace WebKit { |
class WebGamepads; |
+class WebURLResponse; |
struct WebCompositionUnderline; |
+struct WebCursorInfo; |
} |
namespace content { |
@@ -50,12 +53,12 @@ |
class PepperBroker; |
class PluginModule; |
class PPB_Broker_Impl; |
+class PPB_TCPSocket_Private_Impl; |
class RenderViewImpl; |
struct WebPluginInfo; |
class PepperPluginDelegateImpl |
- : public PluginDelegate, |
- public RenderViewPepperHelper, |
+ : public RenderViewPepperHelper, |
public base::SupportsWeakPtr<PepperPluginDelegateImpl>, |
public RenderViewObserver { |
public: |
@@ -90,6 +93,57 @@ |
// Notifies that |instance| has received a mouse event. |
void DidReceiveMouseEvent(PepperPluginInstanceImpl* instance); |
+ // Notification that the given plugin is focused or unfocused. |
+ void PluginFocusChanged(PepperPluginInstanceImpl* instance, bool focused); |
+ |
+ // Notification that the text input status of the given plugin is changed. |
+ void PluginTextInputTypeChanged(PepperPluginInstanceImpl* instance); |
+ |
+ // Notification that the caret position in the given plugin is changed. |
+ void PluginCaretPositionChanged(PepperPluginInstanceImpl* instance); |
+ |
+ // Notification that the plugin requested to cancel the current composition. |
+ void PluginRequestedCancelComposition(PepperPluginInstanceImpl* instance); |
+ |
+ // Notification that the text selection in the given plugin is changed. |
+ void PluginSelectionChanged(PepperPluginInstanceImpl* instance); |
+ |
+ // Indicates that the given instance has been created. |
+ void InstanceCreated(PepperPluginInstanceImpl* instance); |
+ |
+ // Indicates that the given instance is being destroyed. This is called from |
+ // the destructor, so it's important that the instance is not dereferenced |
+ // from this call. |
+ void InstanceDeleted(PepperPluginInstanceImpl* instance); |
+ |
+ // Sends an async IPC to open a local file. |
+ typedef base::Callback<void (base::PlatformFileError, base::PassPlatformFile)> |
+ AsyncOpenFileCallback; |
+ bool AsyncOpenFile(const base::FilePath& path, |
+ int flags, |
+ const AsyncOpenFileCallback& callback); |
+ |
+ // Retrieve current gamepad data. |
+ void SampleGamepads(WebKit::WebGamepads* data); |
+ |
+ // Notifies the plugin of the document load. This should initiate the call to |
+ // PPP_Instance.HandleDocumentLoad. |
+ // |
+ // The loader object should set itself on the PluginInstance as the document |
+ // loader using set_document_loader. |
+ void HandleDocumentLoad(PepperPluginInstanceImpl* instance, |
+ const WebKit::WebURLResponse& response); |
+ |
+ // Sets up the renderer host and out-of-process proxy for an external plugin |
+ // module. Returns the renderer host, or NULL if it couldn't be created. |
+ RendererPpapiHost* CreateExternalPluginModule( |
+ scoped_refptr<PluginModule> module, |
+ const base::FilePath& path, |
+ ::ppapi::PpapiPermissions permissions, |
+ const IPC::ChannelHandle& channel_handle, |
+ base::ProcessId plugin_pid, |
+ int plugin_child_id); |
+ |
private: |
// RenderViewPepperHelper implementation. |
virtual WebKit::WebPlugin* CreatePepperWebPlugin( |
@@ -121,36 +175,6 @@ |
virtual void OnImeConfirmComposition(const string16& text) OVERRIDE; |
virtual void WillHandleMouseEvent() OVERRIDE; |
- // PluginDelegate implementation. |
- virtual void PluginFocusChanged(PepperPluginInstanceImpl* instance, |
- bool focused) OVERRIDE; |
- virtual void PluginTextInputTypeChanged( |
- PepperPluginInstanceImpl* instance) OVERRIDE; |
- virtual void PluginCaretPositionChanged( |
- PepperPluginInstanceImpl* instance) OVERRIDE; |
- virtual void PluginRequestedCancelComposition( |
- PepperPluginInstanceImpl* instance) OVERRIDE; |
- virtual void PluginSelectionChanged( |
- PepperPluginInstanceImpl* instance) OVERRIDE; |
- virtual void InstanceCreated(PepperPluginInstanceImpl* instance) OVERRIDE; |
- virtual void InstanceDeleted(PepperPluginInstanceImpl* instance) OVERRIDE; |
- virtual bool AsyncOpenFile(const base::FilePath& path, |
- int flags, |
- const AsyncOpenFileCallback& callback) OVERRIDE; |
- virtual scoped_refptr<base::MessageLoopProxy> |
- GetFileThreadMessageLoopProxy() OVERRIDE; |
- virtual void SampleGamepads(WebKit::WebGamepads* data) OVERRIDE; |
- virtual void HandleDocumentLoad( |
- PepperPluginInstanceImpl* instance, |
- const WebKit::WebURLResponse& response) OVERRIDE; |
- virtual RendererPpapiHost* CreateExternalPluginModule( |
- scoped_refptr<PluginModule> module, |
- const base::FilePath& path, |
- ::ppapi::PpapiPermissions permissions, |
- const IPC::ChannelHandle& channel_handle, |
- base::ProcessId plugin_pid, |
- int plugin_child_id) OVERRIDE; |
- |
// RenderViewObserver implementation. |
virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; |
virtual void OnDestruct() OVERRIDE; |