summaryrefslogtreecommitdiffstats
path: root/chrome/browser/auto_launch_trial.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/auto_launch_trial.h')
-rw-r--r--chrome/browser/auto_launch_trial.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/chrome/browser/auto_launch_trial.h b/chrome/browser/auto_launch_trial.h
new file mode 100644
index 0000000..69a3e9d
--- /dev/null
+++ b/chrome/browser/auto_launch_trial.h
@@ -0,0 +1,51 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_AUTO_LAUNCH_TRIAL_H_
+#define CHROME_BROWSER_AUTO_LAUNCH_TRIAL_H_
+#pragma once
+
+// Strings used with the "auto launching Chrome at computer startup" trial. If
+// the field trial is running then...
+// base::FieldTrialList::TrialExists(kAutoLaunchTrial_Name) returns true.
+//
+// The field trial consists of two groups of users: those that auto-launch
+// Chrome at startup and those that don't. The group_name() of the field
+// trial object is used to determine the group that the user belongs to.
+//
+// The field trial is setup in ChromeBrowserMainParts::AutoLaunchFieldTrial()
+// based on the user's brand code:
+//
+// - brand RNGP auto launches Chrome on computer startup.
+// - brand RNGQ does not.
+// - any other brand code does whatever comes natural to it.
+
+extern const char kAutoLaunchTrialName[];
+extern const char kAutoLaunchTrialAutoLaunchGroup[];
+extern const char kAutoLaunchTrialControlGroup[];
+
+namespace auto_launch_trial {
+
+// The possible responses for the auto-launch infobar.
+enum InfobarMetricResponse {
+ INFOBAR_CUT_IT_OUT = 0,
+ INFOBAR_OK,
+ INFOBAR_IGNORE,
+};
+
+// Whether the auto-launch experiment is active and the user is part of it.
+bool IsInAutoLaunchGroup();
+
+// Updates UMA to reflect user changing the auto-launch setting.
+void UpdateToggleAutoLaunchMetric(bool auto_launch);
+
+// Updates UMA to reflect user responses to the infobar.
+void UpdateInfobarResponseMetric(InfobarMetricResponse response);
+
+// Updates UMA to reflect that the infobar has been shown.
+void UpdateInfobarShownMetric();
+
+} // namespace auto_launch_trial
+
+#endif // CHROME_BROWSER_AUTO_LAUNCH_TRIAL_H_