aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickflickable_p_p.h
diff options
context:
space:
mode:
authorMartin Jones <martin.jones@nokia.com>2012-01-31 09:12:13 +1000
committerQt by Nokia <qt-info@nokia.com>2012-02-02 03:55:21 +0100
commitc1e668a96764d1a252322ebae3af72097c27dfe1 (patch)
tree8500010095c43a04170859d8bb926482bab7bb0b /src/quick/items/qquickflickable_p_p.h
parent0b575d9405972a17eebea653c422442580597263 (diff)
Multiple fast flicks with large content moves faster
Repeatedly flicking quickly in a large view moves faster than the velocity of the touch. Task-number: QTBUG-18600 Change-Id: Ie6747e0d945022e0c0c5f6c5f95bc35403a14d56 Reviewed-by: Martin Jones <martin.jones@nokia.com>
Diffstat (limited to 'src/quick/items/qquickflickable_p_p.h')
-rw-r--r--src/quick/items/qquickflickable_p_p.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/quick/items/qquickflickable_p_p.h b/src/quick/items/qquickflickable_p_p.h
index 0cd7113909..e4290f2bf5 100644
--- a/src/quick/items/qquickflickable_p_p.h
+++ b/src/quick/items/qquickflickable_p_p.h
@@ -71,7 +71,7 @@ QT_BEGIN_NAMESPACE
const qreal MinimumFlickVelocity = 75.0;
class QQuickFlickableVisibleArea;
-class QQuickFlickablePrivate : public QQuickItemPrivate, public QQuickItemChangeListener
+class Q_AUTOTEST_EXPORT QQuickFlickablePrivate : public QQuickItemPrivate, public QQuickItemChangeListener
{
Q_DECLARE_PUBLIC(QQuickFlickable)
@@ -97,6 +97,7 @@ public:
struct AxisData {
AxisData(QQuickFlickablePrivate *fp, void (QQuickFlickablePrivate::*func)(qreal))
: move(fp, func), viewSize(-1), startMargin(0), endMargin(0)
+ , continuousFlickVelocity(0)
, smoothVelocity(fp), atEnd(false), atBeginning(true)
, fixingUp(false), inOvershoot(false), moving(false), flicking(false)
, dragging(false), extentsChanged(false)
@@ -129,6 +130,7 @@ public:
qreal flickTarget;
qreal startMargin;
qreal endMargin;
+ qreal continuousFlickVelocity;
QQuickFlickablePrivate::Velocity smoothVelocity;
QPODVector<qreal,10> velocityBuffer;
bool atEnd : 1;
@@ -198,6 +200,7 @@ public:
QBasicTimer delayedPressTimer;
int pressDelay;
int fixupDuration;
+ qreal flickBoost;
enum FixupMode { Normal, Immediate, ExtentChanged };
FixupMode fixupMode;