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 "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/debug/trace_event.h" | 9 #include "base/debug/trace_event.h" |
10 #include "base/threading/thread_local_storage.h" | 10 #include "base/threading/thread_local_storage.h" |
(...skipping 16 matching lines...) Expand all Loading... |
27 #include "content/child/webthemeengine_impl_android.h" | 27 #include "content/child/webthemeengine_impl_android.h" |
28 #endif | 28 #endif |
29 | 29 |
30 namespace base { | 30 namespace base { |
31 class MessageLoop; | 31 class MessageLoop; |
32 } | 32 } |
33 | 33 |
34 namespace content { | 34 namespace content { |
35 class FlingCurveConfiguration; | 35 class FlingCurveConfiguration; |
36 class WebCryptoImpl; | 36 class WebCryptoImpl; |
| 37 class WebGeofencingProviderImpl; |
37 | 38 |
38 class CONTENT_EXPORT BlinkPlatformImpl | 39 class CONTENT_EXPORT BlinkPlatformImpl |
39 : NON_EXPORTED_BASE(public blink::Platform) { | 40 : NON_EXPORTED_BASE(public blink::Platform) { |
40 public: | 41 public: |
41 BlinkPlatformImpl(); | 42 BlinkPlatformImpl(); |
42 virtual ~BlinkPlatformImpl(); | 43 virtual ~BlinkPlatformImpl(); |
43 | 44 |
44 // Platform methods (partial implementation): | 45 // Platform methods (partial implementation): |
45 virtual blink::WebThemeEngine* themeEngine(); | 46 virtual blink::WebThemeEngine* themeEngine(); |
46 virtual blink::WebFallbackThemeEngine* fallbackThemeEngine(); | 47 virtual blink::WebFallbackThemeEngine* fallbackThemeEngine(); |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
146 virtual void callOnMainThread(void (*func)(void*), void* context); | 147 virtual void callOnMainThread(void (*func)(void*), void* context); |
147 virtual blink::WebGestureCurve* createFlingAnimationCurve( | 148 virtual blink::WebGestureCurve* createFlingAnimationCurve( |
148 blink::WebGestureDevice device_source, | 149 blink::WebGestureDevice device_source, |
149 const blink::WebFloatPoint& velocity, | 150 const blink::WebFloatPoint& velocity, |
150 const blink::WebSize& cumulative_scroll) OVERRIDE; | 151 const blink::WebSize& cumulative_scroll) OVERRIDE; |
151 virtual void didStartWorkerRunLoop( | 152 virtual void didStartWorkerRunLoop( |
152 const blink::WebWorkerRunLoop& runLoop) OVERRIDE; | 153 const blink::WebWorkerRunLoop& runLoop) OVERRIDE; |
153 virtual void didStopWorkerRunLoop( | 154 virtual void didStopWorkerRunLoop( |
154 const blink::WebWorkerRunLoop& runLoop) OVERRIDE; | 155 const blink::WebWorkerRunLoop& runLoop) OVERRIDE; |
155 virtual blink::WebCrypto* crypto() OVERRIDE; | 156 virtual blink::WebCrypto* crypto() OVERRIDE; |
| 157 virtual blink::WebGeofencingProvider* geofencingProvider() OVERRIDE; |
156 | 158 |
157 void SuspendSharedTimer(); | 159 void SuspendSharedTimer(); |
158 void ResumeSharedTimer(); | 160 void ResumeSharedTimer(); |
159 virtual void OnStartSharedTimer(base::TimeDelta delay) {} | 161 virtual void OnStartSharedTimer(base::TimeDelta delay) {} |
160 | 162 |
161 private: | 163 private: |
162 static void DestroyCurrentThread(void*); | 164 static void DestroyCurrentThread(void*); |
163 | 165 |
164 void DoTimeout() { | 166 void DoTimeout() { |
165 if (shared_timer_func_ && !shared_timer_suspended_) | 167 if (shared_timer_func_ && !shared_timer_suspended_) |
166 shared_timer_func_(); | 168 shared_timer_func_(); |
167 } | 169 } |
168 | 170 |
169 WebThemeEngineImpl native_theme_engine_; | 171 WebThemeEngineImpl native_theme_engine_; |
170 WebFallbackThemeEngineImpl fallback_theme_engine_; | 172 WebFallbackThemeEngineImpl fallback_theme_engine_; |
171 base::MessageLoop* main_loop_; | 173 base::MessageLoop* main_loop_; |
172 base::OneShotTimer<BlinkPlatformImpl> shared_timer_; | 174 base::OneShotTimer<BlinkPlatformImpl> shared_timer_; |
173 void (*shared_timer_func_)(); | 175 void (*shared_timer_func_)(); |
174 double shared_timer_fire_time_; | 176 double shared_timer_fire_time_; |
175 bool shared_timer_fire_time_was_set_while_suspended_; | 177 bool shared_timer_fire_time_was_set_while_suspended_; |
176 int shared_timer_suspended_; // counter | 178 int shared_timer_suspended_; // counter |
177 base::ThreadLocalStorage::Slot current_thread_slot_; | 179 base::ThreadLocalStorage::Slot current_thread_slot_; |
178 WebCryptoImpl web_crypto_; | 180 WebCryptoImpl web_crypto_; |
| 181 scoped_ptr<WebGeofencingProviderImpl> geofencing_provider_; |
179 }; | 182 }; |
180 | 183 |
181 } // namespace content | 184 } // namespace content |
182 | 185 |
183 #endif // CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ | 186 #endif // CONTENT_CHILD_BLINK_PLATFORM_IMPL_H_ |
OLD | NEW |