Index: remoting/host/basic_desktop_environment.h |
diff --git a/remoting/host/basic_desktop_environment.h b/remoting/host/basic_desktop_environment.h |
index ab38c49da23700bc3d74e7fca64fbb7433e79dd6..9d97dbc6fc092365a0e5b62fc7e129a4d40bd69d 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 { |
class GnubbyAuthHandler; |
@@ -28,6 +34,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; |
virtual scoped_ptr<GnubbyAuthHandler> CreateGnubbyAuthHandler( |
@@ -53,6 +61,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. |
@@ -64,6 +76,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); |
}; |