Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / remoting / protocol / client_event_dispatcher.h
blob22b1588c0eba7e08f79ad3d634fda713d2d9b4df
1 // Copyright (c) 2012 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 REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_
6 #define REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_
8 #include "base/memory/ref_counted.h"
9 #include "remoting/protocol/channel_dispatcher_base.h"
10 #include "remoting/protocol/input_stub.h"
12 namespace remoting {
13 namespace protocol {
15 // ClientEventDispatcher manages the event channel on the client
16 // side. It implements InputStub for outgoing input messages.
17 class ClientEventDispatcher : public ChannelDispatcherBase, public InputStub {
18 public:
19 ClientEventDispatcher();
20 ~ClientEventDispatcher() override;
22 // InputStub implementation.
23 void InjectKeyEvent(const KeyEvent& event) override;
24 void InjectTextEvent(const TextEvent& event) override;
25 void InjectMouseEvent(const MouseEvent& event) override;
26 void InjectTouchEvent(const TouchEvent& event) override;
28 private:
29 DISALLOW_COPY_AND_ASSIGN(ClientEventDispatcher);
32 } // namespace protocol
33 } // namespace remoting
35 #endif // REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_