Index: extensions/browser/guest_view/guest_view_manager.cc |
diff --git a/extensions/browser/guest_view/guest_view_manager.cc b/extensions/browser/guest_view/guest_view_manager.cc |
index b7ddae913cb8c7fbf2a050471b3d5b70b9b56817..8ea6d96e4b1ff3b8664560e833743f86c7832c41 100644 |
--- a/extensions/browser/guest_view/guest_view_manager.cc |
+++ b/extensions/browser/guest_view/guest_view_manager.cc |
@@ -186,6 +186,14 @@ bool GuestViewManager::ForEachGuest(WebContents* owner_web_contents, |
return false; |
} |
+WebContents* GuestViewManager::GetFullPageGuest( |
+ WebContents* embedder_web_contents) { |
+ WebContents* result = nullptr; |
+ ForEachGuest(embedder_web_contents, |
+ base::Bind(&GuestViewManager::GetFullPageGuestHelper, &result)); |
+ return result; |
+} |
+ |
void GuestViewManager::AddGuest(int guest_instance_id, |
WebContents* guest_web_contents) { |
CHECK(!ContainsKey(guest_web_contents_by_instance_id_, guest_instance_id)); |
@@ -258,6 +266,18 @@ bool GuestViewManager::CanUseGuestInstanceID(int guest_instance_id) { |
return !ContainsKey(removed_instance_ids_, guest_instance_id); |
} |
+// static |
+bool GuestViewManager::GetFullPageGuestHelper( |
+ content::WebContents** result, |
+ content::WebContents* guest_web_contents) { |
+ auto guest_view = GuestViewBase::FromWebContents(guest_web_contents); |
+ if (guest_view && guest_view->is_full_page_plugin()) { |
+ *result = guest_web_contents; |
+ return true; |
+ } |
+ return false; |
+} |
+ |
bool GuestViewManager::CanEmbedderAccessInstanceID( |
int embedder_render_process_id, |
int guest_instance_id) { |