Chromium Code Reviews| Index: chrome/browser/ui/sync/one_click_signin_sync_starter.cc |
| diff --git a/chrome/browser/ui/sync/one_click_signin_sync_starter.cc b/chrome/browser/ui/sync/one_click_signin_sync_starter.cc |
| index d1f4e7961c2df121f4f8893f2e40426882192479..5077655224d71e4b67709f152c27261a0058551b 100644 |
| --- a/chrome/browser/ui/sync/one_click_signin_sync_starter.cc |
| +++ b/chrome/browser/ui/sync/one_click_signin_sync_starter.cc |
| @@ -4,6 +4,7 @@ |
| #include "chrome/browser/ui/sync/one_click_signin_sync_starter.h" |
| +#include "base/metrics/histogram.h" |
| #include "base/prefs/pref_service.h" |
| #include "base/strings/utf_string_conversions.h" |
| #include "chrome/browser/browser_process.h" |
| @@ -46,6 +47,25 @@ |
| #include "ui/base/l10n/l10n_util.h" |
| #include "ui/base/resource/resource_bundle.h" |
| +namespace { |
| + |
| +// UMA histogram for tracking what users do when presented with the signin |
| +// screen. |
| +enum SigninChoice { |
| + SIGNIN_CHOICE_CANCEL, |
|
Thiemo Nagel
2014/07/18 12:12:26
I'd suggest adding explicit integer values because
Andrew T Wilson (Slow)
2014/07/24 15:25:56
Done.
|
| + SIGNIN_CHOICE_CONTINUE, |
| + SIGNIN_CHOICE_NEW_PROFILE, |
| + SIGNIN_CHOICE_SIZE, |
|
Thiemo Nagel
2014/07/18 12:12:26
Could you please document that this is a counter a
Andrew T Wilson (Slow)
2014/07/24 15:25:56
Done.
|
| +}; |
| + |
| +void SetUserChoiceHistogram(SigninChoice choice) { |
| + UMA_HISTOGRAM_ENUMERATION("Enterprise.UserSigninChoice", |
| + choice, |
| + SIGNIN_CHOICE_SIZE); |
| +} |
| + |
| +} // namespace |
| + |
| OneClickSigninSyncStarter::OneClickSigninSyncStarter( |
| Profile* profile, |
| Browser* browser, |
| @@ -150,16 +170,19 @@ OneClickSigninSyncStarter::SigninDialogDelegate::~SigninDialogDelegate() { |
| } |
| void OneClickSigninSyncStarter::SigninDialogDelegate::OnCancelSignin() { |
| + SetUserChoiceHistogram(SIGNIN_CHOICE_CANCEL); |
| if (sync_starter_ != NULL) |
| sync_starter_->CancelSigninAndDelete(); |
| } |
| void OneClickSigninSyncStarter::SigninDialogDelegate::OnContinueSignin() { |
| + SetUserChoiceHistogram(SIGNIN_CHOICE_CONTINUE); |
| if (sync_starter_ != NULL) |
| sync_starter_->LoadPolicyWithCachedCredentials(); |
| } |
| void OneClickSigninSyncStarter::SigninDialogDelegate::OnSigninWithNewProfile() { |
| + SetUserChoiceHistogram(SIGNIN_CHOICE_NEW_PROFILE); |
| if (sync_starter_ != NULL) |
| sync_starter_->CreateNewSignedInProfile(); |
| } |