| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ | 5 #ifndef CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ |
| 6 #define CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ | 6 #define CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 blink::WebServicePortProvider* createServicePortProvider( | 179 blink::WebServicePortProvider* createServicePortProvider( |
| 180 blink::WebServicePortProviderClient*) override; | 180 blink::WebServicePortProviderClient*) override; |
| 181 blink::WebPermissionClient* permissionClient() override; | 181 blink::WebPermissionClient* permissionClient() override; |
| 182 blink::WebSyncProvider* backgroundSyncProvider() override; | 182 blink::WebSyncProvider* backgroundSyncProvider() override; |
| 183 | 183 |
| 184 blink::WebString domCodeStringFromEnum(int dom_code) override; | 184 blink::WebString domCodeStringFromEnum(int dom_code) override; |
| 185 int domEnumFromCodeString(const blink::WebString& codeString) override; | 185 int domEnumFromCodeString(const blink::WebString& codeString) override; |
| 186 blink::WebString domKeyStringFromEnum(int dom_key) override; | 186 blink::WebString domKeyStringFromEnum(int dom_key) override; |
| 187 int domKeyEnumFromString(const blink::WebString& key_string) override; | 187 int domKeyEnumFromString(const blink::WebString& key_string) override; |
| 188 | 188 |
| 189 scoped_ptr<scheduler::WebThreadBase> createThreadWithOptions( | 189 // This class does *not* own the compositor thread. It is the responsibility |
| 190 const char* name, | 190 // of the caller to ensure that the compositor thread is cleared before it is |
| 191 base::Thread::Options); | |
| 192 | |
| 193 // This class does *not* own |compositor_thread|. It is the responsibility of | |
| 194 // the caller to ensure that the compositor thread is cleared before it is | |
| 195 // destructed. | 191 // destructed. |
| 196 void set_compositor_thread(scheduler::WebThreadBase* compositor_thread) { | 192 void SetCompositorThread(scheduler::WebThreadBase* compositor_thread); |
| 197 compositor_thread_ = compositor_thread; | |
| 198 } | |
| 199 | 193 |
| 200 private: | 194 private: |
| 201 void InternalInit(); | 195 void InternalInit(); |
| 196 void WaitUntilWebThreadTLSUpdate(scheduler::WebThreadBase* thread); |
| 202 void UpdateWebThreadTLS(blink::WebThread* thread, base::WaitableEvent* event); | 197 void UpdateWebThreadTLS(blink::WebThread* thread, base::WaitableEvent* event); |
| 203 | 198 |
| 204 bool IsMainThread() const; | 199 bool IsMainThread() const; |
| 205 | 200 |
| 206 scoped_refptr<base::SingleThreadTaskRunner> main_thread_task_runner_; | 201 scoped_refptr<base::SingleThreadTaskRunner> main_thread_task_runner_; |
| 207 WebThemeEngineImpl native_theme_engine_; | 202 WebThemeEngineImpl native_theme_engine_; |
| 208 WebFallbackThemeEngineImpl fallback_theme_engine_; | 203 WebFallbackThemeEngineImpl fallback_theme_engine_; |
| 209 base::ThreadLocalStorage::Slot current_thread_slot_; | 204 base::ThreadLocalStorage::Slot current_thread_slot_; |
| 210 webcrypto::WebCryptoImpl web_crypto_; | 205 webcrypto::WebCryptoImpl web_crypto_; |
| 211 scoped_ptr<WebGeofencingProviderImpl> geofencing_provider_; | 206 scoped_ptr<WebGeofencingProviderImpl> geofencing_provider_; |
| 212 base::ScopedPtrHashMap<blink::WebMemoryDumpProvider*, | 207 base::ScopedPtrHashMap<blink::WebMemoryDumpProvider*, |
| 213 scoped_ptr<WebMemoryDumpProviderAdapter>> | 208 scoped_ptr<WebMemoryDumpProviderAdapter>> |
| 214 memory_dump_providers_; | 209 memory_dump_providers_; |
| 215 base::ScopedPtrHashMap<blink::Platform::TraceLogEnabledStateObserver*, | 210 base::ScopedPtrHashMap<blink::Platform::TraceLogEnabledStateObserver*, |
| 216 scoped_ptr<TraceLogObserverAdapter>> | 211 scoped_ptr<TraceLogObserverAdapter>> |
| 217 trace_log_observers_; | 212 trace_log_observers_; |
| 218 | 213 |
| 219 scoped_refptr<ThreadSafeSender> thread_safe_sender_; | 214 scoped_refptr<ThreadSafeSender> thread_safe_sender_; |
| 220 scoped_refptr<NotificationDispatcher> notification_dispatcher_; | 215 scoped_refptr<NotificationDispatcher> notification_dispatcher_; |
| 221 scoped_refptr<PushDispatcher> push_dispatcher_; | 216 scoped_refptr<PushDispatcher> push_dispatcher_; |
| 222 scoped_ptr<PermissionDispatcher> permission_client_; | 217 scoped_ptr<PermissionDispatcher> permission_client_; |
| 223 scoped_ptr<BackgroundSyncProvider> main_thread_sync_provider_; | 218 scoped_ptr<BackgroundSyncProvider> main_thread_sync_provider_; |
| 224 | 219 |
| 225 scheduler::WebThreadBase* compositor_thread_; | 220 scheduler::WebThreadBase* compositor_thread_; |
| 226 }; | 221 }; |
| 227 | 222 |
| 228 } // namespace content | 223 } // namespace content |
| 229 | 224 |
| 230 #endif // CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ | 225 #endif // CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ |
| OLD | NEW |