OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 #include "webkit/child/fling_curve_configuration.h" | 5 #include "webkit/child/fling_curve_configuration.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "third_party/WebKit/public/platform/WebGestureCurve.h" | 8 #include "third_party/WebKit/public/platform/WebGestureCurve.h" |
9 #include "webkit/child/touch_fling_gesture_curve.h" | 9 #include "webkit/child/touch_fling_gesture_curve.h" |
10 | 10 |
11 namespace webkit_glue { | 11 namespace webkit_glue { |
12 | 12 |
13 FlingCurveConfiguration::FlingCurveConfiguration() { } | 13 FlingCurveConfiguration::FlingCurveConfiguration() { } |
14 | 14 |
15 FlingCurveConfiguration::~FlingCurveConfiguration() { } | 15 FlingCurveConfiguration::~FlingCurveConfiguration() { } |
16 | 16 |
17 void FlingCurveConfiguration::SetCurveParameters( | 17 void FlingCurveConfiguration::SetCurveParameters( |
18 const std::vector<float>& new_touchpad, | 18 const std::vector<float>& new_touchpad, |
19 const std::vector<float>& new_touchscreen) { | 19 const std::vector<float>& new_touchscreen) { |
20 DCHECK(new_touchpad.size() >= 3); | 20 DCHECK(new_touchpad.size() >= 3); |
21 DCHECK(new_touchscreen.size() >= 3); | 21 DCHECK(new_touchscreen.size() >= 3); |
22 base::AutoLock scoped_lock(lock_); | 22 base::AutoLock scoped_lock(lock_); |
23 touchpad_coefs_ = new_touchpad; | 23 touchpad_coefs_ = new_touchpad; |
24 touchscreen_coefs_ = new_touchscreen; | 24 touchscreen_coefs_ = new_touchscreen; |
25 } | 25 } |
26 | 26 |
27 WebKit::WebGestureCurve* FlingCurveConfiguration::CreateCore( | 27 blink::WebGestureCurve* FlingCurveConfiguration::CreateCore( |
28 const std::vector<float>& coefs, | 28 const std::vector<float>& coefs, |
29 const WebKit::WebFloatPoint& velocity, | 29 const blink::WebFloatPoint& velocity, |
30 const WebKit::WebSize& cumulativeScroll) { | 30 const blink::WebSize& cumulativeScroll) { |
31 float p0, p1, p2; | 31 float p0, p1, p2; |
32 | 32 |
33 { | 33 { |
34 base::AutoLock scoped_lock(lock_); | 34 base::AutoLock scoped_lock(lock_); |
35 p0 = coefs[0]; | 35 p0 = coefs[0]; |
36 p1 = coefs[1]; | 36 p1 = coefs[1]; |
37 p2 = coefs[2]; | 37 p2 = coefs[2]; |
38 } | 38 } |
39 | 39 |
40 return TouchFlingGestureCurve::Create(velocity, p0, p1, p2, cumulativeScroll); | 40 return TouchFlingGestureCurve::Create(velocity, p0, p1, p2, cumulativeScroll); |
41 } | 41 } |
42 | 42 |
43 WebKit::WebGestureCurve* FlingCurveConfiguration::CreateForTouchPad( | 43 blink::WebGestureCurve* FlingCurveConfiguration::CreateForTouchPad( |
44 const WebKit::WebFloatPoint& velocity, | 44 const blink::WebFloatPoint& velocity, |
45 const WebKit::WebSize& cumulativeScroll) { | 45 const blink::WebSize& cumulativeScroll) { |
46 return CreateCore(touchpad_coefs_, velocity, cumulativeScroll); | 46 return CreateCore(touchpad_coefs_, velocity, cumulativeScroll); |
47 } | 47 } |
48 | 48 |
49 WebKit::WebGestureCurve* FlingCurveConfiguration::CreateForTouchScreen( | 49 blink::WebGestureCurve* FlingCurveConfiguration::CreateForTouchScreen( |
50 const WebKit::WebFloatPoint& velocity, | 50 const blink::WebFloatPoint& velocity, |
51 const WebKit::WebSize& cumulativeScroll) { | 51 const blink::WebSize& cumulativeScroll) { |
52 return CreateCore(touchscreen_coefs_, velocity, cumulativeScroll); | 52 return CreateCore(touchscreen_coefs_, velocity, cumulativeScroll); |
53 } | 53 } |
54 | 54 |
55 } // namespace webkit_glue | 55 } // namespace webkit_glue |
OLD | NEW |