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

Side by Side Diff: remoting/host/desktop_session_agent.h

Issue 12594009: Converted LocalInputMonitor into a SessionController instance. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: CR feedback. Created 7 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_HOST_DESKTOP_SESSION_AGENT_H_ 5 #ifndef REMOTING_HOST_DESKTOP_SESSION_AGENT_H_
6 #define REMOTING_HOST_DESKTOP_SESSION_AGENT_H_ 6 #define REMOTING_HOST_DESKTOP_SESSION_AGENT_H_
7 7
8 #include <list> 8 #include <list>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 18 matching lines...) Expand all
29 } // namespace IPC 29 } // namespace IPC
30 30
31 namespace remoting { 31 namespace remoting {
32 32
33 class AudioCapturer; 33 class AudioCapturer;
34 class AudioPacket; 34 class AudioPacket;
35 class AutoThreadTaskRunner; 35 class AutoThreadTaskRunner;
36 class DesktopEnvironmentFactory; 36 class DesktopEnvironmentFactory;
37 class DisconnectWindow; 37 class DisconnectWindow;
38 class EventExecutor; 38 class EventExecutor;
39 class LocalInputMonitor;
40 class RemoteInputFilter; 39 class RemoteInputFilter;
41 class ScreenResolution; 40 class ScreenResolution;
42 41
43 namespace protocol { 42 namespace protocol {
44 class InputEventTracker; 43 class InputEventTracker;
45 } // namespace protocol 44 } // namespace protocol
46 45
47 // Provides screen/audio capturing and input injection services for 46 // Provides screen/audio capturing and input injection services for
48 // the network process. 47 // the network process.
49 class DesktopSessionAgent 48 class DesktopSessionAgent
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 scoped_refptr<AutoThreadTaskRunner> input_task_runner, 108 scoped_refptr<AutoThreadTaskRunner> input_task_runner,
110 scoped_refptr<AutoThreadTaskRunner> io_task_runner, 109 scoped_refptr<AutoThreadTaskRunner> io_task_runner,
111 scoped_refptr<AutoThreadTaskRunner> video_capture_task_runner); 110 scoped_refptr<AutoThreadTaskRunner> video_capture_task_runner);
112 111
113 friend class base::RefCountedThreadSafe<DesktopSessionAgent>; 112 friend class base::RefCountedThreadSafe<DesktopSessionAgent>;
114 virtual ~DesktopSessionAgent(); 113 virtual ~DesktopSessionAgent();
115 114
116 // SessionController::Delegate interface. 115 // SessionController::Delegate interface.
117 virtual void DisconnectSession() OVERRIDE; 116 virtual void DisconnectSession() OVERRIDE;
118 virtual void OnLocalMouseMoved(const SkIPoint& position) OVERRIDE; 117 virtual void OnLocalMouseMoved(const SkIPoint& position) OVERRIDE;
118 virtual void PauseSession(bool pause) OVERRIDE;
119 119
120 // Creates a connected IPC channel to be used to access the screen/audio 120 // Creates a connected IPC channel to be used to access the screen/audio
121 // recorders and input stubs. 121 // recorders and input stubs.
122 virtual bool CreateChannelForNetworkProcess( 122 virtual bool CreateChannelForNetworkProcess(
123 IPC::PlatformFileForTransit* client_out, 123 IPC::PlatformFileForTransit* client_out,
124 scoped_ptr<IPC::ChannelProxy>* server_out) = 0; 124 scoped_ptr<IPC::ChannelProxy>* server_out) = 0;
125 125
126 // Handles StartSessionAgent request from the client. 126 // Handles StartSessionAgent request from the client.
127 void OnStartSessionAgent(const std::string& authenticated_jid, 127 void OnStartSessionAgent(const std::string& authenticated_jid,
128 const ScreenResolution& resolution); 128 const ScreenResolution& resolution);
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 scoped_ptr<AudioCapturer> audio_capturer_; 209 scoped_ptr<AudioCapturer> audio_capturer_;
210 210
211 base::WeakPtr<Delegate> delegate_; 211 base::WeakPtr<Delegate> delegate_;
212 212
213 // Provides a user interface allowing the local user to close the connection. 213 // Provides a user interface allowing the local user to close the connection.
214 scoped_ptr<DisconnectWindow> disconnect_window_; 214 scoped_ptr<DisconnectWindow> disconnect_window_;
215 215
216 // Executes keyboard, mouse and clipboard events. 216 // Executes keyboard, mouse and clipboard events.
217 scoped_ptr<EventExecutor> event_executor_; 217 scoped_ptr<EventExecutor> event_executor_;
218 218
219 // Monitor local inputs to allow remote inputs to be blocked while the local
220 // user is trying to do something.
221 scoped_ptr<LocalInputMonitor> local_input_monitor_;
222
223 // Tracker used to release pressed keys and buttons when disconnecting. 219 // Tracker used to release pressed keys and buttons when disconnecting.
224 scoped_ptr<protocol::InputEventTracker> input_tracker_; 220 scoped_ptr<protocol::InputEventTracker> input_tracker_;
225 221
226 // Filter used to disable remote inputs during local input activity. 222 // Filter used to disable remote inputs during local input activity.
227 scoped_ptr<RemoteInputFilter> remote_input_filter_; 223 scoped_ptr<RemoteInputFilter> remote_input_filter_;
228 224
229 // Used to apply client-requested changes in screen resolution. 225 // Used to apply client-requested changes in screen resolution.
230 scoped_ptr<SessionController> session_controller_; 226 scoped_ptr<SessionController> session_controller_;
231 227
232 // IPC channel connecting the desktop process with the network process. 228 // IPC channel connecting the desktop process with the network process.
(...skipping 20 matching lines...) Expand all
253 scoped_ptr<media::ScreenCapturer> video_capturer_; 249 scoped_ptr<media::ScreenCapturer> video_capturer_;
254 250
255 UiStrings ui_strings_; 251 UiStrings ui_strings_;
256 252
257 DISALLOW_COPY_AND_ASSIGN(DesktopSessionAgent); 253 DISALLOW_COPY_AND_ASSIGN(DesktopSessionAgent);
258 }; 254 };
259 255
260 } // namespace remoting 256 } // namespace remoting
261 257
262 #endif // REMOTING_HOST_DESKTOP_SESSION_AGENT_H_ 258 #endif // REMOTING_HOST_DESKTOP_SESSION_AGENT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698