| Index: content/browser/browser_plugin/browser_plugin_guest.cc
|
| diff --git a/content/browser/browser_plugin/browser_plugin_guest.cc b/content/browser/browser_plugin/browser_plugin_guest.cc
|
| index 5b88849176f9298bb728523fd702af2b09d731cb..ef729e4b0596498a9955642a94894392af461e54 100644
|
| --- a/content/browser/browser_plugin/browser_plugin_guest.cc
|
| +++ b/content/browser/browser_plugin/browser_plugin_guest.cc
|
| @@ -292,6 +292,11 @@ BrowserPluginGuest::GetBrowserPluginGuestManager() const {
|
| gfx::Rect BrowserPluginGuest::ToGuestRect(const gfx::Rect& bounds) {
|
| gfx::Rect guest_rect(bounds);
|
| guest_rect.Offset(guest_window_rect_.OffsetFromOrigin());
|
| + if (embedder_web_contents()->GetBrowserPluginGuest()) {
|
| + BrowserPluginGuest* embedder_guest =
|
| + embedder_web_contents()->GetBrowserPluginGuest();
|
| + guest_rect.Offset(embedder_guest->guest_window_rect_.OffsetFromOrigin());
|
| + }
|
| return guest_rect;
|
| }
|
|
|
| @@ -311,8 +316,16 @@ WebContentsImpl* BrowserPluginGuest::GetWebContents() const {
|
|
|
| gfx::Point BrowserPluginGuest::GetScreenCoordinates(
|
| const gfx::Point& relative_position) const {
|
| + if (!attached())
|
| + return relative_position;
|
| +
|
| gfx::Point screen_pos(relative_position);
|
| screen_pos += guest_window_rect_.OffsetFromOrigin();
|
| + if (embedder_web_contents()->GetBrowserPluginGuest()) {
|
| + BrowserPluginGuest* embedder_guest =
|
| + embedder_web_contents()->GetBrowserPluginGuest();
|
| + screen_pos += embedder_guest->guest_window_rect_.OffsetFromOrigin();
|
| + }
|
| return screen_pos;
|
| }
|
|
|
|
|