Index: chrome/browser/chrome_browser_field_trials.cc |
diff --git a/chrome/browser/chrome_browser_field_trials.cc b/chrome/browser/chrome_browser_field_trials.cc |
index 0a0c9a8c8fd5b9a6133edb0de004dbab1364f459..3c53c5612c41fb5c3edf3d21fc20ab0dcb49e231 100644 |
--- a/chrome/browser/chrome_browser_field_trials.cc |
+++ b/chrome/browser/chrome_browser_field_trials.cc |
@@ -6,8 +6,11 @@ |
#include <string> |
+#include "apps/field_trial_names.h" |
+#include "apps/pref_names.h" |
#include "base/command_line.h" |
#include "base/metrics/field_trial.h" |
+#include "base/prefs/pref_service.h" |
#include "base/string_util.h" |
#include "base/stringprintf.h" |
#include "base/strings/string_number_conversions.h" |
@@ -26,6 +29,7 @@ |
#include "chrome/common/chrome_version_info.h" |
#include "chrome/common/metrics/variations/uniformity_field_trials.h" |
#include "chrome/common/metrics/variations/variations_util.h" |
+#include "chrome/common/pref_names.h" |
#include "net/socket/client_socket_pool_base.h" |
#include "net/spdy/spdy_session.h" |
#include "ui/base/layout.h" |
@@ -56,16 +60,19 @@ ChromeBrowserFieldTrials::ChromeBrowserFieldTrials( |
ChromeBrowserFieldTrials::~ChromeBrowserFieldTrials() { |
} |
-void ChromeBrowserFieldTrials::SetupFieldTrials( |
- const base::Time& install_time) { |
+void ChromeBrowserFieldTrials::SetupFieldTrials(PrefService* local_state) { |
+ const base::Time install_time = base::Time::FromTimeT( |
+ local_state->GetInt64(prefs::kInstallDate)); |
+ DCHECK(!install_time.is_null()); |
chrome_variations::SetupUniformityFieldTrials(install_time); |
SetUpSimpleCacheFieldTrial(); |
#if !defined(OS_ANDROID) |
- SetupDesktopFieldTrials(); |
+ SetupDesktopFieldTrials(local_state); |
#endif // defined(OS_ANDROID) |
} |
-void ChromeBrowserFieldTrials::SetupDesktopFieldTrials() { |
+void ChromeBrowserFieldTrials::SetupDesktopFieldTrials( |
+ PrefService* local_state) { |
prerender::ConfigurePrefetchAndPrerender(parsed_command_line_); |
SpdyFieldTrial(); |
WarmConnectionFieldTrial(); |
@@ -80,6 +87,15 @@ void ChromeBrowserFieldTrials::SetupDesktopFieldTrials() { |
OneClickSigninHelper::InitializeFieldTrial(); |
#endif |
InstantiateDynamicTrials(); |
+ SetupAppLauncherFieldTrial(local_state); |
+} |
+ |
+void ChromeBrowserFieldTrials::SetupAppLauncherFieldTrial( |
+ PrefService* local_state) { |
+ if (base::FieldTrialList::FindFullName(apps::kLauncherPromoTrialName) == |
+ apps::kResetShowLauncherPromoPrefGroupName) { |
+ local_state->SetBoolean(apps::prefs::kShowAppLauncherPromo, true); |
+ } |
} |
// When --use-spdy not set, users will be in A/B test for spdy. |