| 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 #ifndef REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ | 5 #ifndef REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ |
| 6 #define REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ | 6 #define REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/gtest_prod_util.h" | 10 #include "base/gtest_prod_util.h" |
| 11 #include "base/memory/scoped_ptr.h" | 11 #include "base/memory/scoped_ptr.h" |
| 12 #include "base/memory/weak_ptr.h" | 12 #include "base/memory/weak_ptr.h" |
| 13 #include "base/thread_task_runner_handle.h" | 13 #include "base/thread_task_runner_handle.h" |
| 14 #include "ppapi/c/pp_instance.h" | 14 #include "ppapi/c/pp_instance.h" |
| 15 #include "ppapi/c/pp_rect.h" | 15 #include "ppapi/c/pp_rect.h" |
| 16 #include "ppapi/c/pp_resource.h" | 16 #include "ppapi/c/pp_resource.h" |
| 17 #include "ppapi/cpp/instance.h" | 17 #include "ppapi/cpp/instance.h" |
| 18 #include "ppapi/cpp/text_input_controller.h" | 18 #include "ppapi/cpp/text_input_controller.h" |
| 19 #include "ppapi/cpp/var.h" | 19 #include "ppapi/cpp/var.h" |
| 20 #include "remoting/client/client_context.h" | 20 #include "remoting/client/client_context.h" |
| 21 #include "remoting/client/client_user_interface.h" | 21 #include "remoting/client/client_user_interface.h" |
| 22 #include "remoting/client/key_event_mapper.h" | 22 #include "remoting/client/key_event_mapper.h" |
| 23 #include "remoting/client/plugin/empty_cursor_filter.h" | 23 #include "remoting/client/plugin/empty_cursor_filter.h" |
| 24 #include "remoting/client/plugin/pepper_cursor_setter.h" | 24 #include "remoting/client/plugin/pepper_cursor_setter.h" |
| 25 #include "remoting/client/plugin/pepper_input_handler.h" | 25 #include "remoting/client/plugin/pepper_input_handler.h" |
| 26 #include "remoting/client/plugin/pepper_plugin_thread_delegate.h" | 26 #include "remoting/client/plugin/pepper_plugin_thread_delegate.h" |
| 27 #include "remoting/client/plugin/pepper_video_renderer.h" | 27 #include "remoting/client/plugin/pepper_video_renderer.h" |
| 28 #include "remoting/client/plugin/touch_input_scaler.h" |
| 28 #include "remoting/proto/event.pb.h" | 29 #include "remoting/proto/event.pb.h" |
| 29 #include "remoting/protocol/client_stub.h" | 30 #include "remoting/protocol/client_stub.h" |
| 30 #include "remoting/protocol/clipboard_stub.h" | 31 #include "remoting/protocol/clipboard_stub.h" |
| 31 #include "remoting/protocol/connection_to_host.h" | 32 #include "remoting/protocol/connection_to_host.h" |
| 32 #include "remoting/protocol/cursor_shape_stub.h" | 33 #include "remoting/protocol/cursor_shape_stub.h" |
| 33 #include "remoting/protocol/input_event_tracker.h" | 34 #include "remoting/protocol/input_event_tracker.h" |
| 34 #include "remoting/protocol/mouse_input_filter.h" | 35 #include "remoting/protocol/mouse_input_filter.h" |
| 35 #include "remoting/protocol/negotiating_client_authenticator.h" | 36 #include "remoting/protocol/negotiating_client_authenticator.h" |
| 36 #include "remoting/protocol/third_party_client_authenticator.h" | 37 #include "remoting/protocol/third_party_client_authenticator.h" |
| 37 | 38 |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 void HandleVideoControl(const base::DictionaryValue& data); | 189 void HandleVideoControl(const base::DictionaryValue& data); |
| 189 void HandlePauseAudio(const base::DictionaryValue& data); | 190 void HandlePauseAudio(const base::DictionaryValue& data); |
| 190 void HandleOnPinFetched(const base::DictionaryValue& data); | 191 void HandleOnPinFetched(const base::DictionaryValue& data); |
| 191 void HandleOnThirdPartyTokenFetched(const base::DictionaryValue& data); | 192 void HandleOnThirdPartyTokenFetched(const base::DictionaryValue& data); |
| 192 void HandleRequestPairing(const base::DictionaryValue& data); | 193 void HandleRequestPairing(const base::DictionaryValue& data); |
| 193 void HandleExtensionMessage(const base::DictionaryValue& data); | 194 void HandleExtensionMessage(const base::DictionaryValue& data); |
| 194 void HandleAllowMouseLockMessage(); | 195 void HandleAllowMouseLockMessage(); |
| 195 void HandleSendMouseInputWhenUnfocused(); | 196 void HandleSendMouseInputWhenUnfocused(); |
| 196 void HandleDelegateLargeCursors(); | 197 void HandleDelegateLargeCursors(); |
| 197 void HandleEnableDebugRegion(const base::DictionaryValue& data); | 198 void HandleEnableDebugRegion(const base::DictionaryValue& data); |
| 199 void HandleEnableTouchEvents(); |
| 198 | 200 |
| 199 void Disconnect(); | 201 void Disconnect(); |
| 200 | 202 |
| 201 // Helper method to post messages to the webapp. | 203 // Helper method to post messages to the webapp. |
| 202 void PostChromotingMessage(const std::string& method, | 204 void PostChromotingMessage(const std::string& method, |
| 203 const pp::VarDictionary& data); | 205 const pp::VarDictionary& data); |
| 204 | 206 |
| 205 // Same as above, but serializes messages to JSON before sending them. This | 207 // Same as above, but serializes messages to JSON before sending them. This |
| 206 // method is used for backward compatibility with older version of the webapp | 208 // method is used for backward compatibility with older version of the webapp |
| 207 // that expect to received most messages formatted using JSON. | 209 // that expect to received most messages formatted using JSON. |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 // Contains the most-recently-reported desktop shape, if any. | 251 // Contains the most-recently-reported desktop shape, if any. |
| 250 scoped_ptr<webrtc::DesktopRegion> desktop_shape_; | 252 scoped_ptr<webrtc::DesktopRegion> desktop_shape_; |
| 251 | 253 |
| 252 scoped_ptr<DelegatingSignalStrategy> signal_strategy_; | 254 scoped_ptr<DelegatingSignalStrategy> signal_strategy_; |
| 253 | 255 |
| 254 scoped_ptr<ChromotingClient> client_; | 256 scoped_ptr<ChromotingClient> client_; |
| 255 | 257 |
| 256 // Input pipeline components, in reverse order of distance from input source. | 258 // Input pipeline components, in reverse order of distance from input source. |
| 257 protocol::MouseInputFilter mouse_input_filter_; | 259 protocol::MouseInputFilter mouse_input_filter_; |
| 258 protocol::InputEventTracker input_tracker_; | 260 protocol::InputEventTracker input_tracker_; |
| 261 TouchInputScaler touch_input_scaler_; |
| 259 KeyEventMapper key_mapper_; | 262 KeyEventMapper key_mapper_; |
| 260 scoped_ptr<protocol::InputFilter> normalizing_input_filter_; | 263 scoped_ptr<protocol::InputFilter> normalizing_input_filter_; |
| 261 PepperInputHandler input_handler_; | 264 PepperInputHandler input_handler_; |
| 262 | 265 |
| 263 // Cursor shape handling components, in reverse order to that in which they | 266 // Cursor shape handling components, in reverse order to that in which they |
| 264 // process cursor shape events. Note that |mouse_locker_| appears in the | 267 // process cursor shape events. Note that |mouse_locker_| appears in the |
| 265 // cursor pipeline since it is triggered by receipt of an empty cursor. | 268 // cursor pipeline since it is triggered by receipt of an empty cursor. |
| 266 PepperCursorSetter cursor_setter_; | 269 PepperCursorSetter cursor_setter_; |
| 267 scoped_ptr<PepperMouseLocker> mouse_locker_; | 270 scoped_ptr<PepperMouseLocker> mouse_locker_; |
| 268 EmptyCursorFilter empty_cursor_filter_; | 271 EmptyCursorFilter empty_cursor_filter_; |
| 269 | 272 |
| 270 // Used to control text input settings, such as whether to show the IME. | 273 // Used to control text input settings, such as whether to show the IME. |
| 271 pp::TextInputController text_input_controller_; | 274 pp::TextInputController text_input_controller_; |
| 272 | 275 |
| 273 // PIN Fetcher. | 276 // PIN Fetcher. |
| 274 bool use_async_pin_dialog_; | 277 bool use_async_pin_dialog_; |
| 275 protocol::SecretFetchedCallback secret_fetched_callback_; | 278 protocol::SecretFetchedCallback secret_fetched_callback_; |
| 276 | 279 |
| 277 base::WeakPtr<TokenFetcherProxy> token_fetcher_proxy_; | 280 base::WeakPtr<TokenFetcherProxy> token_fetcher_proxy_; |
| 278 | 281 |
| 279 // Weak reference to this instance, used for global logging and task posting. | 282 // Weak reference to this instance, used for global logging and task posting. |
| 280 base::WeakPtrFactory<ChromotingInstance> weak_factory_; | 283 base::WeakPtrFactory<ChromotingInstance> weak_factory_; |
| 281 | 284 |
| 282 DISALLOW_COPY_AND_ASSIGN(ChromotingInstance); | 285 DISALLOW_COPY_AND_ASSIGN(ChromotingInstance); |
| 283 }; | 286 }; |
| 284 | 287 |
| 285 } // namespace remoting | 288 } // namespace remoting |
| 286 | 289 |
| 287 #endif // REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ | 290 #endif // REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ |
| OLD | NEW |