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

Issue 2756893002: Add Keyboard Latency UMA Metrics. (Closed)

Created:
3 years, 9 months ago by tdresser
Modified:
3 years, 7 months ago
CC:
chromium-reviews, piman+watch_chromium.org, creis+watch_chromium.org, yusukes+watch_chromium.org, tfarina, nasko+codewatch_chromium.org, jam, dtapuska+chromiumwatch_chromium.org, jbauman+watch_chromium.org, nona+watch_chromium.org, darin-cc_chromium.org, shuchen+watch_chromium.org, asvitkine+watch_chromium.org, devtools-reviews_chromium.org, kalyank, danakj+watch_chromium.org, James Su, pfeldman
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Add Keyboard Latency UMA Metrics. This doesn't correctly handle Android IME cases, or split out keyboard scrolling from other keyboard entries. We look specifically at events related to key presses, as most behavior is triggered off of key press events, and key release event latency is mainly driven by the time spent handling press related events. Adds the following UMA metrics: Event.Latency.QueueingTime.KeyPressDefaultPrevented Event.Latency.QueueingTime.KeyPressDefaultAllowed Event.Latency.BlockingTime.KeyEventDefaultPrevented Event.Latency.BlockingTime.KeyEventDefaultAllowed Event.Latency.Browser.KeyPressUI Event.Latency.Browser.KeyPressAcked Event.Latency.EndToEnd.KeyPress BUG=673731 TEST=RenderWidgetHostLatencyTrackerTest.Key* CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Review-Url: https://codereview.chromium.org/2756893002 Cr-Commit-Position: refs/heads/master@{#471811} Committed: https://chromium.googlesource.com/chromium/src/+/8fef90770e83bf54f895c971ff08d5016ddabefc

Patch Set 1 #

Patch Set 2 : Fix test, and possibly mac. #

Patch Set 3 : Fix Android - tested locally. #

Patch Set 4 : Fix mac #

Patch Set 5 : Rebase. #

Patch Set 6 : Fix crOS #

Patch Set 7 : Fix interactive ui tests. #

Patch Set 8 : Rebase #

Patch Set 9 : Fix test issue #

Total comments: 31

Patch Set 10 : mfomitchev responses, rebase #

Total comments: 2

Patch Set 11 : Fix a few compile issues. #

Total comments: 2

Patch Set 12 : Fix nit #

Total comments: 4

Patch Set 13 : Fix nit. #

Total comments: 2

Patch Set 14 : Fix accessibility key event latency. #

Patch Set 15 : Restrict to RawKeyDown and Char events on Android & Mac #

Unified diffs Side-by-side diffs Delta from patch set Stats (+417 lines, -66 lines) Patch
M chrome/browser/chromeos/accessibility/event_handler_common.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/ui/cocoa/find_bar/find_bar_cocoa_controller.mm View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/ui/views/find_bar_host.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +3 lines, -1 line 0 comments Download
M content/browser/frame_host/render_widget_host_view_child_frame.h View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/frame_host/render_widget_host_view_child_frame.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +3 lines, -2 lines 0 comments Download
M content/browser/renderer_host/input/render_widget_host_latency_tracker.cc View 1 2 3 4 5 6 7 8 9 10 4 chunks +25 lines, -9 lines 0 comments Download
M content/browser/renderer_host/input/render_widget_host_latency_tracker_unittest.cc View 1 2 3 4 5 6 7 8 9 10 13 chunks +185 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +9 lines, -6 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 9 chunks +26 lines, -14 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_android.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +7 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +3 lines, -2 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +9 lines, -6 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_event_handler.h View 1 2 3 4 5 6 7 8 9 1 chunk +4 lines, -2 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_event_handler.cc View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 7 chunks +24 lines, -13 lines 0 comments Download
M content/public/browser/render_widget_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +7 lines, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +69 lines, -0 lines 0 comments Download
M ui/events/event.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +11 lines, -1 line 0 comments Download
M ui/latency/latency_info.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M ui/latency/latency_tracker.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -1 line 0 comments Download
M ui/latency/latency_tracker.cc View 1 2 3 4 5 6 7 8 9 10 4 chunks +14 lines, -4 lines 0 comments Download
M ui/latency/mojo/latency_info.mojom View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M ui/latency/mojo/latency_info_struct_traits.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +4 lines, -0 lines 0 comments Download

