diff options
author | Maurice Kalinowski <maurice.kalinowski@digia.com> | 2013-10-06 15:37:33 +0300 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-11 12:23:15 +0200 |
commit | df25dfef46b1174e6f545e681be3f0ef1541fd75 (patch) | |
tree | 16923da54b6391b7e68c5d0c0eca1348b0ed3057 /src/plugins/platforms/winrt/qwinrtscreen.cpp | |
parent | e31be2964e9b06baa887b600d7bda2e8b8ff82a4 (diff) |
WinRT QPA: Fix touch release on phone
The IsInContact API is not reliable on phone, so use IsLeftButtonPressed
instead.
Change-Id: If17089f976586879355f127dadbe394b57afe3c3
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Diffstat (limited to 'src/plugins/platforms/winrt/qwinrtscreen.cpp')
-rw-r--r-- | src/plugins/platforms/winrt/qwinrtscreen.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/plugins/platforms/winrt/qwinrtscreen.cpp b/src/plugins/platforms/winrt/qwinrtscreen.cpp index 93c2736238..59182ca183 100644 --- a/src/plugins/platforms/winrt/qwinrtscreen.cpp +++ b/src/plugins/platforms/winrt/qwinrtscreen.cpp @@ -866,7 +866,11 @@ HRESULT QWinRTScreen::onPointerUpdated(ICoreWindow *window, IPointerEventArgs *a QHash<quint32, QWindowSystemInterface::TouchPoint>::iterator it = m_touchPoints.find(id); if (it != m_touchPoints.end()) { boolean isPressed; +#ifndef Q_OS_WINPHONE pointerPoint->get_IsInContact(&isPressed); +#else + properties->get_IsLeftButtonPressed(&isPressed); // IsInContact not reliable on phone +#endif it.value().state = isPressed ? Qt::TouchPointMoved : Qt::TouchPointReleased; } else { it = m_touchPoints.insert(id, QWindowSystemInterface::TouchPoint()); |