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..51ea7af629fcfa6d53765d1c5a72c678b2d9e3d8 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() { |
Sergey Ulanov
2014/01/28 20:35:07
nit: I think it's better to return const reference
dcaiafa
2014/01/28 22:36:29
Me2MeDesktopEnvironment must be able to change it
|
+ 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); |
}; |