diff options
author | alexeypa@chromium.org <alexeypa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-19 14:55:37 +0000 |
---|---|---|
committer | alexeypa@chromium.org <alexeypa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-19 14:55:37 +0000 |
commit | a5d181f50c2543ac837623a0b619a6a487913fa5 (patch) | |
tree | 7ba018efcd8bbfb51478b5dd1bf0b5ed66bddf36 /remoting/host/client_session.h | |
parent | 48b6601cb7a02a3cd6ff74c8f9d5f222ddc2304f (diff) | |
download | chromium_src-a5d181f50c2543ac837623a0b619a6a487913fa5.zip chromium_src-a5d181f50c2543ac837623a0b619a6a487913fa5.tar.gz chromium_src-a5d181f50c2543ac837623a0b619a6a487913fa5.tar.bz2 |
Set the initial resolution of an RDP session to the client screen resolution if it is available.
Changes in this CL:
- The version of the control channel is increased to 3. This allows the host and client to tell if the peer supports capabilities negotiation or not.
- The client and host negotiate supported capabilities by sending each other a list of the supported capabilities. Capabilities supported by both client and host are assumed to be enabled.
- The client plugin and webapp negotiate the list of capabilities supported by the client. The webapp has the final word.
- The DesktopEnvironment interface was extended to provide the list of all supported capabilities and receive the results of negotiation with the client.
- Added the 'sendInitialResolution' capability. When it is enabled the client sends its screen resolution to the host once the connection has been established.
- DesktopSessionProxy now waits for the client screen resolution when the 'sendInitialResolution' capability is enabled.
BUG=230893
Review URL: https://chromiumcodereview.appspot.com/13932020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195192 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/host/client_session.h')
-rw-r--r-- | remoting/host/client_session.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/remoting/host/client_session.h b/remoting/host/client_session.h index da850bc..778243d 100644 --- a/remoting/host/client_session.h +++ b/remoting/host/client_session.h @@ -5,7 +5,7 @@ #ifndef REMOTING_HOST_CLIENT_SESSION_H_ #define REMOTING_HOST_CLIENT_SESSION_H_ -#include <list> +#include <string> #include "base/memory/ref_counted.h" #include "base/memory/weak_ptr.h" @@ -104,6 +104,8 @@ class ClientSession const protocol::VideoControl& video_control) OVERRIDE; virtual void ControlAudio( const protocol::AudioControl& audio_control) OVERRIDE; + virtual void SetCapabilities( + const protocol::Capabilities& capabilities) OVERRIDE; // protocol::ConnectionToClient::EventHandler interface. virtual void OnConnectionAuthenticated( @@ -209,6 +211,12 @@ class ClientSession scoped_refptr<AudioScheduler> audio_scheduler_; scoped_refptr<VideoScheduler> video_scheduler_; + // The set of all capabilities supported by the client. + scoped_ptr<std::string> client_capabilities_; + + // The set of all capabilities supported by the host. + std::string host_capabilities_; + // Used to inject mouse and keyboard input and handle clipboard events. scoped_ptr<InputInjector> input_injector_; |