Index: content/public/browser/navigation_handle.h |
diff --git a/content/public/browser/navigation_handle.h b/content/public/browser/navigation_handle.h |
index 8770777171da92bf15cb92d1d4a0117004c22115..4c0694eda5d3d96986c554f976b7aaeaa021ac2c 100644 |
--- a/content/public/browser/navigation_handle.h |
+++ b/content/public/browser/navigation_handle.h |
@@ -23,6 +23,7 @@ namespace content { |
class NavigationData; |
class NavigationThrottle; |
class RenderFrameHost; |
+class SiteInstance; |
class WebContents; |
// A NavigationHandle tracks information related to a single navigation. |
@@ -48,6 +49,11 @@ class CONTENT_EXPORT NavigationHandle { |
// virtual URL is prefixed with "view-source:". |
virtual const GURL& GetURL() = 0; |
+ // Returns the SiteInstance that started the request. |
+ // If a frame in SiteInstance A navigates a frame in SiteInstance B to a URL |
+ // in SiteInstance C, then this returns B. |
+ virtual SiteInstance* GetStartingSiteInstance() = 0; |
+ |
// Whether the navigation is taking place in the main frame or in a subframe. |
// This remains constant over the navigation lifetime. |
virtual bool IsInMainFrame() = 0; |