OLD | NEW |
1 // // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // // Copyright 2013 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 WEBKIT_CHILD_WEBKITPLATFORMSUPPORT_CHILD_IMPL_H_ | 5 #ifndef WEBKIT_CHILD_WEBKITPLATFORMSUPPORT_CHILD_IMPL_H_ |
6 #define WEBKIT_CHILD_WEBKITPLATFORMSUPPORT_CHILD_IMPL_H_ | 6 #define WEBKIT_CHILD_WEBKITPLATFORMSUPPORT_CHILD_IMPL_H_ |
7 | 7 |
8 #include "base/threading/thread_local_storage.h" | 8 #include "base/threading/thread_local_storage.h" |
9 #include "webkit/child/webfallbackthemeengine_impl.h" | 9 #include "webkit/child/webfallbackthemeengine_impl.h" |
10 #include "webkit/child/webkit_child_export.h" | 10 #include "webkit/child/webkit_child_export.h" |
11 #include "webkit/child/webkitplatformsupport_impl.h" | 11 #include "webkit/child/webkitplatformsupport_impl.h" |
12 | 12 |
13 #if defined(USE_DEFAULT_RENDER_THEME) | 13 #if defined(USE_DEFAULT_RENDER_THEME) |
14 #include "webkit/child/webthemeengine_impl_default.h" | 14 #include "webkit/child/webthemeengine_impl_default.h" |
15 #elif defined(OS_WIN) | 15 #elif defined(OS_WIN) |
16 #include "webkit/child/webthemeengine_impl_win.h" | 16 #include "webkit/child/webthemeengine_impl_win.h" |
17 #elif defined(OS_MACOSX) | 17 #elif defined(OS_MACOSX) |
18 #include "webkit/child/webthemeengine_impl_mac.h" | 18 #include "webkit/child/webthemeengine_impl_mac.h" |
19 #elif defined(OS_ANDROID) | 19 #elif defined(OS_ANDROID) |
20 #include "webkit/child/webthemeengine_impl_android.h" | 20 #include "webkit/child/webthemeengine_impl_android.h" |
21 #endif | 21 #endif |
22 | 22 |
23 namespace webkit_glue { | 23 namespace webkit_glue { |
24 | 24 |
25 class FlingCurveConfiguration; | |
26 | |
27 class WEBKIT_CHILD_EXPORT WebKitPlatformSupportChildImpl : | 25 class WEBKIT_CHILD_EXPORT WebKitPlatformSupportChildImpl : |
28 public WebKitPlatformSupportImpl { | 26 public WebKitPlatformSupportImpl { |
29 public: | 27 public: |
30 WebKitPlatformSupportChildImpl(); | 28 WebKitPlatformSupportChildImpl(); |
31 virtual ~WebKitPlatformSupportChildImpl(); | 29 virtual ~WebKitPlatformSupportChildImpl(); |
32 | 30 |
33 // Platform methods (partial implementation): | 31 // Platform methods (partial implementation): |
34 virtual WebKit::WebThemeEngine* themeEngine(); | 32 virtual WebKit::WebThemeEngine* themeEngine(); |
35 virtual WebKit::WebFallbackThemeEngine* fallbackThemeEngine(); | 33 virtual WebKit::WebFallbackThemeEngine* fallbackThemeEngine(); |
36 | 34 |
37 void SetFlingCurveParameters( | |
38 const std::vector<float>& new_touchpad, | |
39 const std::vector<float>& new_touchscreen); | |
40 | |
41 virtual WebKit::WebGestureCurve* createFlingAnimationCurve( | |
42 int device_source, | |
43 const WebKit::WebFloatPoint& velocity, | |
44 const WebKit::WebSize& cumulative_scroll) OVERRIDE; | |
45 | |
46 virtual WebKit::WebThread* createThread(const char* name); | 35 virtual WebKit::WebThread* createThread(const char* name); |
47 virtual WebKit::WebThread* currentThread(); | 36 virtual WebKit::WebThread* currentThread(); |
48 | 37 |
49 virtual void didStartWorkerRunLoop( | 38 virtual void didStartWorkerRunLoop( |
50 const WebKit::WebWorkerRunLoop& runLoop) OVERRIDE; | 39 const WebKit::WebWorkerRunLoop& runLoop) OVERRIDE; |
51 virtual void didStopWorkerRunLoop( | 40 virtual void didStopWorkerRunLoop( |
52 const WebKit::WebWorkerRunLoop& runLoop) OVERRIDE; | 41 const WebKit::WebWorkerRunLoop& runLoop) OVERRIDE; |
53 | 42 |
54 virtual WebKit::WebDiscardableMemory* allocateAndLockDiscardableMemory( | 43 virtual WebKit::WebDiscardableMemory* allocateAndLockDiscardableMemory( |
55 size_t bytes); | 44 size_t bytes); |
56 | 45 |
57 private: | 46 private: |
58 static void DestroyCurrentThread(void*); | 47 static void DestroyCurrentThread(void*); |
59 | 48 |
60 WebThemeEngineImpl native_theme_engine_; | 49 WebThemeEngineImpl native_theme_engine_; |
61 WebFallbackThemeEngineImpl fallback_theme_engine_; | 50 WebFallbackThemeEngineImpl fallback_theme_engine_; |
62 base::ThreadLocalStorage::Slot current_thread_slot_; | 51 base::ThreadLocalStorage::Slot current_thread_slot_; |
63 scoped_ptr<FlingCurveConfiguration> fling_curve_configuration_; | |
64 }; | 52 }; |
65 | 53 |
66 } // namespace webkit_glue | 54 } // namespace webkit_glue |
67 | 55 |
68 #endif // WEBKIT_CHILD_WEBKITPLATFORMSUPPORT_CHILD_IMPL_H_ | 56 #endif // WEBKIT_CHILD_WEBKITPLATFORMSUPPORT_CHILD_IMPL_H_ |
OLD | NEW |