From 379f398ca56458e413cbebbebcbdfa1337cfb6e5 Mon Sep 17 00:00:00 2001 From: Oliver Wolff Date: Fri, 4 Jan 2019 09:12:09 +0100 Subject: winrt: Depend on access to service for supportedPositioningMethods The locator's status is only updated while a positioning session is active so it does not always reflect the correct state. By checking the access we have a more reliable way to reflect the current state. Task-number: QTBUG-66427 Change-Id: I75d2274c9efd29bf070913246738bf18a9ec5edc Reviewed-by: Miguel Costa --- .../position/winrt/qgeopositioninfosource_winrt.cpp | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp b/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp index a720f104..2fedf5b5 100644 --- a/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp +++ b/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp @@ -197,18 +197,8 @@ QGeoPositionInfo QGeoPositionInfoSourceWinRT::lastKnownPosition(bool fromSatelli QGeoPositionInfoSource::PositioningMethods QGeoPositionInfoSourceWinRT::supportedPositioningMethods() const { - Q_D(const QGeoPositionInfoSourceWinRT); - - qCDebug(lcPositioningWinRT) << __FUNCTION__; - - switch (d->positionStatus) { - case PositionStatus::PositionStatus_NoData: - case PositionStatus::PositionStatus_Disabled: - case PositionStatus::PositionStatus_NotAvailable: - return QGeoPositionInfoSource::NoPositioningMethods; - } - - return QGeoPositionInfoSource::AllPositioningMethods; + return requestAccess() ? QGeoPositionInfoSource::AllPositioningMethods + : QGeoPositionInfoSource::NoPositioningMethods; } void QGeoPositionInfoSourceWinRT::setPreferredPositioningMethods(QGeoPositionInfoSource::PositioningMethods methods) -- cgit v1.2.1