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

Unified Diff: trunk/src/media/base/user_input_monitor.h

Issue 22871007: Revert 217768 "Adding key press detection in the browser process." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 7 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « trunk/src/media/base/audio_capturer_source.h ('k') | trunk/src/media/base/user_input_monitor.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: trunk/src/media/base/user_input_monitor.h
===================================================================
--- trunk/src/media/base/user_input_monitor.h (revision 217773)
+++ trunk/src/media/base/user_input_monitor.h (working copy)
@@ -1,99 +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.
-
-#ifndef MEDIA_BASE_USER_INPUT_MONITOR_H_
-#define MEDIA_BASE_USER_INPUT_MONITOR_H_
-
-#include <set>
-
-#include "base/memory/ref_counted.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/memory/weak_ptr.h"
-#include "base/observer_list.h"
-#include "base/synchronization/lock.h"
-#include "media/base/media_export.h"
-#include "ui/base/events/event_constants.h"
-#include "ui/base/keycodes/keyboard_codes.h"
-
-struct SkIPoint;
-
-namespace base {
-class SingleThreadTaskRunner;
-} // namespace base
-
-namespace media {
-
-// Monitors and notifies about mouse movements and keyboard events.
-// Thread safe. The thread on which the listenters are called is not guaranteed.
-// The callers should not perform expensive/blocking tasks in the callback since
-// it might be called on the browser UI/IO threads.
-class MEDIA_EXPORT UserInputMonitor {
- public:
- // The interface to receive mouse movement events.
- class MEDIA_EXPORT MouseEventListener {
- public:
- // |position| is the new mouse position.
- virtual void OnMouseMoved(const SkIPoint& position) = 0;
-
- protected:
- virtual ~MouseEventListener() {}
- };
- // The interface to receive key stroke events.
- class MEDIA_EXPORT KeyStrokeListener {
- public:
- // Called when any key is pressed. Called only once until the key is
- // released, i.e. holding down a key for a long period will generate one
- // callback just when the key is pressed down.
- virtual void OnKeyStroke() = 0;
-
- protected:
- virtual ~KeyStrokeListener() {}
- };
-
- virtual ~UserInputMonitor();
-
- // Creates a platform-specific instance of UserInputMonitor.
- // |io_task_runner| is the task runner for an IO thread.
- // |ui_task_runner| is the task runner for a UI thread.
- static scoped_ptr<UserInputMonitor> Create(
- const scoped_refptr<base::SingleThreadTaskRunner>& io_task_runner,
- const scoped_refptr<base::SingleThreadTaskRunner>& ui_task_runner);
-
- // The same |listener| should only be added once.
- // The clients should make sure to call Remove*Listener before |listener| is
- // destroyed.
- void AddMouseListener(MouseEventListener* listener);
- void RemoveMouseListener(MouseEventListener* listener);
- void AddKeyStrokeListener(KeyStrokeListener* listener);
- void RemoveKeyStrokeListener(KeyStrokeListener* listener);
-
- protected:
- UserInputMonitor();
-
- // Called by the platform-specific sub-classes to propagate the events to the
- // listeners.
- void OnMouseEvent(const SkIPoint& position);
- void OnKeyboardEvent(ui::EventType event, ui::KeyboardCode key_code);
-
- private:
- virtual void StartMouseMonitoring() = 0;
- virtual void StopMouseMonitoring() = 0;
- virtual void StartKeyboardMonitoring() = 0;
- virtual void StopKeyboardMonitoring() = 0;
-
- base::Lock lock_;
- ObserverList<MouseEventListener, true> mouse_listeners_;
- ObserverList<KeyStrokeListener, true> key_stroke_listeners_;
- bool monitoring_mouse_;
- bool monitoring_keyboard_;
- // The set of keys currently held down. Used for convering raw keyboard events
- // into KeyStrokeListener callbacks.
- std::set<ui::KeyboardCode> pressed_keys_;
-
- DISALLOW_COPY_AND_ASSIGN(UserInputMonitor);
-};
-
-} // namespace media
-
-#endif // MEDIA_BASE_USER_INPUT_MONITOR_H_
« no previous file with comments | « trunk/src/media/base/audio_capturer_source.h ('k') | trunk/src/media/base/user_input_monitor.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698