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

Side by Side Diff: chrome/browser/rlz/rlz.cc

Issue 8342048: Make NotificationService an interface in the content namespace, and switch callers to use it. Mov... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 2 months 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/renderer_host/web_cache_manager.cc ('k') | chrome/browser/rlz/rlz_unittest.cc » ('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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 // This code glues the RLZ library DLL with Chrome. It allows Chrome to work 5 // This code glues the RLZ library DLL with Chrome. It allows Chrome to work
6 // with or without the DLL being present. If the DLL is not present the 6 // with or without the DLL being present. If the DLL is not present the
7 // functions do nothing and just return false. 7 // functions do nothing and just return false.
8 8
9 #include "chrome/browser/rlz/rlz.h" 9 #include "chrome/browser/rlz/rlz.h"
10 10
(...skipping 15 matching lines...) Expand all
26 #include "chrome/browser/google/google_util.h" 26 #include "chrome/browser/google/google_util.h"
27 #include "chrome/browser/search_engines/template_url.h" 27 #include "chrome/browser/search_engines/template_url.h"
28 #include "chrome/browser/search_engines/template_url_service.h" 28 #include "chrome/browser/search_engines/template_url_service.h"
29 #include "chrome/browser/search_engines/template_url_service_factory.h" 29 #include "chrome/browser/search_engines/template_url_service_factory.h"
30 #include "chrome/common/chrome_notification_types.h" 30 #include "chrome/common/chrome_notification_types.h"
31 #include "chrome/common/chrome_paths.h" 31 #include "chrome/common/chrome_paths.h"
32 #include "chrome/common/env_vars.h" 32 #include "chrome/common/env_vars.h"
33 #include "chrome/installer/util/google_update_settings.h" 33 #include "chrome/installer/util/google_update_settings.h"
34 #include "content/browser/browser_thread.h" 34 #include "content/browser/browser_thread.h"
35 #include "content/browser/tab_contents/navigation_entry.h" 35 #include "content/browser/tab_contents/navigation_entry.h"
36 #include "content/common/notification_service.h" 36 #include "content/public/browser/notification_service.h"
37 37
38 namespace { 38 namespace {
39 39
40 void RecordProductEvents(bool first_run, bool google_default_search, 40 void RecordProductEvents(bool first_run, bool google_default_search,
41 bool google_default_homepage, bool already_ran, 41 bool google_default_homepage, bool already_ran,
42 bool omnibox_used, bool homepage_used) { 42 bool omnibox_used, bool homepage_used) {
43 // Record the installation of chrome. We call this all the time but the rlz 43 // Record the installation of chrome. We call this all the time but the rlz
44 // lib should ingore all but the first one. 44 // lib should ingore all but the first one.
45 rlz_lib::RecordProductEvent(rlz_lib::CHROME, 45 rlz_lib::RecordProductEvent(rlz_lib::CHROME,
46 rlz_lib::CHROME_OMNIBOX, 46 rlz_lib::CHROME_OMNIBOX,
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 const int kMaxDelay = 200 * 1000; 172 const int kMaxDelay = 200 * 1000;
173 const int kMinDelay = 20 * 1000; 173 const int kMinDelay = 20 * 1000;
174 174
175 delay *= 1000; 175 delay *= 1000;
176 delay = (delay < kMinDelay) ? kMinDelay : delay; 176 delay = (delay < kMinDelay) ? kMinDelay : delay;
177 delay = (delay > kMaxDelay) ? kMaxDelay : delay; 177 delay = (delay > kMaxDelay) ? kMaxDelay : delay;
178 178
179 // Register for notifications from the omnibox so that we can record when 179 // Register for notifications from the omnibox so that we can record when
180 // the user performs a first search. 180 // the user performs a first search.
181 registrar_.Add(this, chrome::NOTIFICATION_OMNIBOX_OPENED_URL, 181 registrar_.Add(this, chrome::NOTIFICATION_OMNIBOX_OPENED_URL,
182 NotificationService::AllSources()); 182 content::NotificationService::AllSources());
183 // If instant is enabled we'll start searching as soon as the user starts 183 // If instant is enabled we'll start searching as soon as the user starts
184 // typing in the omnibox (which triggers INSTANT_CONTROLLER_UPDATED). 184 // typing in the omnibox (which triggers INSTANT_CONTROLLER_UPDATED).
185 registrar_.Add(this, chrome::NOTIFICATION_INSTANT_CONTROLLER_UPDATED, 185 registrar_.Add(this, chrome::NOTIFICATION_INSTANT_CONTROLLER_UPDATED,
186 NotificationService::AllSources()); 186 content::NotificationService::AllSources());
187 187
188 // Register for notifications from navigations, to see if the user has used 188 // Register for notifications from navigations, to see if the user has used
189 // the home page. 189 // the home page.
190 registrar_.Add(this, content::NOTIFICATION_NAV_ENTRY_PENDING, 190 registrar_.Add(this, content::NOTIFICATION_NAV_ENTRY_PENDING,
191 NotificationService::AllSources()); 191 content::NotificationService::AllSources());
192 192
193 ScheduleDelayedInit(delay); 193 ScheduleDelayedInit(delay);
194 194
195 return true; 195 return true;
196 } 196 }
197 197
198 void RLZTracker::ScheduleDelayedInit(int delay) { 198 void RLZTracker::ScheduleDelayedInit(int delay) {
199 BrowserThread::PostDelayedTask( 199 BrowserThread::PostDelayedTask(
200 BrowserThread::FILE, 200 BrowserThread::FILE,
201 FROM_HERE, 201 FROM_HERE,
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 bool call_record = false; 284 bool call_record = false;
285 285
286 switch (type) { 286 switch (type) {
287 case chrome::NOTIFICATION_OMNIBOX_OPENED_URL: 287 case chrome::NOTIFICATION_OMNIBOX_OPENED_URL:
288 case chrome::NOTIFICATION_INSTANT_CONTROLLER_UPDATED: 288 case chrome::NOTIFICATION_INSTANT_CONTROLLER_UPDATED:
289 point = rlz_lib::CHROME_OMNIBOX; 289 point = rlz_lib::CHROME_OMNIBOX;
290 record_used = &omnibox_used_; 290 record_used = &omnibox_used_;
291 call_record = true; 291 call_record = true;
292 292
293 registrar_.Remove(this, chrome::NOTIFICATION_OMNIBOX_OPENED_URL, 293 registrar_.Remove(this, chrome::NOTIFICATION_OMNIBOX_OPENED_URL,
294 NotificationService::AllSources()); 294 content::NotificationService::AllSources());
295 registrar_.Remove(this, chrome::NOTIFICATION_INSTANT_CONTROLLER_UPDATED, 295 registrar_.Remove(this, chrome::NOTIFICATION_INSTANT_CONTROLLER_UPDATED,
296 NotificationService::AllSources()); 296 content::NotificationService::AllSources());
297 break; 297 break;
298 case content::NOTIFICATION_NAV_ENTRY_PENDING: { 298 case content::NOTIFICATION_NAV_ENTRY_PENDING: {
299 const NavigationEntry* entry = 299 const NavigationEntry* entry =
300 content::Details<NavigationEntry>(details).ptr(); 300 content::Details<NavigationEntry>(details).ptr();
301 if (entry != NULL && 301 if (entry != NULL &&
302 ((entry->transition_type() & 302 ((entry->transition_type() &
303 content::PAGE_TRANSITION_HOME_PAGE) != 0)) { 303 content::PAGE_TRANSITION_HOME_PAGE) != 0)) {
304 point = rlz_lib::CHROME_HOME_PAGE; 304 point = rlz_lib::CHROME_HOME_PAGE;
305 record_used = &homepage_used_; 305 record_used = &homepage_used_;
306 call_record = true; 306 call_record = true;
307 307
308 registrar_.Remove(this, content::NOTIFICATION_NAV_ENTRY_PENDING, 308 registrar_.Remove(this, content::NOTIFICATION_NAV_ENTRY_PENDING,
309 NotificationService::AllSources()); 309 content::NotificationService::AllSources());
310 } 310 }
311 break; 311 break;
312 } 312 }
313 default: 313 default:
314 NOTREACHED(); 314 NOTREACHED();
315 break; 315 break;
316 } 316 }
317 317
318 if (call_record) { 318 if (call_record) {
319 // Try to record event now, else set the flag to try later when we 319 // Try to record event now, else set the flag to try later when we
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
391 BrowserThread::FILE, FROM_HERE, 391 BrowserThread::FILE, FROM_HERE,
392 NewRunnableFunction(&RLZTracker::GetAccessPointRlz, point, not_used)); 392 NewRunnableFunction(&RLZTracker::GetAccessPointRlz, point, not_used));
393 return true; 393 return true;
394 } 394 }
395 395
396 // static 396 // static
397 void RLZTracker::CleanupRlz() { 397 void RLZTracker::CleanupRlz() {
398 GetInstance()->rlz_cache_.clear(); 398 GetInstance()->rlz_cache_.clear();
399 GetInstance()->registrar_.RemoveAll(); 399 GetInstance()->registrar_.RemoveAll();
400 } 400 }
OLDNEW
« no previous file with comments | « chrome/browser/renderer_host/web_cache_manager.cc ('k') | chrome/browser/rlz/rlz_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698