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

Side by Side Diff: chrome/browser/engagement/site_engagement_service.cc

Issue 2439493002: Reduce usage of FOR_EACH_OBSERVER macro in chrome/browser (Closed)
Patch Set: Created 4 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
« no previous file with comments | « no previous file | chrome/browser/lifetime/keep_alive_registry.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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/engagement/site_engagement_service.h" 5 #include "chrome/browser/engagement/site_engagement_service.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <utility> 10 #include <utility>
(...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 content::WebContents* web_contents, 427 content::WebContents* web_contents,
428 bool is_hidden) { 428 bool is_hidden) {
429 const GURL& url = web_contents->GetVisibleURL(); 429 const GURL& url = web_contents->GetVisibleURL();
430 SiteEngagementMetrics::RecordEngagement( 430 SiteEngagementMetrics::RecordEngagement(
431 is_hidden ? SiteEngagementMetrics::ENGAGEMENT_MEDIA_HIDDEN 431 is_hidden ? SiteEngagementMetrics::ENGAGEMENT_MEDIA_HIDDEN
432 : SiteEngagementMetrics::ENGAGEMENT_MEDIA_VISIBLE); 432 : SiteEngagementMetrics::ENGAGEMENT_MEDIA_VISIBLE);
433 AddPoints(url, is_hidden ? SiteEngagementScore::GetHiddenMediaPoints() 433 AddPoints(url, is_hidden ? SiteEngagementScore::GetHiddenMediaPoints()
434 : SiteEngagementScore::GetVisibleMediaPoints()); 434 : SiteEngagementScore::GetVisibleMediaPoints());
435 435
436 RecordMetrics(); 436 RecordMetrics();
437 FOR_EACH_OBSERVER( 437 for (SiteEngagementObserver& observer : observer_list_)
438 SiteEngagementObserver, observer_list_, 438 observer.OnEngagementIncreased(web_contents, url, GetScore(url));
439 OnEngagementIncreased(web_contents, url, GetScore(url)));
440 } 439 }
441 440
442 void SiteEngagementService::HandleNavigation(content::WebContents* web_contents, 441 void SiteEngagementService::HandleNavigation(content::WebContents* web_contents,
443 ui::PageTransition transition) { 442 ui::PageTransition transition) {
444 if (IsEngagementNavigation(transition)) { 443 if (IsEngagementNavigation(transition)) {
445 const GURL& url = web_contents->GetLastCommittedURL(); 444 const GURL& url = web_contents->GetLastCommittedURL();
446 SiteEngagementMetrics::RecordEngagement( 445 SiteEngagementMetrics::RecordEngagement(
447 SiteEngagementMetrics::ENGAGEMENT_NAVIGATION); 446 SiteEngagementMetrics::ENGAGEMENT_NAVIGATION);
448 AddPoints(url, SiteEngagementScore::GetNavigationPoints()); 447 AddPoints(url, SiteEngagementScore::GetNavigationPoints());
449 448
450 RecordMetrics(); 449 RecordMetrics();
451 FOR_EACH_OBSERVER( 450 for (SiteEngagementObserver& observer : observer_list_)
452 SiteEngagementObserver, observer_list_, 451 observer.OnEngagementIncreased(web_contents, url, GetScore(url));
453 OnEngagementIncreased(web_contents, url, GetScore(url)));
454 } 452 }
455 } 453 }
456 454
457 void SiteEngagementService::HandleUserInput( 455 void SiteEngagementService::HandleUserInput(
458 content::WebContents* web_contents, 456 content::WebContents* web_contents,
459 SiteEngagementMetrics::EngagementType type) { 457 SiteEngagementMetrics::EngagementType type) {
460 const GURL& url = web_contents->GetVisibleURL(); 458 const GURL& url = web_contents->GetVisibleURL();
461 SiteEngagementMetrics::RecordEngagement(type); 459 SiteEngagementMetrics::RecordEngagement(type);
462 AddPoints(url, SiteEngagementScore::GetUserInputPoints()); 460 AddPoints(url, SiteEngagementScore::GetUserInputPoints());
463 461
464 RecordMetrics(); 462 RecordMetrics();
465 FOR_EACH_OBSERVER( 463 for (SiteEngagementObserver& observer : observer_list_)
466 SiteEngagementObserver, observer_list_, 464 observer.OnEngagementIncreased(web_contents, url, GetScore(url));
467 OnEngagementIncreased(web_contents, url, GetScore(url)));
468 } 465 }
469 466
470 bool SiteEngagementService::IsLastEngagementStale() const { 467 bool SiteEngagementService::IsLastEngagementStale() const {
471 // This only happens when Chrome is first run and the user has never recorded 468 // This only happens when Chrome is first run and the user has never recorded
472 // any engagement. 469 // any engagement.
473 base::Time last_engagement_time = GetLastEngagementTime(); 470 base::Time last_engagement_time = GetLastEngagementTime();
474 if (last_engagement_time.is_null()) 471 if (last_engagement_time.is_null())
475 return false; 472 return false;
476 473
477 return (clock_->Now() - last_engagement_time) >= GetStalePeriod(); 474 return (clock_->Now() - last_engagement_time) >= GetStalePeriod();
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
597 if (!engagement_score.last_shortcut_launch_time().is_null() && 594 if (!engagement_score.last_shortcut_launch_time().is_null() &&
598 engagement_score.last_shortcut_launch_time() > last_visit) { 595 engagement_score.last_shortcut_launch_time() > last_visit) {
599 engagement_score.set_last_shortcut_launch_time(last_visit); 596 engagement_score.set_last_shortcut_launch_time(last_visit);
600 } 597 }
601 598
602 engagement_score.Commit(); 599 engagement_score.Commit();
603 } 600 }
604 601
605 SetLastEngagementTime(now); 602 SetLastEngagementTime(now);
606 } 603 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/lifetime/keep_alive_registry.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698