OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "remoting/host/local_input_monitor.h" | 5 #include "remoting/host/local_input_monitor.h" |
6 | 6 |
7 #import <AppKit/AppKit.h> | 7 #import <AppKit/AppKit.h> |
8 #include <set> | 8 #include <set> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 25 matching lines...) Expand all Loading... |
36 virtual ~EventHandler() {} | 36 virtual ~EventHandler() {} |
37 | 37 |
38 virtual void OnLocalMouseMoved(const webrtc::DesktopVector& position) = 0; | 38 virtual void OnLocalMouseMoved(const webrtc::DesktopVector& position) = 0; |
39 virtual void OnDisconnectShortcut() = 0; | 39 virtual void OnDisconnectShortcut() = 0; |
40 }; | 40 }; |
41 | 41 |
42 LocalInputMonitorMac( | 42 LocalInputMonitorMac( |
43 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, | 43 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, |
44 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner, | 44 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner, |
45 base::WeakPtr<ClientSessionControl> client_session_control); | 45 base::WeakPtr<ClientSessionControl> client_session_control); |
46 virtual ~LocalInputMonitorMac(); | 46 ~LocalInputMonitorMac() override; |
47 | 47 |
48 private: | 48 private: |
49 // The actual implementation resides in LocalInputMonitorMac::Core class. | 49 // The actual implementation resides in LocalInputMonitorMac::Core class. |
50 class Core; | 50 class Core; |
51 scoped_refptr<Core> core_; | 51 scoped_refptr<Core> core_; |
52 | 52 |
53 DISALLOW_COPY_AND_ASSIGN(LocalInputMonitorMac); | 53 DISALLOW_COPY_AND_ASSIGN(LocalInputMonitorMac); |
54 }; | 54 }; |
55 | 55 |
56 } // namespace | 56 } // namespace |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
161 public: | 161 public: |
162 Core(scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, | 162 Core(scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, |
163 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner, | 163 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner, |
164 base::WeakPtr<ClientSessionControl> client_session_control); | 164 base::WeakPtr<ClientSessionControl> client_session_control); |
165 | 165 |
166 void Start(); | 166 void Start(); |
167 void Stop(); | 167 void Stop(); |
168 | 168 |
169 private: | 169 private: |
170 friend class base::RefCountedThreadSafe<Core>; | 170 friend class base::RefCountedThreadSafe<Core>; |
171 virtual ~Core(); | 171 ~Core() override; |
172 | 172 |
173 void StartOnUiThread(); | 173 void StartOnUiThread(); |
174 void StopOnUiThread(); | 174 void StopOnUiThread(); |
175 | 175 |
176 // EventHandler interface. | 176 // EventHandler interface. |
177 virtual void OnLocalMouseMoved( | 177 void OnLocalMouseMoved(const webrtc::DesktopVector& position) override; |
178 const webrtc::DesktopVector& position) override; | 178 void OnDisconnectShortcut() override; |
179 virtual void OnDisconnectShortcut() override; | |
180 | 179 |
181 // Task runner on which public methods of this class must be called. | 180 // Task runner on which public methods of this class must be called. |
182 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner_; | 181 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner_; |
183 | 182 |
184 // Task runner on which |window_| is created. | 183 // Task runner on which |window_| is created. |
185 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_; | 184 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_; |
186 | 185 |
187 LocalInputMonitorManager* manager_; | 186 LocalInputMonitorManager* manager_; |
188 | 187 |
189 // Invoked in the |caller_task_runner_| thread to report local mouse events | 188 // Invoked in the |caller_task_runner_| thread to report local mouse events |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
279 scoped_ptr<LocalInputMonitor> LocalInputMonitor::Create( | 278 scoped_ptr<LocalInputMonitor> LocalInputMonitor::Create( |
280 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, | 279 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, |
281 scoped_refptr<base::SingleThreadTaskRunner> input_task_runner, | 280 scoped_refptr<base::SingleThreadTaskRunner> input_task_runner, |
282 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner, | 281 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner, |
283 base::WeakPtr<ClientSessionControl> client_session_control) { | 282 base::WeakPtr<ClientSessionControl> client_session_control) { |
284 return make_scoped_ptr(new LocalInputMonitorMac( | 283 return make_scoped_ptr(new LocalInputMonitorMac( |
285 caller_task_runner, ui_task_runner, client_session_control)); | 284 caller_task_runner, ui_task_runner, client_session_control)); |
286 } | 285 } |
287 | 286 |
288 } // namespace remoting | 287 } // namespace remoting |
OLD | NEW |