Index: chrome/renderer/chrome_render_thread_observer.h |
diff --git a/chrome/renderer/chrome_render_thread_observer.h b/chrome/renderer/chrome_render_thread_observer.h |
index ed571ae98d8222d1430c8d70a2f2f5fe60e04525..d93aec0e0122f0c53f43af4813ec886f31eb9ab8 100644 |
--- a/chrome/renderer/chrome_render_thread_observer.h |
+++ b/chrome/renderer/chrome_render_thread_observer.h |
@@ -11,6 +11,7 @@ |
#include "base/compiler_specific.h" |
#include "base/macros.h" |
#include "base/memory/weak_ptr.h" |
+#include "base/metrics/field_trial.h" |
#include "chrome/common/variations/child_process_field_trial_syncer.h" |
#include "components/content_settings/core/common/content_settings.h" |
#include "content/public/renderer/render_thread_observer.h" |
@@ -30,7 +31,8 @@ class ResourceDispatcherDelegate; |
// a RenderView) for Chrome specific messages that the content layer doesn't |
// happen. If a few messages are related, they should probably have their own |
// observer. |
-class ChromeRenderThreadObserver : public content::RenderThreadObserver { |
+class ChromeRenderThreadObserver : public content::RenderThreadObserver, |
+ public base::FieldTrialList::Observer { |
public: |
ChromeRenderThreadObserver(); |
~ChromeRenderThreadObserver() override; |
@@ -49,6 +51,10 @@ class ChromeRenderThreadObserver : public content::RenderThreadObserver { |
// content::RenderThreadObserver: |
bool OnControlMessageReceived(const IPC::Message& message) override; |
+ // base::FieldTrialList::Observer: |
+ void OnFieldTrialGroupFinalized(const std::string& trial_name, |
+ const std::string& group_name) override; |
+ |
void OnSetIsIncognitoProcess(bool is_incognito_process); |
void OnSetContentSettingsForCurrentURL( |
const GURL& url, const ContentSettings& content_settings); |