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
3 // found in the LICENSE file.
5 #ifndef ASH_KEYBOARD_UMA_EVENT_FILTER_H_
6 #define ASH_KEYBOARD_UMA_EVENT_FILTER_H_
8 #include "base/compiler_specific.h"
9 #include "base/time/time.h"
10 #include "ui/events/event_handler.h"
15 // EventFilter for tracking keyboard-related metrics, which intercepts events
16 // before they are processed by the usual path and logs metrics about the
18 class KeyboardUMAEventFilter
: public ui::EventHandler
{
20 KeyboardUMAEventFilter();
21 virtual ~KeyboardUMAEventFilter();
23 // ui::EventHandler overrides:
24 virtual void OnKeyEvent(ui::KeyEvent
* event
) OVERRIDE
;
27 // The timestamp of the last character keystroke.
28 base::TimeDelta last_keystroke_time_
;
30 DISALLOW_COPY_AND_ASSIGN(KeyboardUMAEventFilter
);
33 } // namespace internal
36 #endif // ASH_KEYBOARD_UMA_EVENT_FILTER_H_