diff options
author | Tasuku Suzuki <tasuku.suzuki@qt.io> | 2018-11-08 15:26:57 +0900 |
---|---|---|
committer | Paolo Angelelli <paolo.angelelli@qt.io> | 2018-11-14 17:50:15 +0000 |
commit | 85df79b094d1097108a28424d6f9b3b76b3aee62 (patch) | |
tree | 98d63c5e92f3039565e973228f6087d96ca40ff8 /src/location/declarativemaps/qquickgeomapgesturearea.cpp | |
parent | 25c6840ff6585ca9f7ab1c168cdcdd18a68c7885 (diff) | |
download | qtlocation-85df79b094d1097108a28424d6f9b3b76b3aee62.tar.gz |
Fix unstable rotation gesture
Order of touch events are not sorted on some platform. When touch point
1 and
2 are swapped, map is rotated 180 degrees in a moment
Change-Id: I9c308b805a6ca54519f26a9ff19217de7f947c17
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
Diffstat (limited to 'src/location/declarativemaps/qquickgeomapgesturearea.cpp')
-rw-r--r-- | src/location/declarativemaps/qquickgeomapgesturearea.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/location/declarativemaps/qquickgeomapgesturearea.cpp b/src/location/declarativemaps/qquickgeomapgesturearea.cpp index c6f4b42f..576aeeea 100644 --- a/src/location/declarativemaps/qquickgeomapgesturearea.cpp +++ b/src/location/declarativemaps/qquickgeomapgesturearea.cpp @@ -1087,6 +1087,7 @@ void QQuickGeoMapGestureArea::update() m_allPoints << m_touchPoints; if (m_allPoints.isEmpty() && !m_mousePoint.isNull()) m_allPoints << *m_mousePoint.data(); + std::sort(m_allPoints.begin(), m_allPoints.end(), [](const QTouchEvent::TouchPoint &tp1, const QTouchEvent::TouchPoint &tp2) { return tp1.id() < tp2.id(); }); touchPointStateMachine(); |