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_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_ | 5 #ifndef CONTENT_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_ |
6 #define CONTENT_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_ | 6 #define CONTENT_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 int plugin_id); | 106 int plugin_id); |
107 #endif | 107 #endif |
108 | 108 |
109 // IPC::Listener implementation: | 109 // IPC::Listener implementation: |
110 bool OnMessageReceived(const IPC::Message& msg) override; | 110 bool OnMessageReceived(const IPC::Message& msg) override; |
111 void OnChannelError() override; | 111 void OnChannelError() override; |
112 | 112 |
113 // IPC::Sender implementation: | 113 // IPC::Sender implementation: |
114 bool Send(IPC::Message* msg) override; | 114 bool Send(IPC::Message* msg) override; |
115 | 115 |
116 gfx::PluginWindowHandle GetPluginWindowHandle(); | |
117 | |
118 protected: | 116 protected: |
119 friend class base::DeleteHelper<WebPluginDelegateProxy>; | 117 friend class base::DeleteHelper<WebPluginDelegateProxy>; |
120 ~WebPluginDelegateProxy() override; | 118 ~WebPluginDelegateProxy() override; |
121 | 119 |
122 private: | 120 private: |
123 struct SharedBitmap { | 121 struct SharedBitmap { |
124 SharedBitmap(); | 122 SharedBitmap(); |
125 ~SharedBitmap(); | 123 ~SharedBitmap(); |
126 | 124 |
127 scoped_ptr<SharedMemoryBitmap> bitmap; | 125 scoped_ptr<SharedMemoryBitmap> bitmap; |
128 skia::RefPtr<SkCanvas> canvas; | 126 skia::RefPtr<SkCanvas> canvas; |
129 }; | 127 }; |
130 | 128 |
131 // Message handlers for messages that proxy WebPlugin methods, which | 129 // Message handlers for messages that proxy WebPlugin methods, which |
132 // we translate into calls to the real WebPlugin. | 130 // we translate into calls to the real WebPlugin. |
133 void OnSetWindow(gfx::PluginWindowHandle window); | |
134 void OnCompleteURL(const std::string& url_in, std::string* url_out, | 131 void OnCompleteURL(const std::string& url_in, std::string* url_out, |
135 bool* result); | 132 bool* result); |
136 void OnHandleURLRequest(const PluginHostMsg_URLRequest_Params& params); | 133 void OnHandleURLRequest(const PluginHostMsg_URLRequest_Params& params); |
137 void OnInvalidateRect(const gfx::Rect& rect); | 134 void OnInvalidateRect(const gfx::Rect& rect); |
138 void OnGetWindowScriptNPObject(int route_id, bool* success); | 135 void OnGetWindowScriptNPObject(int route_id, bool* success); |
139 void OnResolveProxy(const GURL& url, bool* result, std::string* proxy_list); | 136 void OnResolveProxy(const GURL& url, bool* result, std::string* proxy_list); |
140 void OnGetPluginElement(int route_id, bool* success); | 137 void OnGetPluginElement(int route_id, bool* success); |
141 void OnSetCookie(const GURL& url, | 138 void OnSetCookie(const GURL& url, |
142 const GURL& first_party_for_cookies, | 139 const GURL& first_party_for_cookies, |
143 const std::string& cookie); | 140 const std::string& cookie); |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
226 base::WeakPtr<RenderViewImpl> render_view_; | 223 base::WeakPtr<RenderViewImpl> render_view_; |
227 RenderFrameImpl* render_frame_; | 224 RenderFrameImpl* render_frame_; |
228 WebPluginImpl* plugin_; | 225 WebPluginImpl* plugin_; |
229 bool uses_shared_bitmaps_; | 226 bool uses_shared_bitmaps_; |
230 #if defined(OS_MACOSX) | 227 #if defined(OS_MACOSX) |
231 bool uses_compositor_; | 228 bool uses_compositor_; |
232 #elif defined(OS_WIN) | 229 #elif defined(OS_WIN) |
233 // Used for windowless plugins so that keyboard activation works. | 230 // Used for windowless plugins so that keyboard activation works. |
234 gfx::NativeViewId dummy_activation_window_; | 231 gfx::NativeViewId dummy_activation_window_; |
235 #endif | 232 #endif |
236 gfx::PluginWindowHandle window_; | |
237 scoped_refptr<PluginChannelHost> channel_host_; | 233 scoped_refptr<PluginChannelHost> channel_host_; |
238 std::string mime_type_; | 234 std::string mime_type_; |
239 int instance_id_; | 235 int instance_id_; |
240 WebPluginInfo info_; | 236 WebPluginInfo info_; |
241 | 237 |
242 gfx::Rect plugin_rect_; | 238 gfx::Rect plugin_rect_; |
243 gfx::Rect clip_rect_; | 239 gfx::Rect clip_rect_; |
244 | 240 |
245 NPObject* npobject_; | 241 NPObject* npobject_; |
246 | 242 |
(...skipping 27 matching lines...) Expand all Loading... |
274 | 270 |
275 // The url of the main frame hosting the plugin. | 271 // The url of the main frame hosting the plugin. |
276 GURL page_url_; | 272 GURL page_url_; |
277 | 273 |
278 DISALLOW_COPY_AND_ASSIGN(WebPluginDelegateProxy); | 274 DISALLOW_COPY_AND_ASSIGN(WebPluginDelegateProxy); |
279 }; | 275 }; |
280 | 276 |
281 } // namespace content | 277 } // namespace content |
282 | 278 |
283 #endif // CONTENT_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_ | 279 #endif // CONTENT_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_ |
OLD | NEW |