summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/geoservices/mapboxgl/qgeomappingmanagerenginemapboxgl.cpp5
-rw-r--r--src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp11
2 files changed, 11 insertions, 5 deletions
diff --git a/src/plugins/geoservices/mapboxgl/qgeomappingmanagerenginemapboxgl.cpp b/src/plugins/geoservices/mapboxgl/qgeomappingmanagerenginemapboxgl.cpp
index 5cbde041..cde7871e 100644
--- a/src/plugins/geoservices/mapboxgl/qgeomappingmanagerenginemapboxgl.cpp
+++ b/src/plugins/geoservices/mapboxgl/qgeomappingmanagerenginemapboxgl.cpp
@@ -73,6 +73,11 @@ QGeoMappingManagerEngineMapboxGL::QGeoMappingManagerEngineMapboxGL(const QVarian
m_useChinaEndpoint = parameters.value(QStringLiteral("mapboxgl.china")).toBool();
}
+ if (parameters.contains(QStringLiteral("mapboxgl.api_base_url"))) {
+ const QString apiBaseUrl = parameters.value(QStringLiteral("mapboxgl.api_base_url")).toString();
+ m_settings.setApiBaseUrl(apiBaseUrl);
+ }
+
QVariantMap metadata;
metadata["isHTTPS"] = true;
diff --git a/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp b/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp
index a9cc164f..28a405c3 100644
--- a/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp
+++ b/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp
@@ -115,6 +115,7 @@ enum class InitializationState {
class QGeoPositionInfoSourceWinRTPrivate {
public:
ComPtr<IGeolocator> locator;
+ mutable ComPtr<IGeolocatorStatics> statics;
QTimer periodicTimer;
QTimer singleUpdateTimer;
QGeoPositionInfo lastPosition;
@@ -638,21 +639,21 @@ HRESULT QGeoPositionInfoSourceWinRT::onStatusChanged(IGeolocator *, IStatusChang
bool QGeoPositionInfoSourceWinRT::requestAccess() const
{
+ Q_D(const QGeoPositionInfoSourceWinRT);
qCDebug(lcPositioningWinRT) << __FUNCTION__;
GeolocationAccessStatus accessStatus;
- static ComPtr<IGeolocatorStatics> statics;
ComPtr<IAsyncOperation<GeolocationAccessStatus>> op;
HRESULT hr;
- hr = QEventDispatcherWinRT::runOnXamlThread([&op]() {
+ hr = QEventDispatcherWinRT::runOnXamlThread([&op, d]() {
HRESULT hr;
- if (!statics) {
+ if (!d->statics) {
hr = RoGetActivationFactory(HString::MakeReference(RuntimeClass_Windows_Devices_Geolocation_Geolocator).Get(),
- IID_PPV_ARGS(&statics));
+ IID_PPV_ARGS(&d->statics));
RETURN_HR_IF_FAILED("Could not access Geolocation Statics.");
}
- hr = statics->RequestAccessAsync(&op);
+ hr = d->statics->RequestAccessAsync(&op);
return hr;
});
if (FAILED(hr)) {