Index: remoting/host/basic_desktop_environment.h |
diff --git a/remoting/host/basic_desktop_environment.h b/remoting/host/basic_desktop_environment.h |
index dbc9822be3564c2b852bb14f03531113464dce4f..ba4485387e4c7453abef05a1b781e304c731cde0 100644 |
--- a/remoting/host/basic_desktop_environment.h |
+++ b/remoting/host/basic_desktop_environment.h |
@@ -12,6 +12,7 @@ |
#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
#include "remoting/host/desktop_environment.h" |
+#include "third_party/webrtc/modules/desktop_capture/desktop_capture_options.h" |
namespace remoting { |
@@ -26,6 +27,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 +52,10 @@ class BasicDesktopEnvironment : public DesktopEnvironment { |
return ui_task_runner_; |
} |
+ webrtc::DesktopCaptureOptions* desktop_capture_options() { |
+ return &desktop_capture_options_; |
+ } |
+ |
private: |
// Task runner on which methods of DesktopEnvironment interface should be |
// called. |
@@ -60,6 +67,10 @@ 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. |
+ webrtc::DesktopCaptureOptions desktop_capture_options_; |
+ |
DISALLOW_COPY_AND_ASSIGN(BasicDesktopEnvironment); |
}; |