OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_PLUGIN_WEBPLUGIN_DELEGATE_STUB_H_ | 5 #ifndef CONTENT_PLUGIN_WEBPLUGIN_DELEGATE_STUB_H_ |
6 #define CONTENT_PLUGIN_WEBPLUGIN_DELEGATE_STUB_H_ | 6 #define CONTENT_PLUGIN_WEBPLUGIN_DELEGATE_STUB_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/memory/ref_counted.h" | 11 #include "base/memory/ref_counted.h" |
12 #include "content/child/npobject_stub.h" | 12 #include "content/child/npobject_stub.h" |
13 #include "ipc/ipc_listener.h" | 13 #include "ipc/ipc_listener.h" |
14 #include "ipc/ipc_sender.h" | 14 #include "ipc/ipc_sender.h" |
15 #include "third_party/npapi/bindings/npapi.h" | 15 #include "third_party/npapi/bindings/npapi.h" |
16 #include "ui/gfx/native_widget_types.h" | 16 #include "ui/gfx/native_widget_types.h" |
17 #include "ui/gfx/rect.h" | 17 #include "ui/gfx/rect.h" |
18 #include "url/gurl.h" | 18 #include "url/gurl.h" |
19 | 19 |
20 struct PluginMsg_Init_Params; | 20 struct PluginMsg_Init_Params; |
21 struct PluginMsg_DidReceiveResponseParams; | 21 struct PluginMsg_DidReceiveResponseParams; |
22 struct PluginMsg_UpdateGeometry_Param; | 22 struct PluginMsg_UpdateGeometry_Param; |
23 class WebCursor; | 23 class WebCursor; |
24 | 24 |
25 namespace WebKit { | 25 namespace WebKit { |
26 class WebInputEvent; | 26 class WebInputEvent; |
27 } | 27 } |
28 | 28 |
29 namespace webkit { | |
30 namespace npapi { | |
31 class WebPluginDelegateImpl; | |
32 } | |
33 } | |
34 | |
35 namespace content { | 29 namespace content { |
36 class PluginChannel; | 30 class PluginChannel; |
| 31 class WebPluginDelegateImpl; |
37 class WebPluginProxy; | 32 class WebPluginProxy; |
38 | 33 |
39 // Converts the IPC messages from WebPluginDelegateProxy into calls to the | 34 // Converts the IPC messages from WebPluginDelegateProxy into calls to the |
40 // actual WebPluginDelegateImpl object. | 35 // actual WebPluginDelegateImpl object. |
41 class WebPluginDelegateStub : public IPC::Listener, | 36 class WebPluginDelegateStub : public IPC::Listener, |
42 public IPC::Sender, | 37 public IPC::Sender, |
43 public base::RefCounted<WebPluginDelegateStub> { | 38 public base::RefCounted<WebPluginDelegateStub> { |
44 public: | 39 public: |
45 WebPluginDelegateStub(const std::string& mime_type, int instance_id, | 40 WebPluginDelegateStub(const std::string& mime_type, int instance_id, |
46 PluginChannel* channel); | 41 PluginChannel* channel); |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 const GURL& url, | 107 const GURL& url, |
113 int notify_id); | 108 int notify_id); |
114 void OnHTTPRangeRequestReply(unsigned long resource_id, int range_request_id); | 109 void OnHTTPRangeRequestReply(unsigned long resource_id, int range_request_id); |
115 | 110 |
116 std::string mime_type_; | 111 std::string mime_type_; |
117 int instance_id_; | 112 int instance_id_; |
118 | 113 |
119 scoped_refptr<PluginChannel> channel_; | 114 scoped_refptr<PluginChannel> channel_; |
120 | 115 |
121 base::WeakPtr<NPObjectStub> plugin_scriptable_object_; | 116 base::WeakPtr<NPObjectStub> plugin_scriptable_object_; |
122 webkit::npapi::WebPluginDelegateImpl* delegate_; | 117 WebPluginDelegateImpl* delegate_; |
123 WebPluginProxy* webplugin_; | 118 WebPluginProxy* webplugin_; |
124 bool in_destructor_; | 119 bool in_destructor_; |
125 | 120 |
126 // The url of the main frame hosting the plugin. | 121 // The url of the main frame hosting the plugin. |
127 GURL page_url_; | 122 GURL page_url_; |
128 | 123 |
129 DISALLOW_IMPLICIT_CONSTRUCTORS(WebPluginDelegateStub); | 124 DISALLOW_IMPLICIT_CONSTRUCTORS(WebPluginDelegateStub); |
130 }; | 125 }; |
131 | 126 |
132 } // namespace content | 127 } // namespace content |
133 | 128 |
134 #endif // CONTENT_PLUGIN_WEBPLUGIN_DELEGATE_STUB_H_ | 129 #endif // CONTENT_PLUGIN_WEBPLUGIN_DELEGATE_STUB_H_ |
OLD | NEW |