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 83b6292c9f19fc0ef94a63a25312656bd1ae256a..84092c8691f0fc3feca1c6033c054e71d8285478 100644 |
--- a/content/browser/browser_plugin/browser_plugin_guest.cc |
+++ b/content/browser/browser_plugin/browser_plugin_guest.cc |
@@ -207,7 +207,7 @@ void BrowserPluginGuest::Initialize( |
focused_ = params.focused; |
guest_visible_ = params.visible; |
if (!params.name.empty()) |
- name_ = params.name; |
+ GetWebContents()->SetWindowName(params.name); |
Charlie Reis
2013/04/18 21:26:51
Why is this needed? Won't the RenderView tell the
|
auto_size_enabled_ = params.auto_size_params.enable; |
max_auto_size_ = params.auto_size_params.max_size; |
min_auto_size_ = params.auto_size_params.min_size; |
@@ -373,7 +373,7 @@ void BrowserPluginGuest::WebContentsCreated(WebContents* source_contents, |
static_cast<WebContentsImpl*>(new_contents); |
BrowserPluginGuest* guest = new_contents_impl->GetBrowserPluginGuest(); |
guest->opener_ = this; |
- guest->name_ = UTF16ToUTF8(frame_name); |
+ new_contents_impl->SetWindowName(UTF16ToUTF8(frame_name)); |
Charlie Reis
2013/04/18 21:26:51
Again, won't RenderView tell us?
|
// Take ownership of the new guest until it is attached to the embedder's DOM |
// tree to avoid leaking a guest if this guest is destroyed before attaching |
// the new guest. |
@@ -616,6 +616,16 @@ void BrowserPluginGuest::DidStopLoading(RenderViewHost* render_view_host) { |
SendMessageToEmbedder(new BrowserPluginMsg_LoadStop(instance_id())); |
} |
+void BrowserPluginGuest::DidUpdateFrameName(int frame_id, |
+ bool is_top_level, |
+ const std::string& name, |
+ RenderViewHost* render_view_host) { |
+ if (!is_top_level) |
+ return; |
+ |
+ SendMessageToEmbedder(new BrowserPluginMsg_UpdatedName(instance_id_, name)); |
+} |
+ |
void BrowserPluginGuest::RenderViewReady() { |
// TODO(fsamuel): Investigate whether it's possible to update state earlier |
// here (see http://crbug.com/158151). |
@@ -627,8 +637,6 @@ void BrowserPluginGuest::RenderViewReady() { |
else |
rvh->DisableAutoResize(damage_view_size_); |
- Send(new ViewMsg_SetName(routing_id(), name_)); |
- |
RenderWidgetHostImpl::From(rvh)-> |
set_hung_renderer_delay_ms(guest_hang_timeout_); |
} |
@@ -713,7 +721,6 @@ bool BrowserPluginGuest::OnMessageReceived(const IPC::Message& message) { |
IPC_MESSAGE_HANDLER(ViewHostMsg_TakeFocus, OnTakeFocus) |
IPC_MESSAGE_HANDLER(ViewHostMsg_UnlockMouse, OnUnlockMouse) |
IPC_MESSAGE_HANDLER(DragHostMsg_UpdateDragCursor, OnUpdateDragCursor) |
- IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateFrameName, OnUpdateFrameName) |
IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateRect, OnUpdateRect) |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
@@ -742,7 +749,7 @@ void BrowserPluginGuest::Attach( |
// The guest's frame name takes precedence over the BrowserPlugin's name. |
// The guest's frame name is assigned in |
// BrowserPluginGuest::WebContentsCreated. |
- if (!name_.empty()) |
+ if (!GetWebContents()->GetWindowName().empty()) |
params.name.clear(); |
Initialize(embedder_web_contents, params); |
@@ -763,7 +770,7 @@ void BrowserPluginGuest::Attach( |
ack_params.storage_partition_id = site_url.query(); |
ack_params.persist_storage = |
site_url.path().find("persist") != std::string::npos; |
- ack_params.name = name_; |
+ ack_params.name = GetWebContents()->GetWindowName(); |
SendMessageToEmbedder( |
new BrowserPluginMsg_Attach_ACK(instance_id_, ack_params)); |
} |
@@ -955,10 +962,7 @@ void BrowserPluginGuest::OnSetFocus(int instance_id, bool focused) { |
} |
void BrowserPluginGuest::OnSetName(int instance_id, const std::string& name) { |
- if (name == name_) |
- return; |
- name_ = name; |
- Send(new ViewMsg_SetName(routing_id(), name)); |
+ GetWebContents()->SetWindowName(name); |
Charlie Reis
2013/04/18 21:26:51
Again, why is this needed? If we change the name
|
} |
void BrowserPluginGuest::OnSetSize( |
@@ -1123,16 +1127,6 @@ void BrowserPluginGuest::OnUpdateDragCursor( |
view->UpdateDragCursor(operation); |
} |
-void BrowserPluginGuest::OnUpdateFrameName(int frame_id, |
- bool is_top_level, |
- const std::string& name) { |
- if (!is_top_level) |
- return; |
- |
- name_ = name; |
- SendMessageToEmbedder(new BrowserPluginMsg_UpdatedName(instance_id_, name)); |
-} |
- |
void BrowserPluginGuest::RequestMediaAccessPermission( |
WebContents* web_contents, |
const MediaStreamRequest& request, |