OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 CHROME_RENDERER_RENDER_VIEW_H_ | 5 #ifndef CHROME_RENDERER_RENDER_VIEW_H_ |
6 #define CHROME_RENDERER_RENDER_VIEW_H_ | 6 #define CHROME_RENDERER_RENDER_VIEW_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <deque> | 9 #include <deque> |
10 #include <map> | 10 #include <map> |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 | 48 |
49 #if defined(OS_WIN) | 49 #if defined(OS_WIN) |
50 // RenderView is a diamond-shaped hierarchy, with WebWidgetClient at the root. | 50 // RenderView is a diamond-shaped hierarchy, with WebWidgetClient at the root. |
51 // VS warns when we inherit the WebWidgetClient method implementations from | 51 // VS warns when we inherit the WebWidgetClient method implementations from |
52 // RenderWidget. It's safe to ignore that warning. | 52 // RenderWidget. It's safe to ignore that warning. |
53 #pragma warning(disable: 4250) | 53 #pragma warning(disable: 4250) |
54 #endif | 54 #endif |
55 | 55 |
56 class AudioMessageFilter; | 56 class AudioMessageFilter; |
57 class AutoFillHelper; | 57 class AutoFillHelper; |
| 58 class CustomMenuListener; |
58 class DictionaryValue; | 59 class DictionaryValue; |
59 class DeviceOrientationDispatcher; | 60 class DeviceOrientationDispatcher; |
60 class DevToolsAgent; | 61 class DevToolsAgent; |
61 class DevToolsClient; | 62 class DevToolsClient; |
62 class DomAutomationController; | 63 class DomAutomationController; |
63 class DOMUIBindings; | 64 class DOMUIBindings; |
64 class ExternalHostBindings; | 65 class ExternalHostBindings; |
65 class FilePath; | 66 class FilePath; |
66 class GeolocationDispatcherOld; | 67 class GeolocationDispatcherOld; |
67 class GURL; | 68 class GURL; |
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
330 // Create a new plugin without checking the content settings. | 331 // Create a new plugin without checking the content settings. |
331 WebKit::WebPlugin* CreatePluginNoCheck(WebKit::WebFrame* frame, | 332 WebKit::WebPlugin* CreatePluginNoCheck(WebKit::WebFrame* frame, |
332 const WebKit::WebPluginParams& params); | 333 const WebKit::WebPluginParams& params); |
333 | 334 |
334 // Asks the browser for the CPBrowsingContext associated with this renderer. | 335 // Asks the browser for the CPBrowsingContext associated with this renderer. |
335 // This is an opaque identifier associated with the renderer for sending | 336 // This is an opaque identifier associated with the renderer for sending |
336 // messages for the given "Chrome Plugin." The Chrome Plugin API is used | 337 // messages for the given "Chrome Plugin." The Chrome Plugin API is used |
337 // only by gears and this function can be deleted when we remove gears. | 338 // only by gears and this function can be deleted when we remove gears. |
338 uint32 GetCPBrowsingContext(); | 339 uint32 GetCPBrowsingContext(); |
339 | 340 |
| 341 // Handles registering and deregistering customer handlers for custom |
| 342 // context menu events. |
| 343 // To install a custom context menu, call showContextMenu() with your |
| 344 // custom entries, followed immediately by CustomMenuListenerInstall() to |
| 345 // register a listener for when a custom menu item is selected. Note that |
| 346 // subsequent calls to showContextMenu() will clear the custom listener. |
| 347 void CustomMenuListenerInstall(CustomMenuListener* listening); |
| 348 void CustomMenuListenerDestroyed(CustomMenuListener* dead); |
| 349 |
340 #if defined(OS_MACOSX) | 350 #if defined(OS_MACOSX) |
341 // Enables/disabled plugin IME for the given plugin. | 351 // Enables/disabled plugin IME for the given plugin. |
342 void SetPluginImeEnabled(bool enabled, int plugin_id); | 352 void SetPluginImeEnabled(bool enabled, int plugin_id); |
343 | 353 |
344 // Helper routines for accelerated plugin support. Used by the | 354 // Helper routines for accelerated plugin support. Used by the |
345 // WebPluginDelegateProxy, which has a pointer to the RenderView. | 355 // WebPluginDelegateProxy, which has a pointer to the RenderView. |
346 gfx::PluginWindowHandle AllocateFakePluginWindowHandle(bool opaque, | 356 gfx::PluginWindowHandle AllocateFakePluginWindowHandle(bool opaque, |
347 bool root); | 357 bool root); |
348 void DestroyFakePluginWindowHandle(gfx::PluginWindowHandle window); | 358 void DestroyFakePluginWindowHandle(gfx::PluginWindowHandle window); |
349 void AcceleratedSurfaceSetIOSurface(gfx::PluginWindowHandle window, | 359 void AcceleratedSurfaceSetIOSurface(gfx::PluginWindowHandle window, |
(...skipping 1108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1458 // Allows DOM UI pages (new tab page, etc.) to talk to the browser. The JS | 1468 // Allows DOM UI pages (new tab page, etc.) to talk to the browser. The JS |
1459 // object is only exposed when DOM UI bindings are enabled. | 1469 // object is only exposed when DOM UI bindings are enabled. |
1460 scoped_ptr<DOMUIBindings> dom_ui_bindings_; | 1470 scoped_ptr<DOMUIBindings> dom_ui_bindings_; |
1461 | 1471 |
1462 // External host exposed through automation controller. | 1472 // External host exposed through automation controller. |
1463 scoped_ptr<ExternalHostBindings> external_host_bindings_; | 1473 scoped_ptr<ExternalHostBindings> external_host_bindings_; |
1464 | 1474 |
1465 // The external popup for the currently showing select popup. | 1475 // The external popup for the currently showing select popup. |
1466 scoped_ptr<ExternalPopupMenu> external_popup_menu_; | 1476 scoped_ptr<ExternalPopupMenu> external_popup_menu_; |
1467 | 1477 |
| 1478 // The custom menu event listener, if any. |
| 1479 CustomMenuListener* custom_menu_listener_; |
| 1480 |
1468 // --------------------------------------------------------------------------- | 1481 // --------------------------------------------------------------------------- |
1469 // ADDING NEW DATA? Please see if it fits appropriately in one of the above | 1482 // ADDING NEW DATA? Please see if it fits appropriately in one of the above |
1470 // sections rather than throwing it randomly at the end. If you're adding a | 1483 // sections rather than throwing it randomly at the end. If you're adding a |
1471 // bunch of stuff, you should probably create a helper class and put your | 1484 // bunch of stuff, you should probably create a helper class and put your |
1472 // data and methods on that to avoid bloating RenderView more. | 1485 // data and methods on that to avoid bloating RenderView more. |
1473 // --------------------------------------------------------------------------- | 1486 // --------------------------------------------------------------------------- |
1474 | 1487 |
1475 DISALLOW_COPY_AND_ASSIGN(RenderView); | 1488 DISALLOW_COPY_AND_ASSIGN(RenderView); |
1476 }; | 1489 }; |
1477 | 1490 |
1478 #endif // CHROME_RENDERER_RENDER_VIEW_H_ | 1491 #endif // CHROME_RENDERER_RENDER_VIEW_H_ |
OLD | NEW |