summaryrefslogtreecommitdiffstats
path: root/remoting/host/basic_desktop_environment.h
diff options
context:
space:
mode:
authordcaiafa@chromium.org <dcaiafa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-29 15:05:16 +0000
committerdcaiafa@chromium.org <dcaiafa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-29 15:05:16 +0000
commit4a32f9821e9df919d482558c148089a2221b19f0 (patch)
tree3c10aba84b0f70783604fc18a6df1aabd3382ccb /remoting/host/basic_desktop_environment.h
parentd35cd7b26ab76fee5a42eeaec4a9538265a490e3 (diff)
downloadchromium_src-4a32f9821e9df919d482558c148089a2221b19f0.zip
chromium_src-4a32f9821e9df919d482558c148089a2221b19f0.tar.gz
chromium_src-4a32f9821e9df919d482558c148089a2221b19f0.tar.bz2
Use webrtc::MouseCursorMonitor for cursor shapes
Use webrtc::MouseCursorMonitor for cursor shapes instead of webrtc::VideoFrameCapturer, in preparation for deprecating cursor shape functionality in the latter. BUG=324033 Review URL: https://codereview.chromium.org/92473002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247689 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/host/basic_desktop_environment.h')
-rw-r--r--remoting/host/basic_desktop_environment.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/remoting/host/basic_desktop_environment.h b/remoting/host/basic_desktop_environment.h
index dbc9822..51ea7af 100644
--- a/remoting/host/basic_desktop_environment.h
+++ b/remoting/host/basic_desktop_environment.h
@@ -13,6 +13,12 @@
#include "base/memory/scoped_ptr.h"
#include "remoting/host/desktop_environment.h"
+namespace webrtc {
+
+class DesktopCaptureOptions;
+
+} // namespace webrtc
+
namespace remoting {
// Used to create audio/video capturers and event executor that work with
@@ -26,6 +32,8 @@ class BasicDesktopEnvironment : public DesktopEnvironment {
virtual scoped_ptr<InputInjector> CreateInputInjector() OVERRIDE;
virtual scoped_ptr<ScreenControls> CreateScreenControls() OVERRIDE;
virtual scoped_ptr<webrtc::ScreenCapturer> CreateVideoCapturer() OVERRIDE;
+ virtual scoped_ptr<webrtc::MouseCursorMonitor> CreateMouseCursorMonitor()
+ OVERRIDE;
virtual std::string GetCapabilities() const OVERRIDE;
virtual void SetCapabilities(const std::string& capabilities) OVERRIDE;
@@ -49,6 +57,10 @@ class BasicDesktopEnvironment : public DesktopEnvironment {
return ui_task_runner_;
}
+ webrtc::DesktopCaptureOptions* desktop_capture_options() {
+ return desktop_capture_options_.get();
+ }
+
private:
// Task runner on which methods of DesktopEnvironment interface should be
// called.
@@ -60,6 +72,13 @@ class BasicDesktopEnvironment : public DesktopEnvironment {
// Used to run UI code.
scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_;
+ // Options shared between |ScreenCapturer| and |MouseCursorMonitor|. It
+ // might contain expensive resources, thus justifying the sharing.
+ // Also: it's dynamically allocated to avoid having to bring in
+ // desktop_capture_options.h which brings in X11 headers which causes hard to
+ // find build errors.
+ scoped_ptr<webrtc::DesktopCaptureOptions> desktop_capture_options_;
+
DISALLOW_COPY_AND_ASSIGN(BasicDesktopEnvironment);
};