summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/src/plugins/nokia.qdoc8
-rw-r--r--src/plugins/geoservices/nokia/qgeocodingmanagerengine_nokia.cpp6
-rw-r--r--src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp6
-rw-r--r--src/plugins/geoservices/nokia/qgeotilefetcher_nokia.cpp6
-rw-r--r--src/plugins/geoservices/nokia/qplacemanagerengine_nokiav1.cpp5
-rw-r--r--src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp6
6 files changed, 29 insertions, 8 deletions
diff --git a/doc/src/plugins/nokia.qdoc b/doc/src/plugins/nokia.qdoc
index 9634333c..cb5cd6f4 100644
--- a/doc/src/plugins/nokia.qdoc
+++ b/doc/src/plugins/nokia.qdoc
@@ -67,7 +67,9 @@ The following table lists optional parameters that can be passed to the Nokia pl
\li Client token part of the app_id/token pair for the service used for authentication by all managers.
\row
\li proxy
- \li Proxy server URL used by all managers.
+ \li Proxy server URL used by all managers. For usage of the system proxy just pass "system" as value.
+
+ \note See the notes in \l{QNetworkProxy::systemProxyForQuery}{QNetworkProxy} for further information.
\row
\li mapping.host
\li Map tile service URL used by mapping manager.
@@ -110,7 +112,7 @@ application.
\code
Plugin {
name: "nokia"
- PluginParameter { name: "proxy"; value: "http://127.0.0.1:8080" }
+ PluginParameter { name: "proxy"; value: "system" }
PluginParameter { name: "token"; value: "abcdefg12345" }
}
\endcode
@@ -119,7 +121,7 @@ Plugin {
\code
QMap<QString,QVariant> params;
-params["proxy"] = "http://127.0.0.1:8080";
+params["proxy"] = "system";
params["token"] = "abcdefg12345";
QGeoServiceProvider *gsp = new QGeoServiceProvider("nokia", params);
diff --git a/src/plugins/geoservices/nokia/qgeocodingmanagerengine_nokia.cpp b/src/plugins/geoservices/nokia/qgeocodingmanagerengine_nokia.cpp
index 1d2636e6..3513abf7 100644
--- a/src/plugins/geoservices/nokia/qgeocodingmanagerengine_nokia.cpp
+++ b/src/plugins/geoservices/nokia/qgeocodingmanagerengine_nokia.cpp
@@ -53,6 +53,7 @@
#include <qgeoaddress.h>
#include <qgeocoordinate.h>
#include <QNetworkProxy>
+#include <QNetworkProxyFactory>
#include <QUrl>
#include <QMap>
#include <QStringList>
@@ -67,7 +68,7 @@ QGeocodingManagerEngineNokia::QGeocodingManagerEngineNokia(const QMap<QString, Q
if (parameters.contains("proxy")) {
QString proxy = parameters.value("proxy").toString();
- if (!proxy.isEmpty()) {
+ if (!proxy.isEmpty() && proxy.toLower() != QLatin1String("system")) {
QUrl proxyUrl(proxy);
if (proxyUrl.isValid()) {
m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
@@ -76,6 +77,9 @@ QGeocodingManagerEngineNokia::QGeocodingManagerEngineNokia(const QMap<QString, Q
proxyUrl.userName(),
proxyUrl.password()));
}
+ } else if (!proxy.isEmpty()) {
+ if (QNetworkProxy::applicationProxy().type() == QNetworkProxy::NoProxy)
+ QNetworkProxyFactory::setUseSystemConfiguration(true);
}
}
diff --git a/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp b/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
index bc6e8234..4ecc338b 100644
--- a/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
+++ b/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
@@ -51,6 +51,7 @@
#include <QStringList>
#include <QNetworkProxy>
+#include <QNetworkProxyFactory>
#include <QUrl>
#include <qgeoboundingbox.h>
@@ -69,7 +70,7 @@ QGeoRoutingManagerEngineNokia::QGeoRoutingManagerEngineNokia(const QMap<QString,
if (proxy.isEmpty())
proxy = parameters.value("routing.proxy").toString();
- if (!proxy.isEmpty()) {
+ if (!proxy.isEmpty() && proxy.toLower() != QLatin1String("system")) {
QUrl proxyUrl(proxy);
if (proxyUrl.isValid()) {
m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
@@ -78,6 +79,9 @@ QGeoRoutingManagerEngineNokia::QGeoRoutingManagerEngineNokia(const QMap<QString,
proxyUrl.userName(),
proxyUrl.password()));
}
+ } else if (!proxy.isEmpty()) {
+ if (QNetworkProxy::applicationProxy().type() == QNetworkProxy::NoProxy)
+ QNetworkProxyFactory::setUseSystemConfiguration(true);
}
}
diff --git a/src/plugins/geoservices/nokia/qgeotilefetcher_nokia.cpp b/src/plugins/geoservices/nokia/qgeotilefetcher_nokia.cpp
index 9fe4120a..ad4e56d6 100644
--- a/src/plugins/geoservices/nokia/qgeotilefetcher_nokia.cpp
+++ b/src/plugins/geoservices/nokia/qgeotilefetcher_nokia.cpp
@@ -55,6 +55,7 @@
#include <QNetworkAccessManager>
#include <QNetworkProxy>
+#include <QNetworkProxyFactory>
#include <QSize>
#include <QDir>
#include <QUrl>
@@ -91,7 +92,7 @@ bool QGeoTileFetcherNokia::init()
if (proxy.isEmpty())
proxy = m_parameters.value("mapping.proxy").toString();
- if (!proxy.isEmpty()) {
+ if (!proxy.isEmpty() && proxy.toLower() != QLatin1String("system")) {
QUrl proxyUrl(proxy);
if (proxyUrl.isValid()) {
m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
@@ -100,6 +101,9 @@ bool QGeoTileFetcherNokia::init()
proxyUrl.userName(),
proxyUrl.password()));
}
+ } else if (!proxy.isEmpty()) {
+ if (QNetworkProxy::applicationProxy().type() == QNetworkProxy::NoProxy)
+ QNetworkProxyFactory::setUseSystemConfiguration(true);
}
}
diff --git a/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav1.cpp b/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav1.cpp
index f658d9ee..fe1683f6 100644
--- a/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav1.cpp
+++ b/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav1.cpp
@@ -75,7 +75,7 @@ QPlaceManagerEngineNokiaV1::QPlaceManagerEngineNokiaV1(const QMap<QString, QVari
if (proxy.isEmpty())
proxy = parameters.value("places.proxy").toString();
- if (!proxy.isEmpty()) {
+ if (!proxy.isEmpty() && proxy.toLower() != QLatin1String("system")) {
QUrl proxyUrl(proxy);
if (proxyUrl.isValid()) {
QPlaceRestManager::instance()->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
@@ -84,6 +84,9 @@ QPlaceManagerEngineNokiaV1::QPlaceManagerEngineNokiaV1(const QMap<QString, QVari
proxyUrl.userName(),
proxyUrl.password()));
}
+ } else if (!proxy.isEmpty()) {
+ if (QNetworkProxy::applicationProxy().type() == QNetworkProxy::NoProxy)
+ QNetworkProxyFactory::setUseSystemConfiguration(true);
}
}
diff --git a/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp b/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp
index d716b29f..fe43d6ed 100644
--- a/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp
+++ b/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp
@@ -59,6 +59,7 @@
#include <QtCore/QJsonDocument>
#include <QtCore/QJsonObject>
#include <QtNetwork/QNetworkProxy>
+#include <QtNetwork/QNetworkProxyFactory>
#ifdef USE_CHINA_NETWORK_REGISTRATION
#include <QtSystemInfo/QNetworkInfo>
#endif
@@ -99,7 +100,7 @@ QPlaceManagerEngineNokiaV2::QPlaceManagerEngineNokiaV2(const QMap<QString, QVari
if (proxy.isEmpty())
proxy = parameters.value("places.proxy").toString();
- if (!proxy.isEmpty()) {
+ if (!proxy.isEmpty() && proxy.toLower() != QLatin1String("system")) {
QUrl proxyUrl(proxy);
if (proxyUrl.isValid()) {
m_manager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
@@ -108,6 +109,9 @@ QPlaceManagerEngineNokiaV2::QPlaceManagerEngineNokiaV2(const QMap<QString, QVari
proxyUrl.userName(),
proxyUrl.password()));
}
+ } else if (!proxy.isEmpty()) {
+ if (QNetworkProxy::applicationProxy().type() == QNetworkProxy::NoProxy)
+ QNetworkProxyFactory::setUseSystemConfiguration(true);
}
}