Chromium Code Reviews| 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 // A BrowserPluginGuest is the browser side of a browser <--> embedder | 5 // A BrowserPluginGuest is the browser side of a browser <--> embedder |
| 6 // renderer channel. A BrowserPlugin (a WebPlugin) is on the embedder | 6 // renderer channel. A BrowserPlugin (a WebPlugin) is on the embedder |
| 7 // renderer side of browser <--> embedder renderer communication. | 7 // renderer side of browser <--> embedder renderer communication. |
| 8 // | 8 // |
| 9 // BrowserPluginGuest lives on the UI thread of the browser process. Any | 9 // BrowserPluginGuest lives on the UI thread of the browser process. Any |
| 10 // messages about the guest render process that the embedder might be interested | 10 // messages about the guest render process that the embedder might be interested |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 60 namespace gfx { | 60 namespace gfx { |
| 61 class Range; | 61 class Range; |
| 62 } // namespace gfx | 62 } // namespace gfx |
| 63 | 63 |
| 64 namespace content { | 64 namespace content { |
| 65 | 65 |
| 66 class BrowserPluginGuestManager; | 66 class BrowserPluginGuestManager; |
| 67 class RenderViewHostImpl; | 67 class RenderViewHostImpl; |
| 68 class RenderWidgetHostView; | 68 class RenderWidgetHostView; |
| 69 class SiteInstance; | 69 class SiteInstance; |
| 70 class WebCursor; | |
| 71 struct DropData; | 70 struct DropData; |
| 72 | 71 |
| 73 // A browser plugin guest provides functionality for WebContents to operate in | 72 // A browser plugin guest provides functionality for WebContents to operate in |
| 74 // the guest role and implements guest-specific overrides for ViewHostMsg_* | 73 // the guest role and implements guest-specific overrides for ViewHostMsg_* |
| 75 // messages. | 74 // messages. |
| 76 // | 75 // |
| 77 // When a guest is initially created, it is in an unattached state. That is, | 76 // When a guest is initially created, it is in an unattached state. That is, |
| 78 // it is not visible anywhere and has no embedder WebContents assigned. | 77 // it is not visible anywhere and has no embedder WebContents assigned. |
| 79 // A BrowserPluginGuest is said to be "attached" if it has an embedder. | 78 // A BrowserPluginGuest is said to be "attached" if it has an embedder. |
| 80 // A BrowserPluginGuest can also create a new unattached guest via | 79 // A BrowserPluginGuest can also create a new unattached guest via |
| (...skipping 15 matching lines...) Expand all Loading... | |
| 96 | 95 |
| 97 // Returns whether the given WebContents is a BrowserPlugin guest. | 96 // Returns whether the given WebContents is a BrowserPlugin guest. |
| 98 static bool IsGuest(WebContentsImpl* web_contents); | 97 static bool IsGuest(WebContentsImpl* web_contents); |
| 99 | 98 |
| 100 // Returns whether the given RenderviewHost is a BrowserPlugin guest. | 99 // Returns whether the given RenderviewHost is a BrowserPlugin guest. |
| 101 static bool IsGuest(RenderViewHostImpl* render_view_host); | 100 static bool IsGuest(RenderViewHostImpl* render_view_host); |
| 102 | 101 |
| 103 // Returns a WeakPtr to this BrowserPluginGuest. | 102 // Returns a WeakPtr to this BrowserPluginGuest. |
| 104 base::WeakPtr<BrowserPluginGuest> AsWeakPtr(); | 103 base::WeakPtr<BrowserPluginGuest> AsWeakPtr(); |
| 105 | 104 |
| 105 // Sets the focus state of the current RenderWidgetHostView. | |
| 106 void SetFocus(RenderWidgetHost* rwh, bool focused); | |
| 107 | |
| 106 // Sets the lock state of the pointer. Returns true if |allowed| is true and | 108 // Sets the lock state of the pointer. Returns true if |allowed| is true and |
| 107 // the mouse has been successfully locked. | 109 // the mouse has been successfully locked. |
| 108 bool LockMouse(bool allowed); | 110 bool LockMouse(bool allowed); |
| 109 | 111 |
| 110 // Return true if the mouse is locked. | 112 // Return true if the mouse is locked. |
| 111 bool mouse_locked() const { return mouse_locked_; } | 113 bool mouse_locked() const { return mouse_locked_; } |
| 112 | 114 |
| 113 // Called when the embedder WebContents changes visibility. | 115 // Called when the embedder WebContents changes visibility. |
| 114 void EmbedderVisibilityChanged(bool visible); | 116 void EmbedderVisibilityChanged(bool visible); |
| 115 | 117 |
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 298 bool keep_selection); | 300 bool keep_selection); |
| 299 void OnExtendSelectionAndDelete(int instance_id, int before, int after); | 301 void OnExtendSelectionAndDelete(int instance_id, int before, int after); |
| 300 void OnImeCancelComposition(); | 302 void OnImeCancelComposition(); |
| 301 #if defined(OS_MACOSX) || defined(USE_AURA) | 303 #if defined(OS_MACOSX) || defined(USE_AURA) |
| 302 void OnImeCompositionRangeChanged( | 304 void OnImeCompositionRangeChanged( |
| 303 const gfx::Range& range, | 305 const gfx::Range& range, |
| 304 const std::vector<gfx::Rect>& character_bounds); | 306 const std::vector<gfx::Rect>& character_bounds); |
| 305 #endif | 307 #endif |
| 306 | 308 |
| 307 // Message handlers for messages from guest. | 309 // Message handlers for messages from guest. |
| 308 | |
| 309 void OnDragStopped(); | |
|
lazyboy
2014/09/09 07:04:45
Nice catch.
Fady Samuel
2014/09/09 17:14:48
Acknowledged.
| |
| 310 void OnHandleInputEventAck( | 310 void OnHandleInputEventAck( |
| 311 blink::WebInputEvent::Type event_type, | 311 blink::WebInputEvent::Type event_type, |
| 312 InputEventAckState ack_result); | 312 InputEventAckState ack_result); |
| 313 void OnHasTouchEventHandlers(bool accept); | 313 void OnHasTouchEventHandlers(bool accept); |
| 314 void OnSetCursor(const WebCursor& cursor); | |
| 315 #if defined(OS_MACOSX) | 314 #if defined(OS_MACOSX) |
| 316 // On MacOS X popups are painted by the browser process. We handle them here | 315 // On MacOS X popups are painted by the browser process. We handle them here |
| 317 // so that they are positioned correctly. | 316 // so that they are positioned correctly. |
| 318 void OnShowPopup(RenderFrameHost* render_frame_host, | 317 void OnShowPopup(RenderFrameHost* render_frame_host, |
| 319 const FrameHostMsg_ShowPopup_Params& params); | 318 const FrameHostMsg_ShowPopup_Params& params); |
| 320 #endif | 319 #endif |
| 321 void OnShowWidget(int route_id, const gfx::Rect& initial_pos); | 320 void OnShowWidget(int route_id, const gfx::Rect& initial_pos); |
| 322 void OnTakeFocus(bool reverse); | 321 void OnTakeFocus(bool reverse); |
| 323 void OnUpdateFrameName(int frame_id, | 322 void OnUpdateFrameName(int frame_id, |
| 324 bool is_top_level, | 323 bool is_top_level, |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 376 // Weak pointer used to ask GeolocationPermissionContext about geolocation | 375 // Weak pointer used to ask GeolocationPermissionContext about geolocation |
| 377 // permission. | 376 // permission. |
| 378 base::WeakPtrFactory<BrowserPluginGuest> weak_ptr_factory_; | 377 base::WeakPtrFactory<BrowserPluginGuest> weak_ptr_factory_; |
| 379 | 378 |
| 380 DISALLOW_COPY_AND_ASSIGN(BrowserPluginGuest); | 379 DISALLOW_COPY_AND_ASSIGN(BrowserPluginGuest); |
| 381 }; | 380 }; |
| 382 | 381 |
| 383 } // namespace content | 382 } // namespace content |
| 384 | 383 |
| 385 #endif // CONTENT_BROWSER_BROWSER_PLUGIN_BROWSER_PLUGIN_GUEST_H_ | 384 #endif // CONTENT_BROWSER_BROWSER_PLUGIN_BROWSER_PLUGIN_GUEST_H_ |
| OLD | NEW |