diff -r 6aeb7a756187 -r 3c88a81ff781 qstmgesturelib/recognisers/qstmtouchgesturerecogniser.cpp --- a/qstmgesturelib/recognisers/qstmtouchgesturerecogniser.cpp Thu Sep 23 15:32:11 2010 -0400 +++ b/qstmgesturelib/recognisers/qstmtouchgesturerecogniser.cpp Fri Oct 15 17:30:59 2010 -0400 @@ -76,19 +76,24 @@ } } else { - produceGesture = (m_powner == puie->target()); // no area defined, touch detected in the window + produceGesture = (puie->target() != NULL);//(m_powner == puie->target()); // no area defined, touch detected in the window } if (produceGesture) { // state = EGestureActive ; do not take ownership, all gestures anyway start with ETouch // issue the touch gesture - qstmGesture::QStm_GenericSimpleGesture pgest(KUid, tapPoint); + qstmGesture::QStm_GenericSimpleGesture pgest(KUid, tapPoint, puie->timestamp()); pgest.setTarget(puie->target()); // Call the listener to inform that a touch has occurred... m_listener->gestureEnter(pgest); + + QStm_GestureRecogniserIf* uknownGesture = pge->gestureAt(pge->gestureCount() - 1); + if (uknownGesture->gestureUid() == EGestureUidUnknown) { + uknownGesture->enable(false); } } } + } return state; }