Index: extensions/browser/extension_message_filter.cc |
diff --git a/extensions/browser/extension_message_filter.cc b/extensions/browser/extension_message_filter.cc |
index 224a3f8d9f59daf057160a13794c4aae73322849..b2520427d872879a0232d35aeda836a26a8246a2 100644 |
--- a/extensions/browser/extension_message_filter.cc |
+++ b/extensions/browser/extension_message_filter.cc |
@@ -177,10 +177,8 @@ void ExtensionMessageFilter::OnExtensionAttachGuest( |
void ExtensionMessageFilter::OnExtensionCreateMimeHandlerViewGuest( |
int render_frame_id, |
- const std::string& src, |
- const std::string& content_url, |
- const std::string& mime_type, |
- int element_instance_id) { |
+ int element_instance_id, |
+ const base::DictionaryValue& create_params) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
GuestViewManager* manager = |
GuestViewManager::FromBrowserContext(browser_context_); |
@@ -194,17 +192,22 @@ void ExtensionMessageFilter::OnExtensionCreateMimeHandlerViewGuest( |
if (!embedder_web_contents) |
return; |
+ std::string src; |
+ int element_width; |
+ int element_height; |
+ create_params.GetString(mime_handler_view::kSrc, &src); |
+ create_params.GetInteger(guestview::kElementWidth, &element_width); |
+ create_params.GetInteger(guestview::kElementHeight, &element_height); |
+ gfx::Size element_size(element_width, element_height); |
+ |
GuestViewManager::WebContentsCreatedCallback callback = |
base::Bind(&ExtensionMessageFilter::MimeHandlerViewGuestCreatedCallback, |
this, |
element_instance_id, |
render_process_id_, |
render_frame_id, |
- src); |
- base::DictionaryValue create_params; |
- create_params.SetString(mime_handler_view::kMimeType, mime_type); |
- create_params.SetString(mime_handler_view::kSrc, src); |
- create_params.SetString(mime_handler_view::kContentUrl, content_url); |
+ src, |
+ element_size); |
manager->CreateGuest(MimeHandlerViewGuest::Type, |
embedder_web_contents, |
create_params, |
@@ -296,6 +299,7 @@ void ExtensionMessageFilter::MimeHandlerViewGuestCreatedCallback( |
int embedder_render_process_id, |
int embedder_render_frame_id, |
const std::string& src, |
+ const gfx::Size& element_size, |
content::WebContents* web_contents) { |
GuestViewManager* manager = |
GuestViewManager::FromBrowserContext(browser_context_); |
@@ -315,6 +319,8 @@ void ExtensionMessageFilter::MimeHandlerViewGuestCreatedCallback( |
base::DictionaryValue attach_params; |
attach_params.SetString(mime_handler_view::kSrc, src); |
+ attach_params.SetInteger(guestview::kElementWidth, element_size.width()); |
+ attach_params.SetInteger(guestview::kElementHeight, element_size.height()); |
manager->AttachGuest(embedder_render_process_id, |
rfh->GetRenderViewHost()->GetRoutingID(), |
element_instance_id, |