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

Unified Diff: remoting/host/desktop_session_proxy.h

Issue 12879006: Removed task runners from the DesktopEnviroment interface and introduced ScreenControls/ClientSessio (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « remoting/host/desktop_session_agent.cc ('k') | remoting/host/desktop_session_proxy.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/host/desktop_session_proxy.h
diff --git a/remoting/host/desktop_session_proxy.h b/remoting/host/desktop_session_proxy.h
index 8421a200ff9f2480f248effb5ff88ee3620f0261..c172228c1df470170efb6dec4844255988f1918f 100644
--- a/remoting/host/desktop_session_proxy.h
+++ b/remoting/host/desktop_session_proxy.h
@@ -39,11 +39,12 @@ namespace remoting {
class AudioPacket;
class ClientSession;
+class ClientSessionControl;
class DesktopSessionConnector;
struct DesktopSessionProxyTraits;
class IpcAudioCapturer;
class IpcVideoFrameCapturer;
-class SessionController;
+class ScreenControls;
// DesktopSessionProxy is created by an owning DesktopEnvironment to route
// requests from stubs to the DesktopSessionAgent instance through
@@ -65,21 +66,17 @@ class DesktopSessionProxy
public IPC::Listener {
public:
DesktopSessionProxy(
+ scoped_refptr<base::SingleThreadTaskRunner> audio_capture_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> io_task_runner,
- const std::string& client_jid,
- const base::Closure& disconnect_callback);
+ scoped_refptr<base::SingleThreadTaskRunner> video_capture_task_runner,
+ base::WeakPtr<ClientSessionControl> client_session_control);
// Mirrors DesktopEnvironment.
- scoped_ptr<AudioCapturer> CreateAudioCapturer(
- scoped_refptr<base::SingleThreadTaskRunner> audio_task_runner);
- scoped_ptr<InputInjector> CreateInputInjector(
- scoped_refptr<base::SingleThreadTaskRunner> input_task_runner,
- scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner);
- scoped_ptr<SessionController> CreateSessionController();
- scoped_ptr<media::ScreenCapturer> CreateVideoCapturer(
- scoped_refptr<base::SingleThreadTaskRunner> capture_task_runner,
- scoped_refptr<base::SingleThreadTaskRunner> encode_task_runner);
+ scoped_ptr<AudioCapturer> CreateAudioCapturer();
+ scoped_ptr<InputInjector> CreateInputInjector();
+ scoped_ptr<ScreenControls> CreateScreenControls();
+ scoped_ptr<media::ScreenCapturer> CreateVideoCapturer();
// IPC::Listener implementation.
virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
@@ -183,19 +180,16 @@ class DesktopSessionProxy
// Points to the client stub passed to StartInputInjector().
scoped_ptr<protocol::ClipboardStub> client_clipboard_;
+ // Used to disconnect the client session.
+ base::WeakPtr<ClientSessionControl> client_session_control_;
+
// Used to bind to a desktop session and receive notifications every time
// the desktop process is replaced.
base::WeakPtr<DesktopSessionConnector> desktop_session_connector_;
- // Disconnects the client session when invoked.
- base::Closure disconnect_callback_;
-
// Points to the video capturer receiving captured video frames.
base::WeakPtr<IpcVideoFrameCapturer> video_capturer_;
- // JID of the client session.
- std::string client_jid_;
-
// IPC channel to the desktop session agent.
scoped_ptr<IPC::ChannelProxy> desktop_channel_;
« no previous file with comments | « remoting/host/desktop_session_agent.cc ('k') | remoting/host/desktop_session_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698