summaryrefslogtreecommitdiff
path: root/src/imports/positioning
diff options
context:
space:
mode:
authorPaolo Angelelli <paolo.angelelli@qt.io>2017-09-05 18:46:09 +0200
committerPaolo Angelelli <paolo.angelelli@qt.io>2017-09-05 18:47:14 +0200
commit021f2157cd18a6d37a9569bf3aba34f3af173ed5 (patch)
tree6fc11a62ecd3df6e4214ecc2860f904d0e31dbbc /src/imports/positioning
parent222ba4b733f67a51758708e27b7c76cdaaa3e228 (diff)
parent8f80da7ea0165adb492c71255d0eea5f08c0af8e (diff)
downloadqtlocation-021f2157cd18a6d37a9569bf3aba34f3af173ed5.tar.gz
Merge remote-tracking branch 'origin/5.9' into 5.10
Change-Id: Ibfd8b430011abb0a7174bbcc158b03f8e26492eb
Diffstat (limited to 'src/imports/positioning')
-rw-r--r--src/imports/positioning/qdeclarativepositionsource.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/imports/positioning/qdeclarativepositionsource.cpp b/src/imports/positioning/qdeclarativepositionsource.cpp
index b0e990da..05232d51 100644
--- a/src/imports/positioning/qdeclarativepositionsource.cpp
+++ b/src/imports/positioning/qdeclarativepositionsource.cpp
@@ -559,10 +559,9 @@ QDeclarativePositionSource::PositioningMethods QDeclarativePositionSource::prefe
void QDeclarativePositionSource::start()
{
- if (!m_positionSource)
- return;
+ if (m_positionSource)
+ m_positionSource->startUpdates();
- m_positionSource->startUpdates();
if (!m_active) {
m_active = true;
emit activeChanged();
@@ -721,6 +720,12 @@ void QDeclarativePositionSource::componentComplete()
static_cast<QGeoPositionInfoSource::PositioningMethods>(int(m_preferredPositioningMethods)));
setPosition(m_positionSource->lastKnownPosition());
+
+ if (m_active)
+ QTimer::singleShot(0, this, SLOT(start())); // delay ensures all properties have been set
+ } else if (m_active) {
+ m_active = false;
+ emit activeChanged();
}
if (previousUpdateInterval != updateInterval())
@@ -733,12 +738,6 @@ void QDeclarativePositionSource::componentComplete()
emit supportedPositioningMethodsChanged();
emit validityChanged();
-
- if (m_active) {
- m_active = false;
- emit activeChanged();
- }
-
emit nameChanged();
}
}