Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: extensions/browser/guest_view/extensions_guest_view_message_filter.cc

Issue 1066563006: GuestView: Move GuestViewManager extension dependencies to ExtensionsGuestViewManagerDelegate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@extensions_guest_view_message_filter
Patch Set: Fixed tests Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/browser/guest_view/extensions_guest_view_message_filter.cc
diff --git a/extensions/browser/guest_view/extensions_guest_view_message_filter.cc b/extensions/browser/guest_view/extensions_guest_view_message_filter.cc
index 215bf816af4b2187607f1edd7445604caaf8a230..7f528400de4e88ac4697b04aaceba3e4d1a3424f 100644
--- a/extensions/browser/guest_view/extensions_guest_view_message_filter.cc
+++ b/extensions/browser/guest_view/extensions_guest_view_message_filter.cc
@@ -8,6 +8,7 @@
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/render_view_host.h"
+#include "extensions/browser/guest_view/extensions_guest_view_manager_delegate.h"
#include "extensions/browser/guest_view/guest_view_base.h"
#include "extensions/browser/guest_view/guest_view_manager.h"
#include "extensions/browser/guest_view/mime_handler_view/mime_handler_view_constants.h"
@@ -22,6 +23,7 @@ using content::BrowserContext;
using content::BrowserThread;
using content::RenderFrameHost;
using content::WebContents;
+using guestview::GuestViewManagerDelegate;
namespace extensions {
@@ -93,7 +95,12 @@ void ExtensionsGuestViewMessageFilter::OnCreateMimeHandlerViewGuest(
// Since we are creating a new guest, we will create a GuestViewManager
// if we don't already have one.
auto manager = GuestViewManager::FromBrowserContext(browser_context_);
- DCHECK(manager);
+ if (!manager) {
+ manager = GuestViewManager::CreateWithDelegate(
+ browser_context_,
+ scoped_ptr<GuestViewManagerDelegate>(
+ new ExtensionsGuestViewManagerDelegate(browser_context_)));
+ }
auto rfh = RenderFrameHost::FromID(render_process_id_, render_frame_id);
auto embedder_web_contents = WebContents::FromRenderFrameHost(rfh);
@@ -124,8 +131,7 @@ void ExtensionsGuestViewMessageFilter::OnResizeGuest(
int render_frame_id,
int element_instance_id,
const gfx::Size& new_size) {
- auto manager =
- GuestViewManager::FromBrowserContextIfAvailable(browser_context_);
+ auto manager = GuestViewManager::FromBrowserContext(browser_context_);
// We should have a GuestViewManager at this point. If we don't then the
// embedder is misbehaving.
if (!manager)
@@ -162,8 +168,7 @@ void ExtensionsGuestViewMessageFilter::MimeHandlerViewGuestCreatedCallback(
base::DictionaryValue attach_params;
attach_params.SetInteger(guestview::kElementWidth, element_size.width());
attach_params.SetInteger(guestview::kElementHeight, element_size.height());
- auto manager =
- GuestViewManager::FromBrowserContextIfAvailable(browser_context_);
+ auto manager = GuestViewManager::FromBrowserContext(browser_context_);
CHECK(manager);
manager->AttachGuest(embedder_render_process_id,
element_instance_id,

Powered by Google App Engine
This is Rietveld 408576698