Chromium Code Reviews| 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); |
| }; |