| Index: chrome/browser/engagement/site_engagement_service.cc
|
| diff --git a/chrome/browser/engagement/site_engagement_service.cc b/chrome/browser/engagement/site_engagement_service.cc
|
| index fa8f699fa73d44699dceb25ff8fd40be2f399503..4e8b233bb3d9c0588080555460797d3478ed7105 100644
|
| --- a/chrome/browser/engagement/site_engagement_service.cc
|
| +++ b/chrome/browser/engagement/site_engagement_service.cc
|
| @@ -209,6 +209,14 @@ bool SiteEngagementService::IsEngagementAtLeast(
|
| return false;
|
| }
|
|
|
| +void SiteEngagementService::AddObserver(SiteEngagementObserver* observer) {
|
| + observer_list_.AddObserver(observer);
|
| +}
|
| +
|
| +void SiteEngagementService::RemoveObserver(SiteEngagementObserver* observer) {
|
| + observer_list_.RemoveObserver(observer);
|
| +}
|
| +
|
| void SiteEngagementService::ResetScoreForURL(const GURL& url, double score) {
|
| ResetScoreAndAccessTimesForURL(url, score, nullptr);
|
| }
|
| @@ -282,6 +290,8 @@ void SiteEngagementService::AddPoints(const GURL& url, double points) {
|
| url, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(),
|
| score_dict.release());
|
| }
|
| + FOR_EACH_OBSERVER(SiteEngagementObserver, observer_list_,
|
| + OnEngagementIncreased(this, url, score.GetScore()));
|
| }
|
|
|
| void SiteEngagementService::AfterStartupTask() {
|
| @@ -365,6 +375,25 @@ double SiteEngagementService::GetMedianEngagement(
|
| return (scores[mid - 1] + scores[mid]) / 2;
|
| }
|
|
|
| +double SiteEngagementService::GetScoreForEngagementLevel(
|
| + EngagementLevel level) const {
|
| + switch (level) {
|
| + case ENGAGEMENT_LEVEL_NONE:
|
| + return 0;
|
| + case ENGAGEMENT_LEVEL_LOW:
|
| + return SiteEngagementScore::GetMinimumEngagementIncrement();
|
| + case ENGAGEMENT_LEVEL_MEDIUM:
|
| + return SiteEngagementScore::GetMediumEngagementBoundary();
|
| + case ENGAGEMENT_LEVEL_HIGH:
|
| + return SiteEngagementScore::GetHighEngagementBoundary();
|
| + case ENGAGEMENT_LEVEL_MAX:
|
| + return SiteEngagementScore::kMaxPoints;
|
| + default:
|
| + NOTREACHED();
|
| + return 0;
|
| + }
|
| +}
|
| +
|
| void SiteEngagementService::HandleMediaPlaying(const GURL& url,
|
| bool is_hidden) {
|
| SiteEngagementMetrics::RecordEngagement(
|
|
|