summaryrefslogtreecommitdiffstats
path: root/src/location/declarativemaps/qdeclarativegeomapcopyrightsnotice.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/location/declarativemaps/qdeclarativegeomapcopyrightsnotice.cpp')
-rw-r--r--src/location/declarativemaps/qdeclarativegeomapcopyrightsnotice.cpp21
1 files changed, 15 insertions, 6 deletions
diff --git a/src/location/declarativemaps/qdeclarativegeomapcopyrightsnotice.cpp b/src/location/declarativemaps/qdeclarativegeomapcopyrightsnotice.cpp
index 1101eb18..1a8489eb 100644
--- a/src/location/declarativemaps/qdeclarativegeomapcopyrightsnotice.cpp
+++ b/src/location/declarativemaps/qdeclarativegeomapcopyrightsnotice.cpp
@@ -129,20 +129,29 @@ void QDeclarativeGeoMapCopyrightNotice::setMapSource(QDeclarativeGeoMap *mapSour
if (mapSource) {
m_mapSource = mapSource;
// First update the copyright. Only Image will do here, no need to store HTML right away.
- if (!mapSource->m_copyrights->m_copyrightsImage.isNull())
+ if (mapSource->m_copyrights && !mapSource->m_copyrights->m_copyrightsImage.isNull())
m_copyrightsImage = mapSource->m_copyrights->m_copyrightsImage;
connect(m_mapSource, SIGNAL(copyrightsChanged(QImage)),
this, SLOT(copyrightsChanged(QImage)));
connect(m_mapSource, SIGNAL(copyrightsChanged(QString)),
this, SLOT(copyrightsChanged(QString)));
- connect(m_mapSource->m_map, SIGNAL(copyrightsStyleSheetChanged(QString)),
- this, SLOT(onCopyrightsStyleSheetChanged(QString)));
- connect(this, SIGNAL(linkActivated(QString)),
- m_mapSource, SIGNAL(copyrightLinkActivated(QString)));
- onCopyrightsStyleSheetChanged(m_mapSource->m_map->copyrightsStyleSheet());
+ if (m_mapSource->m_map)
+ connectMap();
+ else
+ connect(m_mapSource, &QDeclarativeGeoMap::mapReadyChanged, this, &QDeclarativeGeoMapCopyrightNotice::connectMap);
}
+}
+
+void QDeclarativeGeoMapCopyrightNotice::connectMap()
+{
+ connect(m_mapSource->m_map, SIGNAL(copyrightsStyleSheetChanged(QString)),
+ this, SLOT(onCopyrightsStyleSheetChanged(QString)));
+ connect(this, SIGNAL(linkActivated(QString)),
+ m_mapSource, SIGNAL(copyrightLinkActivated(QString)));
+
+ onCopyrightsStyleSheetChanged(m_mapSource->m_map->copyrightsStyleSheet());
update();
emit mapSourceChanged();