Messages

Total messages: 96 (69 generated)
tdresser
PTAL.
3 years, 8 months ago (2017-03-30 17:27:54 UTC) #38
sadrul
Sorry, I missed this. +mfomitchev@, who has been looking at the event latency here. Mind ...
3 years, 8 months ago (2017-04-04 06:45:26 UTC) #40
mfomitchev
https://codereview.chromium.org/2756893002/diff/180001/chrome/browser/chromeos/accessibility/event_handler_common.cc File chrome/browser/chromeos/accessibility/event_handler_common.cc (right): https://codereview.chromium.org/2756893002/diff/180001/chrome/browser/chromeos/accessibility/event_handler_common.cc#newcode53 chrome/browser/chromeos/accessibility/event_handler_common.cc:53: ui::LatencyInfo()); wouldn't we want to take latency() from key_event? ...
3 years, 8 months ago (2017-04-04 14:59:06 UTC) #41
tdresser
Sorry I mixed comment responses and a large rebase into the same patch, and sorry ...
3 years, 7 months ago (2017-05-01 15:49:22 UTC) #42
tdresser
On 2017/05/01 15:49:22, tdresser wrote: > Sorry I mixed comment responses and a large rebase ...
3 years, 7 months ago (2017-05-04 13:37:28 UTC) #43
mfomitchev
On 2017/05/04 13:37:28, tdresser wrote: > On 2017/05/01 15:49:22, tdresser wrote: > > Sorry I ...
3 years, 7 months ago (2017-05-04 14:05:46 UTC) #44
mfomitchev
https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h File content/public/browser/render_widget_host.h (right): https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h#newcode167 content/public/browser/render_widget_host.h:167: virtual void ForwardKeyboardEventWithLatencyInfo( On 2017/05/01 15:49:21, tdresser wrote: > ...
3 years, 7 months ago (2017-05-04 20:36:05 UTC) #45
tdresser
https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h File content/public/browser/render_widget_host.h (right): https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h#newcode167 content/public/browser/render_widget_host.h:167: virtual void ForwardKeyboardEventWithLatencyInfo( On 2017/05/04 20:36:05, mfomitchev wrote: > ...
3 years, 7 months ago (2017-05-09 15:29:25 UTC) #46
mfomitchev
https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h File content/public/browser/render_widget_host.h (right): https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h#newcode167 content/public/browser/render_widget_host.h:167: virtual void ForwardKeyboardEventWithLatencyInfo( On 2017/05/09 15:29:25, tdresser wrote: > ...
3 years, 7 months ago (2017-05-09 17:35:24 UTC) #47
tdresser
https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h File content/public/browser/render_widget_host.h (right): https://codereview.chromium.org/2756893002/diff/180001/content/public/browser/render_widget_host.h#newcode167 content/public/browser/render_widget_host.h:167: virtual void ForwardKeyboardEventWithLatencyInfo( On 2017/05/09 17:35:23, mfomitchev wrote: > ...
3 years, 7 months ago (2017-05-10 14:27:16 UTC) #63
mfomitchev
LGTM https://codereview.chromium.org/2756893002/diff/260001/content/browser/renderer_host/render_widget_host_unittest.cc File content/browser/renderer_host/render_widget_host_unittest.cc (right): https://codereview.chromium.org/2756893002/diff/260001/content/browser/renderer_host/render_widget_host_unittest.cc#newcode633 content/browser/renderer_host/render_widget_host_unittest.cc:633: host_->ForwardKeyboardEventWithLatencyInfo(native_event, ui::LatencyInfo()); Just call ForwardkeyboardEvent() here rather than ...
3 years, 7 months ago (2017-05-10 16:06:10 UTC) #64
tdresser
sadrul@, PTAL https://codereview.chromium.org/2756893002/diff/260001/content/browser/renderer_host/render_widget_host_unittest.cc File content/browser/renderer_host/render_widget_host_unittest.cc (right): https://codereview.chromium.org/2756893002/diff/260001/content/browser/renderer_host/render_widget_host_unittest.cc#newcode633 content/browser/renderer_host/render_widget_host_unittest.cc:633: host_->ForwardKeyboardEventWithLatencyInfo(native_event, ui::LatencyInfo()); On 2017/05/10 16:06:09, mfomitchev wrote: ...
3 years, 7 months ago (2017-05-10 19:31:50 UTC) #65
sadrul
lgtm https://codereview.chromium.org/2756893002/diff/280001/content/public/browser/render_widget_host.h File content/public/browser/render_widget_host.h (right): https://codereview.chromium.org/2756893002/diff/280001/content/public/browser/render_widget_host.h#newcode30 content/public/browser/render_widget_host.h:30: }; Don't need the ; at the end. ...
3 years, 7 months ago (2017-05-11 04:57:00 UTC) #66
tdresser
+dcheng@ for ui/latency/mojo/ +isherman@ for histograms.xml +avi@ for render_widget_host.h, content/browser/frame_host, find_bar_controller.mm. +dmazzoni@ for event_handler_common.cc +msw@ ...
3 years, 7 months ago (2017-05-11 18:55:55 UTC) #68
msw
find_bar_host.cc rubber stamp lgtm
3 years, 7 months ago (2017-05-11 19:00:42 UTC) #69
Avi (use Gerrit)
Those files LGTM
3 years, 7 months ago (2017-05-11 19:04:49 UTC) #70
dcheng
ipc security lgtm
3 years, 7 months ago (2017-05-11 21:41:23 UTC) #71
Ilya Sherman
metrics lgtm
3 years, 7 months ago (2017-05-11 21:59:50 UTC) #72
dmazzoni
lgtm for accessibility but see important caveat https://codereview.chromium.org/2756893002/diff/300001/chrome/browser/chromeos/accessibility/event_handler_common.cc File chrome/browser/chromeos/accessibility/event_handler_common.cc (right): https://codereview.chromium.org/2756893002/diff/300001/chrome/browser/chromeos/accessibility/event_handler_common.cc#newcode52 chrome/browser/chromeos/accessibility/event_handler_common.cc:52: rvh->GetWidget()->ForwardKeyboardEventWithLatencyInfo(web_event, FYI, ...
3 years, 7 months ago (2017-05-12 19:00:45 UTC) #73
tdresser
https://codereview.chromium.org/2756893002/diff/300001/chrome/browser/chromeos/accessibility/event_handler_common.cc File chrome/browser/chromeos/accessibility/event_handler_common.cc (right): https://codereview.chromium.org/2756893002/diff/300001/chrome/browser/chromeos/accessibility/event_handler_common.cc#newcode52 chrome/browser/chromeos/accessibility/event_handler_common.cc:52: rvh->GetWidget()->ForwardKeyboardEventWithLatencyInfo(web_event, On 2017/05/12 19:00:45, dmazzoni wrote: > FYI, you ...
3 years, 7 months ago (2017-05-12 19:09:52 UTC) #74
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2756893002/320001
3 years, 7 months ago (2017-05-12 19:10:50 UTC) #77
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/452520)
3 years, 7 months ago (2017-05-12 20:06:22 UTC) #79
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2756893002/320001
3 years, 7 months ago (2017-05-12 20:33:18 UTC) #81
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/452552)
3 years, 7 months ago (2017-05-12 22:10:17 UTC) #83
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2756893002/320001
3 years, 7 months ago (2017-05-15 13:23:00 UTC) #85
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2756893002/340001
3 years, 7 months ago (2017-05-15 17:03:07 UTC) #93
commit-bot: I haz the power
3 years, 7 months ago (2017-05-15 17:13:46 UTC) #96
Message was sent while issue was closed.
Committed patchset #15 (id:340001) as
https://chromium.googlesource.com/chromium/src/+/8fef90770e83bf54f895c971ff08...

Powered by Google App Engine
This is Rietveld 408576698