| 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_BROWSER_PLUGIN_BROWSER_PLUGIN_H_ | 5 #ifndef CONTENT_RENDERER_BROWSER_PLUGIN_BROWSER_PLUGIN_H_ |
| 6 #define CONTENT_RENDERER_BROWSER_PLUGIN_BROWSER_PLUGIN_H_ | 6 #define CONTENT_RENDERER_BROWSER_PLUGIN_BROWSER_PLUGIN_H_ |
| 7 | 7 |
| 8 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPlugin.h" | 8 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPlugin.h" |
| 9 | 9 |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| 11 #include "base/memory/weak_ptr.h" | 11 #include "base/memory/weak_ptr.h" |
| 12 #include "base/process_util.h" | 12 #include "base/process_util.h" |
| 13 #include "base/sequenced_task_runner_helpers.h" | 13 #include "base/sequenced_task_runner_helpers.h" |
| 14 #if defined(OS_WIN) | 14 #if defined(OS_WIN) |
| 15 #include "base/shared_memory.h" | 15 #include "base/shared_memory.h" |
| 16 #endif | 16 #endif |
| 17 #include "content/renderer/browser_plugin/browser_plugin_backing_store.h" | 17 #include "content/renderer/browser_plugin/browser_plugin_backing_store.h" |
| 18 #include "content/renderer/browser_plugin/browser_plugin_bindings.h" | 18 #include "content/renderer/browser_plugin/browser_plugin_bindings.h" |
| 19 #include "content/renderer/render_view_impl.h" | 19 #include "content/renderer/render_view_impl.h" |
| 20 #include "third_party/WebKit/Source/WebKit/chromium/public/WebDragStatus.h" | 20 #include "third_party/WebKit/Source/WebKit/chromium/public/WebDragStatus.h" |
| 21 | 21 |
| 22 struct BrowserPluginHostMsg_AutoSize_Params; | 22 struct BrowserPluginHostMsg_AutoSize_Params; |
| 23 struct BrowserPluginHostMsg_ResizeGuest_Params; | 23 struct BrowserPluginHostMsg_ResizeGuest_Params; |
| 24 struct BrowserPluginMsg_LoadCommit_Params; | 24 struct BrowserPluginMsg_LoadCommit_Params; |
| 25 struct BrowserPluginMsg_UpdateRect_Params; | 25 struct BrowserPluginMsg_UpdateRect_Params; |
| 26 | 26 |
| 27 namespace content { | 27 namespace content { |
| 28 | 28 |
| 29 class BrowserPluginCompositingHelper; |
| 29 class BrowserPluginManager; | 30 class BrowserPluginManager; |
| 30 class MockBrowserPlugin; | 31 class MockBrowserPlugin; |
| 31 | 32 |
| 32 class CONTENT_EXPORT BrowserPlugin : | 33 class CONTENT_EXPORT BrowserPlugin : |
| 33 NON_EXPORTED_BASE(public WebKit::WebPlugin) { | 34 NON_EXPORTED_BASE(public WebKit::WebPlugin) { |
| 34 public: | 35 public: |
| 35 RenderViewImpl* render_view() const { return render_view_.get(); } | 36 RenderViewImpl* render_view() const { return render_view_.get(); } |
| 36 | 37 |
| 37 bool OnMessageReceived(const IPC::Message& msg); | 38 bool OnMessageReceived(const IPC::Message& msg); |
| 38 | 39 |
| (...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 238 const BrowserPluginMsg_UpdateRect_Params& params); | 239 const BrowserPluginMsg_UpdateRect_Params& params); |
| 239 | 240 |
| 240 // Indicates whether the |pending_damage_buffer_| was used to copy over pixels | 241 // Indicates whether the |pending_damage_buffer_| was used to copy over pixels |
| 241 // given the provided |params|. | 242 // given the provided |params|. |
| 242 bool UsesPendingDamageBuffer( | 243 bool UsesPendingDamageBuffer( |
| 243 const BrowserPluginMsg_UpdateRect_Params& params); | 244 const BrowserPluginMsg_UpdateRect_Params& params); |
| 244 | 245 |
| 245 // IPC message handlers. | 246 // IPC message handlers. |
| 246 // Please keep in alphabetical order. | 247 // Please keep in alphabetical order. |
| 247 void OnAdvanceFocus(int instance_id, bool reverse); | 248 void OnAdvanceFocus(int instance_id, bool reverse); |
| 249 void OnBuffersSwapped(int instance_id, |
| 250 const gfx::Size& size, |
| 251 std::string mailbox_name, |
| 252 int gpu_route_id, |
| 253 int gpu_host_id); |
| 248 void OnGuestContentWindowReady(int instance_id, | 254 void OnGuestContentWindowReady(int instance_id, |
| 249 int content_window_routing_id); | 255 int content_window_routing_id); |
| 250 void OnGuestGone(int instance_id, int process_id, int status); | 256 void OnGuestGone(int instance_id, int process_id, int status); |
| 251 void OnGuestResponsive(int instance_id, int process_id); | 257 void OnGuestResponsive(int instance_id, int process_id); |
| 252 void OnGuestUnresponsive(int instance_id, int process_id); | 258 void OnGuestUnresponsive(int instance_id, int process_id); |
| 253 void OnLoadAbort(int instance_id, | 259 void OnLoadAbort(int instance_id, |
| 254 const GURL& url, | 260 const GURL& url, |
| 255 bool is_top_level, | 261 bool is_top_level, |
| 256 const std::string& type); | 262 const std::string& type); |
| 257 void OnLoadCommit(int instance_id, | 263 void OnLoadCommit(int instance_id, |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 324 // the embedder process. It should only be updated in response to navigation | 330 // the embedder process. It should only be updated in response to navigation |
| 325 // events in the guest. No assumptions should be made about how the index | 331 // events in the guest. No assumptions should be made about how the index |
| 326 // will change after a navigation (e.g., for back, forward, or go), because | 332 // will change after a navigation (e.g., for back, forward, or go), because |
| 327 // the changes are not always obvious. For example, there is a maximum | 333 // the changes are not always obvious. For example, there is a maximum |
| 328 // number of entries and earlier ones will automatically be pruned. | 334 // number of entries and earlier ones will automatically be pruned. |
| 329 int current_nav_entry_index_; | 335 int current_nav_entry_index_; |
| 330 int nav_entry_count_; | 336 int nav_entry_count_; |
| 331 | 337 |
| 332 // Used for HW compositing. | 338 // Used for HW compositing. |
| 333 bool compositing_enabled_; | 339 bool compositing_enabled_; |
| 340 scoped_ptr<BrowserPluginCompositingHelper> compositing_helper_; |
| 334 | 341 |
| 335 DISALLOW_COPY_AND_ASSIGN(BrowserPlugin); | 342 DISALLOW_COPY_AND_ASSIGN(BrowserPlugin); |
| 336 }; | 343 }; |
| 337 | 344 |
| 338 } // namespace content | 345 } // namespace content |
| 339 | 346 |
| 340 #endif // CONTENT_RENDERER_BROWSER_PLUGIN_BROWSER_PLUGIN_H_ | 347 #endif // CONTENT_RENDERER_BROWSER_PLUGIN_BROWSER_PLUGIN_H_ |
| OLD | NEW |