Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(762)

Side by Side Diff: chrome/browser/extensions/default_apps.cc

Issue 4708002: Add a histogram for tracking web store promo (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: reorder methods in app_launcher_handler Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/dom_ui/new_tab_ui.cc ('k') | chrome/browser/resources/new_new_tab.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/extensions/default_apps.h" 5 #include "chrome/browser/extensions/default_apps.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/metrics/histogram.h"
8 #include "chrome/browser/prefs/pref_service.h" 9 #include "chrome/browser/prefs/pref_service.h"
9 #include "chrome/common/chrome_switches.h" 10 #include "chrome/common/chrome_switches.h"
10 #include "chrome/common/pref_names.h" 11 #include "chrome/common/pref_names.h"
11 12
12 const int DefaultApps::kAppsPromoCounterMax = 10; 13 const int DefaultApps::kAppsPromoCounterMax = 10;
13 14
14 // static 15 // static
15 void DefaultApps::RegisterUserPrefs(PrefService* prefs) { 16 void DefaultApps::RegisterUserPrefs(PrefService* prefs) {
16 prefs->RegisterBooleanPref(prefs::kDefaultAppsInstalled, false); 17 prefs->RegisterBooleanPref(prefs::kDefaultAppsInstalled, false);
17 prefs->RegisterIntegerPref(prefs::kAppsPromoCounter, 0); 18 prefs->RegisterIntegerPref(prefs::kAppsPromoCounter, 0);
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 NOTREACHED() << "Should not show promo until default apps are installed."; 78 NOTREACHED() << "Should not show promo until default apps are installed.";
78 return; 79 return;
79 } 80 }
80 81
81 int promo_counter = GetPromoCounter(); 82 int promo_counter = GetPromoCounter();
82 if (promo_counter == kAppsPromoCounterMax) { 83 if (promo_counter == kAppsPromoCounterMax) {
83 NOTREACHED() << "Promo has already been shown the maximum number of times."; 84 NOTREACHED() << "Promo has already been shown the maximum number of times.";
84 return; 85 return;
85 } 86 }
86 87
87 if (promo_counter < kAppsPromoCounterMax) 88 if (promo_counter < kAppsPromoCounterMax) {
89 if (promo_counter + 1 == kAppsPromoCounterMax)
90 UMA_HISTOGRAM_ENUMERATION(extension_misc::kAppsPromoHistogram,
91 extension_misc::PROMO_EXPIRE,
92 extension_misc::PROMO_BUCKET_BOUNDARY);
88 SetPromoCounter(++promo_counter); 93 SetPromoCounter(++promo_counter);
89 else 94 } else {
90 SetPromoHidden(); 95 SetPromoHidden();
96 }
91 } 97 }
92 98
93 void DefaultApps::SetPromoHidden() { 99 void DefaultApps::SetPromoHidden() {
94 SetPromoCounter(kAppsPromoCounterMax); 100 SetPromoCounter(kAppsPromoCounterMax);
95 } 101 }
96 102
97 int DefaultApps::GetPromoCounter() const { 103 int DefaultApps::GetPromoCounter() const {
98 return prefs_->GetInteger(prefs::kAppsPromoCounter); 104 return prefs_->GetInteger(prefs::kAppsPromoCounter);
99 } 105 }
100 106
101 void DefaultApps::SetPromoCounter(int val) { 107 void DefaultApps::SetPromoCounter(int val) {
102 prefs_->SetInteger(prefs::kAppsPromoCounter, val); 108 prefs_->SetInteger(prefs::kAppsPromoCounter, val);
103 prefs_->ScheduleSavePersistentPrefs(); 109 prefs_->ScheduleSavePersistentPrefs();
104 } 110 }
105 111
106 bool DefaultApps::GetDefaultAppsInstalled() const { 112 bool DefaultApps::GetDefaultAppsInstalled() const {
107 return prefs_->GetBoolean(prefs::kDefaultAppsInstalled); 113 return prefs_->GetBoolean(prefs::kDefaultAppsInstalled);
108 } 114 }
109 115
110 void DefaultApps::SetDefaultAppsInstalled(bool val) { 116 void DefaultApps::SetDefaultAppsInstalled(bool val) {
111 prefs_->SetBoolean(prefs::kDefaultAppsInstalled, val); 117 prefs_->SetBoolean(prefs::kDefaultAppsInstalled, val);
112 prefs_->ScheduleSavePersistentPrefs(); 118 prefs_->ScheduleSavePersistentPrefs();
113 } 119 }
OLDNEW
« no previous file with comments | « chrome/browser/dom_ui/new_tab_ui.cc ('k') | chrome/browser/resources/new_new_tab.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698