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 // TODO(ajwong): We need to come up with a better description of the | 5 // TODO(ajwong): We need to come up with a better description of the |
6 // responsibilities for each thread. | 6 // responsibilities for each thread. |
7 | 7 |
8 #ifndef REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ | 8 #ifndef REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ |
9 #define REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ | 9 #define REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ |
10 | 10 |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
64 class PepperView; | 64 class PepperView; |
65 class PepperSignalStrategy; | 65 class PepperSignalStrategy; |
66 class RectangleUpdateDecoder; | 66 class RectangleUpdateDecoder; |
67 | 67 |
68 struct ClientConfig; | 68 struct ClientConfig; |
69 | 69 |
70 class ChromotingInstance : | 70 class ChromotingInstance : |
71 public ClientUserInterface, | 71 public ClientUserInterface, |
72 public protocol::ClipboardStub, | 72 public protocol::ClipboardStub, |
73 public protocol::CursorShapeStub, | 73 public protocol::CursorShapeStub, |
74 public pp::Instance, | 74 public pp::Instance { |
75 public base::SupportsWeakPtr<ChromotingInstance> { | |
76 public: | 75 public: |
77 // Plugin API version. This should be incremented whenever the API | 76 // Plugin API version. This should be incremented whenever the API |
78 // interface changes. | 77 // interface changes. |
79 static const int kApiVersion = 7; | 78 static const int kApiVersion = 7; |
80 | 79 |
81 // Plugin API features. This allows orthogonal features to be supported | 80 // Plugin API features. This allows orthogonal features to be supported |
82 // without bumping the API version. | 81 // without bumping the API version. |
83 static const char kApiFeatures[]; | 82 static const char kApiFeatures[]; |
84 | 83 |
85 // Capabilities supported by the plugin that should also be supported by the | 84 // Capabilities supported by the plugin that should also be supported by the |
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
251 #endif | 250 #endif |
252 KeyEventMapper key_mapper_; | 251 KeyEventMapper key_mapper_; |
253 PepperInputHandler input_handler_; | 252 PepperInputHandler input_handler_; |
254 | 253 |
255 // PIN Fetcher. | 254 // PIN Fetcher. |
256 bool use_async_pin_dialog_; | 255 bool use_async_pin_dialog_; |
257 protocol::SecretFetchedCallback secret_fetched_callback_; | 256 protocol::SecretFetchedCallback secret_fetched_callback_; |
258 | 257 |
259 base::WeakPtr<PepperTokenFetcher> pepper_token_fetcher_; | 258 base::WeakPtr<PepperTokenFetcher> pepper_token_fetcher_; |
260 | 259 |
| 260 // Weak reference to this instance, used for global logging and task posting. |
261 base::WeakPtrFactory<ChromotingInstance> weak_factory_; | 261 base::WeakPtrFactory<ChromotingInstance> weak_factory_; |
262 | 262 |
263 DISALLOW_COPY_AND_ASSIGN(ChromotingInstance); | 263 DISALLOW_COPY_AND_ASSIGN(ChromotingInstance); |
264 }; | 264 }; |
265 | 265 |
266 } // namespace remoting | 266 } // namespace remoting |
267 | 267 |
268 #endif // REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ | 268 #endif // REMOTING_CLIENT_PLUGIN_CHROMOTING_INSTANCE_H_ |
OLD | NEW |