summaryrefslogtreecommitdiffstats
path: root/scroller
diff options
context:
space:
mode:
authorRalf Engels <ralf.engels@nokia.com>2010-05-28 19:33:47 +0200
committerRalf Engels <ralf.engels@nokia.com>2010-05-28 19:33:47 +0200
commitd16e7a55988277e34492f6ded8e7b197d26e99e0 (patch)
tree611f7fd181153bc63ec8d8ed74c38b35e60cff1f /scroller
parente3c1d7d45146fe99ef766a043c9d9eca3b4e22ed (diff)
Revert "Small improvements for flick gesture"
This reverts commit e3c1d7d45146fe99ef766a043c9d9eca3b4e22ed.
Diffstat (limited to 'scroller')
-rw-r--r--scroller/qflickgesture.cpp29
-rw-r--r--scroller/qkineticscroller.cpp8
2 files changed, 14 insertions, 23 deletions
diff --git a/scroller/qflickgesture.cpp b/scroller/qflickgesture.cpp
index 6fa9dde..a1eef75 100644
--- a/scroller/qflickgesture.cpp
+++ b/scroller/qflickgesture.cpp
@@ -128,7 +128,7 @@ QGestureRecognizer::Result QFlickGestureRecognizer::recognize(QGesture *state,
event->type() == QEvent::MouseButtonRelease) )
return QGestureRecognizer::Ignore | QGestureRecognizer::ConsumeEventHint;
- // qDebug()<<"recognize event: "<<event<<"target:"<<d->target<<"scroller:"<<d->scroller();
+ qDebug()<<"recognize event: "<<event<<"target:"<<d->target<<"scroller:"<<d->scroller();
QKineticScroller::State oldState = scroller->state();
@@ -158,25 +158,12 @@ QGestureRecognizer::Result QFlickGestureRecognizer::recognize(QGesture *state,
case QEvent::TouchBegin:
scroller->handleInput(QKineticScroller::InputPress, tp.pos(), timestamp);
break;
- // return QGestureRecognizer::MayBeGesture;
case QEvent::TouchEnd:
scroller->handleInput(QKineticScroller::InputRelease, tp.pos(), timestamp);
break;
- /*
- if (oldState == QKineticScroller::StatePressed)
- return QGestureRecognizer::CancelGesture;
- else
- return QGestureRecognizer::FinishGesture | QGestureRecognizer::ConsumeEventHint;
- */
case QEvent::TouchUpdate:
scroller->handleInput(QKineticScroller::InputMove, tp.pos(), timestamp);
break;
- /*
- if (scroller->state() == QKineticScroller::StatePressed)
- return QGestureRecognizer::MayBeGesture;
- else
- return QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint;
- */
default:
break;
}
@@ -192,19 +179,19 @@ QGestureRecognizer::Result QFlickGestureRecognizer::recognize(QGesture *state,
QGestureRecognizer::FinishGesture | QGestureRecognizer::ConsumeEventHint},
// new state pressed
{QGestureRecognizer::MayBeGesture,
- QGestureRecognizer::Ignore,
+ QGestureRecognizer::MayBeGesture,
QGestureRecognizer::FinishGesture | QGestureRecognizer::ConsumeEventHint,
QGestureRecognizer::FinishGesture | QGestureRecognizer::ConsumeEventHint},
// new state dragging
{QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint,
QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint,
- QGestureRecognizer::Ignore | QGestureRecognizer::ConsumeEventHint,
- QGestureRecognizer::Ignore | QGestureRecognizer::ConsumeEventHint},
+ QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint,
+ QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint},
// new state scrolling
{QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint,
QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint,
- QGestureRecognizer::Ignore | QGestureRecognizer::ConsumeEventHint,
- QGestureRecognizer::Ignore | QGestureRecognizer::ConsumeEventHint}
+ QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint,
+ QGestureRecognizer::TriggerGesture | QGestureRecognizer::ConsumeEventHint}
};
return resultMatrix[(int)newState][(int)oldState];
@@ -212,7 +199,9 @@ QGestureRecognizer::Result QFlickGestureRecognizer::recognize(QGesture *state,
void QFlickGestureRecognizer::reset(QGesture *state)
{
- // carefull here: the gesture is reset if we cancel or finishe the gesture.
+ QFlickGesture *flick = static_cast<QFlickGesture*>(state);
+ flick->d->target = 0;
+ flick->d->timer.start();
QGestureRecognizer::reset(state);
}
diff --git a/scroller/qkineticscroller.cpp b/scroller/qkineticscroller.cpp
index e031ec1..75556a4 100644
--- a/scroller/qkineticscroller.cpp
+++ b/scroller/qkineticscroller.cpp
@@ -52,7 +52,7 @@ QT_BEGIN_NAMESPACE
bool qt_sendSpontaneousEvent(QObject *receiver, QEvent *event);
-// #define KINETIC_SCROLLER_DEBUG
+#define KINETIC_SCROLLER_DEBUG
#ifdef KINETIC_SCROLLER_DEBUG
# define qKSDebug qDebug
@@ -339,6 +339,7 @@ bool QKineticScroller::handleInput(Input input, const QPointF &position, qint64
{
Q_D(QKineticScroller);
+
qKSDebug() << "QKS::handleInput(" << input << ", " << position << ", " << timestamp << ")";
struct statechange {
State state;
@@ -360,7 +361,7 @@ bool QKineticScroller::handleInput(Input input, const QPointF &position, qint64
statechange *sc = statechanges + i;
if (d->state == sc->state && input == sc->input)
- return (d->*sc->handler)(input, position - d->overshootPosition, timestamp);
+ return (d->*sc->handler)(input, position, timestamp);
}
qWarning() << "Unhandled input: got input " << d->inputName(input) << " while in state " << d->stateName(d->state);
@@ -654,9 +655,10 @@ void QKineticScrollerPrivate::handleDrag(const QPointF &position, qint64 timesta
bool QKineticScrollerPrivate::pressWhileInactive(QKineticScroller::Input, const QPointF &position, qint64 timestamp)
{
QScrollPrepareEvent spe(position);
+ qDebug() << "Sending prepare event to "<<receiver;
sendEvent(receiver, &spe);
- qKSDebug() << "QScrollPrepareEvent returned with "<<spe.isAccepted()<<"for"<<spe.target();
+ qDebug() << "Returned with "<<spe.isAccepted()<<"for"<<spe.target();
if (spe.isAccepted() && spe.target()) {
target = spe.target();
viewportSize = spe.viewportSize();