Index: content/public/browser/content_browser_client.h |
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h |
index 2c6734cf1f7c073f8180a46bb76201434db02647..55569fb01dbe9cac48e083d8314ce33afe4ec161 100644 |
--- a/content/public/browser/content_browser_client.h |
+++ b/content/public/browser/content_browser_client.h |
@@ -16,6 +16,7 @@ |
#include "base/memory/scoped_vector.h" |
#include "base/values.h" |
#include "content/public/browser/certificate_request_result_type.h" |
+#include "content/public/browser/navigation_throttle.h" |
#include "content/public/common/content_client.h" |
#include "content/public/common/media_stream_request.h" |
#include "content/public/common/resource_type.h" |
@@ -96,6 +97,7 @@ |
class ExternalVideoSurfaceContainer; |
class LocationProvider; |
class MediaObserver; |
+class NavigationHandle; |
class NavigatorConnectContext; |
class NavigatorConnectServiceFactory; |
class PlatformNotificationService; |
@@ -669,6 +671,14 @@ |
// Allows the embedder to record |metric| for a specific |url|. |
virtual void RecordURLMetric(const std::string& metric, const GURL& url) {} |
+ // Allows the embedder to register one or more NavigationThrottles for the |
+ // navigation indicated by |navigation_handle|. A NavigationThrottle is used |
+ // to control the flow of a navigation on the UI thread. The embedder is |
+ // guaranteed that the throttles will be executed in the order they were |
+ // provided. |
+ virtual ScopedVector<NavigationThrottle> CreateThrottlesForNavigation( |
+ NavigationHandle* navigation_handle); |
+ |
// Populates |mappings| with all files that need to be mapped before launching |
// a child process. |
#if defined(OS_ANDROID) |