@@ -129,6 +129,8 @@ DirectionalDragArea::DirectionalDragArea(QQuickItem *parent)
129 m_recognitionTimer->setInterval(60);
129 m_recognitionTimer->setInterval(60);
131 m_velocityCalculator = new AxisVelocityCalculator(this);
131 m_velocityCalculator = new AxisVelocityCalculator(this);
133+ connect(this, &QQuickItem::enabledChanged, this, &DirectionalDragArea::onEnabledChanged);
134Direction::Type DirectionalDragArea::direction() const
136Direction::Type DirectionalDragArea::direction() const
@@ -528,6 +530,13 @@ void DirectionalDragArea::checkSpeed()
528 m_numSamplesOnLastSpeedCheck = m_velocityCalculator->numSamples();
530 m_numSamplesOnLastSpeedCheck = m_velocityCalculator->numSamples();
533+void DirectionalDragArea::onEnabledChanged()
535+ if (!isEnabled() && m_status != WaitingForTouch) {
536+ setStatus(WaitingForTouch);
531void DirectionalDragArea::setStatus(DirectionalDragArea::Status newStatus)
540void DirectionalDragArea::setStatus(DirectionalDragArea::Status newStatus)
533 if (newStatus == m_status)
542 if (newStatus == m_status)