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

Side by Side Diff: remoting/protocol/client_event_dispatcher.h

Issue 9646013: Add the plumbing that will carry a clipboard item from a chromoting client to a host. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 9 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 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 #ifndef REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_ 5 #ifndef REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_
6 #define REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_ 6 #define REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_
7 7
8 #include "base/memory/ref_counted.h" 8 #include "base/memory/ref_counted.h"
9 #include "remoting/protocol/channel_dispatcher_base.h" 9 #include "remoting/protocol/channel_dispatcher_base.h"
10 #include "remoting/protocol/clipboard_stub.h"
10 #include "remoting/protocol/input_stub.h" 11 #include "remoting/protocol/input_stub.h"
11 12
12 namespace remoting { 13 namespace remoting {
13 namespace protocol { 14 namespace protocol {
14 15
15 class BufferedSocketWriter; 16 class BufferedSocketWriter;
16 17
17 // ClientEventDispatcher manages the event channel on the client 18 // ClientEventDispatcher manages the event channel on the client
18 // side. It implements InputStub for outgoing input messages. 19 // side. It implements InputStub and ClipboardStub for outgoing input and
19 class ClientEventDispatcher : public ChannelDispatcherBase, public InputStub { 20 // clipboard messages.
21 class ClientEventDispatcher : public ChannelDispatcherBase,
22 public ClipboardStub,
23 public InputStub {
20 public: 24 public:
21 ClientEventDispatcher(); 25 ClientEventDispatcher();
22 virtual ~ClientEventDispatcher(); 26 virtual ~ClientEventDispatcher();
23 27
28 // ClipboardStub implementation.
29 virtual void InjectClipboardEvent(const ClipboardEvent& event) OVERRIDE;
30
24 // InputStub implementation. 31 // InputStub implementation.
25 virtual void InjectKeyEvent(const KeyEvent& event) OVERRIDE; 32 virtual void InjectKeyEvent(const KeyEvent& event) OVERRIDE;
26 virtual void InjectMouseEvent(const MouseEvent& event) OVERRIDE; 33 virtual void InjectMouseEvent(const MouseEvent& event) OVERRIDE;
27 34
28 protected: 35 protected:
29 // ChannelDispatcherBase overrides. 36 // ChannelDispatcherBase overrides.
30 virtual void OnInitialized() OVERRIDE; 37 virtual void OnInitialized() OVERRIDE;
31 38
32 private: 39 private:
33 scoped_refptr<BufferedSocketWriter> writer_; 40 scoped_refptr<BufferedSocketWriter> writer_;
34 41
35 DISALLOW_COPY_AND_ASSIGN(ClientEventDispatcher); 42 DISALLOW_COPY_AND_ASSIGN(ClientEventDispatcher);
36 }; 43 };
37 44
38 } // namespace protocol 45 } // namespace protocol
39 } // namespace remoting 46 } // namespace remoting
40 47
41 #endif // REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_ 48 #endif // REMOTING_PROTOCOL_CLIENT_EVENT_DISPATCHER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698