| Index: chrome/browser/ui/startup/default_browser_infobar_delegate.cc
|
| diff --git a/chrome/browser/ui/startup/default_browser_infobar_delegate.cc b/chrome/browser/ui/startup/default_browser_infobar_delegate.cc
|
| index bab51d959d87c8842e6288f32c8637ee6735f2db..b9175c728460200fdd5fb81a6dc20033b42f6610 100644
|
| --- a/chrome/browser/ui/startup/default_browser_infobar_delegate.cc
|
| +++ b/chrome/browser/ui/startup/default_browser_infobar_delegate.cc
|
| @@ -57,6 +57,7 @@ DefaultBrowserInfoBarDelegate::DefaultBrowserInfoBarDelegate(Profile* profile)
|
| : ConfirmInfoBarDelegate(),
|
| profile_(profile),
|
| should_expire_(false),
|
| + action_taken_(false),
|
| weak_factory_(this) {
|
| // We want the info-bar to stick-around for few seconds and then be hidden
|
| // on the next navigation after that.
|
| @@ -66,7 +67,13 @@ DefaultBrowserInfoBarDelegate::DefaultBrowserInfoBarDelegate(Profile* profile)
|
| base::TimeDelta::FromSeconds(8));
|
| }
|
|
|
| -DefaultBrowserInfoBarDelegate::~DefaultBrowserInfoBarDelegate() = default;
|
| +DefaultBrowserInfoBarDelegate::~DefaultBrowserInfoBarDelegate() {
|
| + if (!action_taken_) {
|
| + UMA_HISTOGRAM_ENUMERATION("DefaultBrowser.InfoBar.UserInteraction",
|
| + IGNORE_INFO_BAR,
|
| + NUM_INFO_BAR_USER_INTERACTION_TYPES);
|
| + }
|
| +}
|
|
|
| void DefaultBrowserInfoBarDelegate::AllowExpiry() {
|
| should_expire_ = true;
|
| @@ -127,10 +134,11 @@ bool DefaultBrowserInfoBarDelegate::ShouldExpire(
|
| }
|
|
|
| void DefaultBrowserInfoBarDelegate::InfoBarDismissed() {
|
| + action_taken_ = true;
|
| content::RecordAction(
|
| base::UserMetricsAction("DefaultBrowserInfoBar_Dismiss"));
|
| UMA_HISTOGRAM_ENUMERATION("DefaultBrowser.InfoBar.UserInteraction",
|
| - IGNORE_INFO_BAR,
|
| + DISMISS_INFO_BAR,
|
| NUM_INFO_BAR_USER_INTERACTION_TYPES);
|
| }
|
|
|
| @@ -164,6 +172,7 @@ bool DefaultBrowserInfoBarDelegate::OKButtonTriggersUACPrompt() const {
|
| }
|
|
|
| bool DefaultBrowserInfoBarDelegate::Accept() {
|
| + action_taken_ = true;
|
| content::RecordAction(
|
| base::UserMetricsAction("DefaultBrowserInfoBar_Accept"));
|
| UMA_HISTOGRAM_ENUMERATION("DefaultBrowser.InfoBar.UserInteraction",
|
| @@ -190,6 +199,7 @@ bool DefaultBrowserInfoBarDelegate::Accept() {
|
| }
|
|
|
| bool DefaultBrowserInfoBarDelegate::Cancel() {
|
| + action_taken_ = true;
|
| // This can get reached in tests where profile_ is null.
|
| if (profile_)
|
| chrome::DefaultBrowserPromptDeclined(profile_);
|
|
|