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_PROXY_H_ | 5 #ifndef CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_ |
6 #define CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_ | 6 #define CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
54 | 54 |
55 void set_delegate(WebPluginDelegateImpl* d) { delegate_ = d; } | 55 void set_delegate(WebPluginDelegateImpl* d) { delegate_ = d; } |
56 | 56 |
57 // WebPlugin overrides | 57 // WebPlugin overrides |
58 void SetWindow(gfx::PluginWindowHandle window) override; | 58 void SetWindow(gfx::PluginWindowHandle window) override; |
59 void SetAcceptsInputEvents(bool accepts) override; | 59 void SetAcceptsInputEvents(bool accepts) override; |
60 void WillDestroyWindow(gfx::PluginWindowHandle window) override; | 60 void WillDestroyWindow(gfx::PluginWindowHandle window) override; |
61 void CancelResource(unsigned long id) override; | 61 void CancelResource(unsigned long id) override; |
62 void Invalidate() override; | 62 void Invalidate() override; |
63 void InvalidateRect(const gfx::Rect& rect) override; | 63 void InvalidateRect(const gfx::Rect& rect) override; |
64 NPObject* GetWindowScriptNPObject() override; | |
65 NPObject* GetPluginElement() override; | |
66 bool FindProxyForUrl(const GURL& url, std::string* proxy_list) override; | 64 bool FindProxyForUrl(const GURL& url, std::string* proxy_list) override; |
67 void SetCookie(const GURL& url, | 65 void SetCookie(const GURL& url, |
68 const GURL& first_party_for_cookies, | 66 const GURL& first_party_for_cookies, |
69 const std::string& cookie) override; | 67 const std::string& cookie) override; |
70 std::string GetCookies(const GURL& url, | 68 std::string GetCookies(const GURL& url, |
71 const GURL& first_party_for_cookies) override; | 69 const GURL& first_party_for_cookies) override; |
72 void UpdateGeometry(const gfx::Rect& window_rect, | 70 void UpdateGeometry(const gfx::Rect& window_rect, |
73 const gfx::Rect& clip_rect, | 71 const gfx::Rect& clip_rect, |
74 const TransportDIB::Handle& windowless_buffer0, | 72 const TransportDIB::Handle& windowless_buffer0, |
75 const TransportDIB::Handle& windowless_buffer1, | 73 const TransportDIB::Handle& windowless_buffer1, |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
172 skia::RefPtr<SkCanvas> windowless_canvas() const { | 170 skia::RefPtr<SkCanvas> windowless_canvas() const { |
173 return windowless_canvases_[windowless_buffer_index_]; | 171 return windowless_canvases_[windowless_buffer_index_]; |
174 } | 172 } |
175 #endif | 173 #endif |
176 | 174 |
177 typedef base::hash_map<int, WebPluginResourceClient*> ResourceClientMap; | 175 typedef base::hash_map<int, WebPluginResourceClient*> ResourceClientMap; |
178 ResourceClientMap resource_clients_; | 176 ResourceClientMap resource_clients_; |
179 | 177 |
180 scoped_refptr<PluginChannel> channel_; | 178 scoped_refptr<PluginChannel> channel_; |
181 int route_id_; | 179 int route_id_; |
182 NPObject* window_npobject_; | |
183 NPObject* plugin_element_; | |
184 WebPluginDelegateImpl* delegate_; | 180 WebPluginDelegateImpl* delegate_; |
185 gfx::Rect damaged_rect_; | 181 gfx::Rect damaged_rect_; |
186 bool waiting_for_paint_; | 182 bool waiting_for_paint_; |
187 // The url of the main frame hosting the plugin. | 183 // The url of the main frame hosting the plugin. |
188 GURL page_url_; | 184 GURL page_url_; |
189 | 185 |
190 // Variables used for desynchronized windowless plugin painting. See note in | 186 // Variables used for desynchronized windowless plugin painting. See note in |
191 // webplugin_delegate_proxy.h for how this works. The two sets of windowless_* | 187 // webplugin_delegate_proxy.h for how this works. The two sets of windowless_* |
192 // fields are for the front-buffer and back-buffer of a buffer flipping system | 188 // fields are for the front-buffer and back-buffer of a buffer flipping system |
193 // and windowless_buffer_index_ identifies which set we are using as the | 189 // and windowless_buffer_index_ identifies which set we are using as the |
194 // back-buffer at any given time. | 190 // back-buffer at any given time. |
195 int windowless_buffer_index_; | 191 int windowless_buffer_index_; |
196 #if defined(OS_MACOSX) | 192 #if defined(OS_MACOSX) |
197 scoped_ptr<TransportDIB> windowless_dibs_[2]; | 193 scoped_ptr<TransportDIB> windowless_dibs_[2]; |
198 base::ScopedCFTypeRef<CGContextRef> windowless_contexts_[2]; | 194 base::ScopedCFTypeRef<CGContextRef> windowless_contexts_[2]; |
199 scoped_ptr<WebPluginAcceleratedSurfaceProxy> accelerated_surface_; | 195 scoped_ptr<WebPluginAcceleratedSurfaceProxy> accelerated_surface_; |
200 #else | 196 #else |
201 skia::RefPtr<SkCanvas> windowless_canvases_[2]; | 197 skia::RefPtr<SkCanvas> windowless_canvases_[2]; |
202 #endif | 198 #endif |
203 | 199 |
204 // Contains the routing id of the host render view. | 200 // Contains the routing id of the host render view. |
205 int host_render_view_routing_id_; | 201 int host_render_view_routing_id_; |
206 | 202 |
207 base::WeakPtrFactory<WebPluginProxy> weak_factory_; | 203 base::WeakPtrFactory<WebPluginProxy> weak_factory_; |
208 }; | 204 }; |
209 | 205 |
210 } // namespace content | 206 } // namespace content |
211 | 207 |
212 #endif // CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_ | 208 #endif // CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_ |
OLD | NEW |