diff options
author | alexeypa@chromium.org <alexeypa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-08 18:26:18 +0000 |
---|---|---|
committer | alexeypa@chromium.org <alexeypa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-08 18:26:18 +0000 |
commit | 96361d07bcba1c8e8bea994e79e2cfddbcff80df (patch) | |
tree | 52abe8f819965bdb58bb0a35ae12f5d29fcb4581 /remoting/host/desktop_environment.h | |
parent | d9e5e751c6f9dc412ce8b7f956e0a3ec3c2cdd9b (diff) | |
download | chromium_src-96361d07bcba1c8e8bea994e79e2cfddbcff80df.zip chromium_src-96361d07bcba1c8e8bea994e79e2cfddbcff80df.tar.gz chromium_src-96361d07bcba1c8e8bea994e79e2cfddbcff80df.tar.bz2 |
Do not show the in-session UI in a curtained session.
This CL refactors the existing curtain mode implementation for Mac/Linux and finalizes one for Windows. Changes:
- The curtain mode policy setting is passed to the desktop environment factory. This way it will be able to pass the flag down to the created desktop environment instances.
- The curtain mode object is hosted by the desktop environment for the duration of the session.
- When a session is curtained the in-session UI is not created and local input is not monitored.
BUG=104544, 166882
R=cdn@chromium.org, rmsousa@chromium.org
Review URL: https://codereview.chromium.org/14435009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198945 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/host/desktop_environment.h')
-rw-r--r-- | remoting/host/desktop_environment.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/remoting/host/desktop_environment.h b/remoting/host/desktop_environment.h index 0e8b480..660744a 100644 --- a/remoting/host/desktop_environment.h +++ b/remoting/host/desktop_environment.h @@ -54,11 +54,16 @@ class DesktopEnvironmentFactory { public: virtual ~DesktopEnvironmentFactory() {} - // Creates an instance of |DesktopEnvironment|. |client_session_control| must - // outlive |this|. + // Creates an instance of |DesktopEnvironment|. Returns a NULL pointer if + // the desktop environment could not be created for any reason (if the curtain + // failed to active for instance). |client_session_control| must outlive + // the created desktop environment. virtual scoped_ptr<DesktopEnvironment> Create( base::WeakPtr<ClientSessionControl> client_session_control) = 0; + // Enables or disables the curtain mode. + virtual void SetEnableCurtaining(bool enable) {} + // Returns |true| if created |DesktopEnvironment| instances support audio // capture. virtual bool SupportsAudioCapture() const = 0; |