diff options
author | Ralf Engels <ralf.engels@nokia.com> | 2010-05-28 19:33:47 +0200 |
---|---|---|
committer | Ralf Engels <ralf.engels@nokia.com> | 2010-05-28 19:33:47 +0200 |
commit | d16e7a55988277e34492f6ded8e7b197d26e99e0 (patch) | |
tree | 611f7fd181153bc63ec8d8ed74c38b35e60cff1f /scroller | |
parent | e3c1d7d45146fe99ef766a043c9d9eca3b4e22ed (diff) |
Revert "Small improvements for flick gesture"
This reverts commit e3c1d7d45146fe99ef766a043c9d9eca3b4e22ed.
Diffstat (limited to 'scroller')
-rw-r--r-- | scroller/qflickgesture.cpp | 29 | ||||
-rw-r--r-- | scroller/qkineticscroller.cpp | 8 |
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(); |