diff options
Diffstat (limited to 'chromium/ash/keyboard_uma_event_filter.cc')
-rw-r--r-- | chromium/ash/keyboard_uma_event_filter.cc | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/chromium/ash/keyboard_uma_event_filter.cc b/chromium/ash/keyboard_uma_event_filter.cc deleted file mode 100644 index 6b7ae6bee38..00000000000 --- a/chromium/ash/keyboard_uma_event_filter.cc +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "ash/keyboard_uma_event_filter.h" - -#include "base/metrics/histogram.h" -#include "ui/events/event.h" - -namespace { - -// This threshold is used to drop keystrokes that are more than some time apart. -// These keystrokes are dropped to avoid recording outliers, as well as pauses -// between actual segments of typing. -const int kKeystrokeThresholdInSeconds = 5; - -} - -namespace ash { -namespace internal { - -KeyboardUMAEventFilter::KeyboardUMAEventFilter() {} - -KeyboardUMAEventFilter::~KeyboardUMAEventFilter() {} - -void KeyboardUMAEventFilter::OnKeyEvent(ui::KeyEvent* event) { - // This is a rough approximation, so assume that each key release is the - // result of a typed key. - if (event->type() != ui::ET_KEY_RELEASED) - return; - - // Reset the timer on non-character keystrokes. - if (!isprint(event->GetCharacter())) { - last_keystroke_time_ = base::TimeDelta(); - return; - } - - if (last_keystroke_time_.ToInternalValue() == 0) { - last_keystroke_time_ = event->time_stamp(); - return; - } - - base::TimeDelta delta = event->time_stamp() - last_keystroke_time_; - if (delta < base::TimeDelta::FromSeconds(kKeystrokeThresholdInSeconds)) - UMA_HISTOGRAM_TIMES("Keyboard.KeystrokeDeltas", delta); - - last_keystroke_time_ = event->time_stamp(); -} - -} // namespace internal -} // namespace ash |