Chromium Code Reviews| Index: chrome/browser/engagement/site_engagement_helper.cc |
| diff --git a/chrome/browser/engagement/site_engagement_helper.cc b/chrome/browser/engagement/site_engagement_helper.cc |
| index a1f83736780589f22a5bc6319c84fc925f902727..1d52a82c7d112850de13fcd76fa7ccc0bb5bdffd 100644 |
| --- a/chrome/browser/engagement/site_engagement_helper.cc |
| +++ b/chrome/browser/engagement/site_engagement_helper.cc |
| @@ -47,7 +47,7 @@ bool SiteEngagementHelper::InputTracker::HandleKeyPressEvent( |
| // (e.g. keypress is a key down then key up). |
| if (event.type == blink::WebInputEvent::RawKeyDown) { |
| PauseTracking(helper_->web_contents()->GetRenderViewHost()); |
| - helper_->RecordUserInput(); |
| + helper_->RecordUserInput(SiteEngagementMetrics::ENGAGEMENT_KEYPRESS); |
| } |
| return false; |
| } |
| @@ -61,7 +61,7 @@ bool SiteEngagementHelper::InputTracker::HandleMouseEvent( |
| event.type == blink::WebInputEvent::MouseDown) || |
| event.type == blink::WebInputEvent::MouseWheel) { |
| PauseTracking(helper_->web_contents()->GetRenderViewHost()); |
| - helper_->RecordUserInput(); |
| + helper_->RecordUserInput(SiteEngagementMetrics::ENGAGEMENT_MOUSE); |
| } |
| return false; |
| } |
| @@ -125,7 +125,8 @@ SiteEngagementHelper::SiteEngagementHelper(content::WebContents* contents) |
| input_tracker_(new InputTracker(this)), |
| record_engagement_(false) { } |
| -void SiteEngagementHelper::RecordUserInput() { |
| +void SiteEngagementHelper::RecordUserInput( |
| + SiteEngagementMetrics::EngagementType type) { |
| TRACE_EVENT0("SiteEngagement", "RecordUserInput"); |
| content::WebContents* contents = web_contents(); |
| if (contents) { |
| @@ -136,6 +137,7 @@ void SiteEngagementHelper::RecordUserInput() { |
| // Service is null in incognito. |
| if (service) { |
| + SiteEngagementMetrics::RecordEngagement(type); |
| service->HandleUserInput(contents->GetVisibleURL()); |
| FOR_EACH_OBSERVER(Observer, observer_list_, OnInputRecorded(this)); |
| } |
| @@ -159,8 +161,11 @@ void SiteEngagementHelper::DidNavigateMainFrame( |
| SiteEngagementService* service = |
| SiteEngagementServiceFactory::GetForProfile(profile); |
| - if (service) |
| + if (service) { |
| + SiteEngagementMetrics::RecordEngagement( |
| + SiteEngagementMetrics::ENGAGEMENT_NAVIGATION); |
|
calamity
2015/09/25 07:08:33
I think we should do this in HandleNavigation() in
dominickn
2015/09/28 03:34:50
It would be inconsistent to have the user input UM
calamity
2015/09/28 07:33:47
Hmm, I'd prefer all our logging take place in the
|
| service->HandleNavigation(params.url, params.transition); |
| + } |
| input_tracker_->StartTracking(contents->GetRenderViewHost()); |
| } |