Index: extensions/browser/api/guest_view/guest_view_internal_api.cc |
diff --git a/extensions/browser/api/guest_view/guest_view_internal_api.cc b/extensions/browser/api/guest_view/guest_view_internal_api.cc |
index bfe4fb56e19e5b2cf4c2225f494c33f82fe8c119..aea9c8ed8fc58d4a2c5090b3c8b57d13f1756a46 100644 |
--- a/extensions/browser/api/guest_view/guest_view_internal_api.cc |
+++ b/extensions/browser/api/guest_view/guest_view_internal_api.cc |
@@ -6,12 +6,15 @@ |
#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/common/api/guest_view_internal.h" |
#include "extensions/common/guest_view/guest_view_constants.h" |
#include "extensions/common/permissions/permissions_data.h" |
+using guestview::GuestViewManagerDelegate; |
+ |
namespace guest_view_internal = extensions::core_api::guest_view_internal; |
namespace extensions { |
@@ -31,6 +34,12 @@ bool GuestViewInternalCreateGuestFunction::RunAsync() { |
// if we don't already have one. |
GuestViewManager* guest_view_manager = |
GuestViewManager::FromBrowserContext(browser_context()); |
+ if (!guest_view_manager) { |
+ guest_view_manager = GuestViewManager::CreateWithDelegate( |
+ browser_context(), |
+ scoped_ptr<GuestViewManagerDelegate>( |
+ new ExtensionsGuestViewManagerDelegate(context_))); |
+ } |
GuestViewManager::WebContentsCreatedCallback callback = |
base::Bind(&GuestViewInternalCreateGuestFunction::CreateGuestCallback, |