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

Side by Side Diff: ash/keyboard_uma_event_filter.cc

Issue 224113005: Eliminate ash::internal namespace (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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 | « ash/keyboard_uma_event_filter.h ('k') | ash/magnifier/magnification_controller.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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "ash/keyboard_uma_event_filter.h" 5 #include "ash/keyboard_uma_event_filter.h"
6 6
7 #include "base/metrics/histogram.h" 7 #include "base/metrics/histogram.h"
8 #include "ui/events/event.h" 8 #include "ui/events/event.h"
9 9
10 namespace { 10 namespace {
11 11
12 // This threshold is used to drop keystrokes that are more than some time apart. 12 // This threshold is used to drop keystrokes that are more than some time apart.
13 // These keystrokes are dropped to avoid recording outliers, as well as pauses 13 // These keystrokes are dropped to avoid recording outliers, as well as pauses
14 // between actual segments of typing. 14 // between actual segments of typing.
15 const int kKeystrokeThresholdInSeconds = 5; 15 const int kKeystrokeThresholdInSeconds = 5;
16 16
17 } 17 }
18 18
19 namespace ash { 19 namespace ash {
20 namespace internal {
21 20
22 KeyboardUMAEventFilter::KeyboardUMAEventFilter() {} 21 KeyboardUMAEventFilter::KeyboardUMAEventFilter() {}
23 22
24 KeyboardUMAEventFilter::~KeyboardUMAEventFilter() {} 23 KeyboardUMAEventFilter::~KeyboardUMAEventFilter() {}
25 24
26 void KeyboardUMAEventFilter::OnKeyEvent(ui::KeyEvent* event) { 25 void KeyboardUMAEventFilter::OnKeyEvent(ui::KeyEvent* event) {
27 // This is a rough approximation, so assume that each key release is the 26 // This is a rough approximation, so assume that each key release is the
28 // result of a typed key. 27 // result of a typed key.
29 if (event->type() != ui::ET_KEY_RELEASED) 28 if (event->type() != ui::ET_KEY_RELEASED)
30 return; 29 return;
31 30
32 // Reset the timer on non-character keystrokes. 31 // Reset the timer on non-character keystrokes.
33 if (!isprint(event->GetCharacter())) { 32 if (!isprint(event->GetCharacter())) {
34 last_keystroke_time_ = base::TimeDelta(); 33 last_keystroke_time_ = base::TimeDelta();
35 return; 34 return;
36 } 35 }
37 36
38 if (last_keystroke_time_.ToInternalValue() == 0) { 37 if (last_keystroke_time_.ToInternalValue() == 0) {
39 last_keystroke_time_ = event->time_stamp(); 38 last_keystroke_time_ = event->time_stamp();
40 return; 39 return;
41 } 40 }
42 41
43 base::TimeDelta delta = event->time_stamp() - last_keystroke_time_; 42 base::TimeDelta delta = event->time_stamp() - last_keystroke_time_;
44 if (delta < base::TimeDelta::FromSeconds(kKeystrokeThresholdInSeconds)) 43 if (delta < base::TimeDelta::FromSeconds(kKeystrokeThresholdInSeconds))
45 UMA_HISTOGRAM_TIMES("Keyboard.KeystrokeDeltas", delta); 44 UMA_HISTOGRAM_TIMES("Keyboard.KeystrokeDeltas", delta);
46 45
47 last_keystroke_time_ = event->time_stamp(); 46 last_keystroke_time_ = event->time_stamp();
48 } 47 }
49 48
50 } // namespace internal
51 } // namespace ash 49 } // namespace ash
OLDNEW
« no previous file with comments | « ash/keyboard_uma_event_filter.h ('k') | ash/magnifier/magnification_controller.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698