summaryrefslogtreecommitdiff
path: root/src/location/declarativemaps/qdeclarativegeomap.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Change QQmlListProperty ctor expecting a QList ptrv5.15.0-beta4Alex Blasche2020-04-031-1/+1
| | | | | | | This was introduced by 5a4ffa0de0ecc666a514ef60f0149a76d25b040d Change-Id: Icccf0c8cd3154c102fd93b79e81199e043f7d0bb Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Enable mercator-to-screen projection in GLSLPaolo Angelelli2020-02-111-2/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With this change, all the geo-to-screen conversion, and the triangulation operations for geo polylines and geo polygon are performed either at set time or in the shader. A separate bounding box geometry is processed in the old way to provide a correct QtQuick Item geometry, that can be used for nesting mouse areas, performing translations, input event delivery, etc. With this approach, performance are improved by more than one order of magnitude in average, but complex geometries will of course benefit more. It also adds correct rendering support for polygons with holes, previously only rendered correctly by the MapboxGL plugin. The polyline shader has basic miter joins. The miter is skipped if the angle is too sharp to avoid complicating the implementation. This shader introduces some glitches when the polyline is minified, for which the real fix is to have LOD for the geometry, and render simplified geometries at low zoom levels (added in a subsequent patch). Note: this approach, at least in its current implementation, does not support enabling layers on individual items, only on the Map element. Task-number: QTBUG-49303 Task-number: QTBUG-38459 Change-Id: I0c2dc0bf364d32f74ca7c4014f6d66e6219c8ae4 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-11-121-6/+15
|\ | | | | | | Change-Id: Ifa572a6e1c0835e0ca6d5bf85cde1db854604cf6
| * Fix visibleRegionChanged signal emissionv5.14.0-beta3Paolo Angelelli2019-11-041-6/+15
| | | | | | | | | | | | | | Emit on mapReady changed, and do not emit before then. Change-Id: I1d5c657119cb63989cfa35f58ce57d24833f6438 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-11-011-10/+29
|\ \ | |/ | | | | Change-Id: Ia876d943c684fbefddd693f00a16b2f2cec18223
| * Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-11-011-10/+29
| |\ | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I21ae20734645fc34b302409163f7400015d8302c
| | * Fix slow Map.removeMapItemPaolo Angelelli2019-10-311-10/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes connections in map items to react on map changes. A further improvement could be replacing item lists with QSets. This might however have implications with plugins which might expect ordered items. Change-Id: I52dbd64ed22762b1e2d51d1bc38f496346e7a664 Fixes: QTBUG-76950 (cherry picked from commit 2bb07804f32e0c9cc7948a5cff0bcef81ae9d8c9) Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-051-1/+1
|\ \ \ | |/ / | | | | | | Change-Id: I219a1353a21d29177e0cd7f21d64c06a8f28fced
| * | Fix 5.14 QML API inconsistenciesv5.14.0-beta2Paolo Angelelli2019-10-041-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I54bf3791d3d5e40fb9405c2f1527758fcfba8120 Fixes: QTBUG-78690 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Add optional argument to Map.fitViewportToMapItemsPaolo Angelelli2019-09-261-14/+30
|/ / | | | | | | | | | | | | | | So that a user-specified list of items can be fitted without requiring complex computations in JS to deduct the enclosing geo rectangle. Change-Id: I4a36fe72a49d5fc3566ba0b9fe1db930c4008885 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-06-031-6/+6
|\ \ | |/ | | | | Change-Id: I46ebc392ac3f5da89bc9957113247dd18d682fc1
| * Doc: Fix documentation issuesTopi Reinio2019-05-161-6/+6
| | | | | | | | | | | | | | | | | | | | | | Fix various documentation-related issues, including missing parameter documentation, broken links, and typos. Do some minor language editing. Change-Id: I0a8f8457e0d1ab56b4fc4670376509adf1fd26a3 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Fix deprecation warningsFriedemann Kleint2019-05-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix warnings: maps/qgeotilefetcher.cpp:78:36: warning: 'QList<T> QSet<T>::toList() const [with T = QGeoTileSpec]' is deprecated: Use values() instead. [-Wdeprecated-declarations] declarativeplaces/qdeclarativeplace.cpp:1088:101: warning: 'QVariant qVariantFromValue(const T&) [with T = QDeclarativePlaceAttribute*]' is deprecated: Use QVariant::fromValue() instead. [-Wdeprecated-declarations] maps/qgeotiledmapscene.cpp:498:62: warning: 'static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QGeoTileSpec]' is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] maps/qgeotiledmapscene.cpp:498:89: warning: 'static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QGeoTileSpec]' is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] maps/qgeotiledmapscene.cpp:643:61: warning: 'static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QGeoTileSpec]' is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] maps/qgeotiledmapscene.cpp:643:94: warning: 'static QSet<T> QSet<T>::fromList(const QList<T>&) [with T = QGeoTileSpec]' is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] /data1/frkleint/qt-dev/qtbase/include/QtCore/../../src/corelib/tools/qset.h:400:23: warning: 'QSet<T> QList<T>::toSet() const [with T = QGeoTileSpec]' is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] declarativemaps/qdeclarativegeomap.cpp:453:45: warning: 'QSet<T> QList<T>::toSet() const [with T = QObject*]' is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] qplacemanagerengine_test.h:477:72: warning: 'QSet<T> QList<T>::toSet() const [with T = QPlaceCategory]' is deprecated: Use QSet<T>(list.begin(), list.end()) instead. [-Wdeprecated-declarations] ../utils/qlocationtestutils.cpp:50:31: warning: 'QString& QString::sprintf(const char*, ...)' is deprecated: Use asprintf(), arg() or QTextStream instead [-Wdeprecated-declarations] Change-Id: Ice04fd0f158ee95a42f53b33dcb7b9204a33c90e Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.13' into dev" into ↵Qt Forward Merge Bot2019-04-101-25/+33
|\ \ | |/ | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-04-011-25/+33
| |\ | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I5700c90ee86873599b5e7c9ccb6cef7ca48153e7
| | * Fix Map destructor incorrectly deleting MapItemViewsPaolo Angelelli2019-03-251-25/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the views are explicitly destroyed, leading to issues, in particular for views declared inside the Map. Change it to simply remove these views from the map. Child views will be destroyed in ~QObject. [ChangeLog] Fixed crash when destroying Maps containing MapItemViews. Change-Id: Iff9b1afd6b17b55671b1f999b1bf69f172a05483 Fixes: QTBUG-69195 Fixes: QTBUG-74337 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | | Add notification signal to Map.visibleRegion propertyPaolo Angelelli2019-04-101-5/+21
|/ / | | | | | | | | | | | | [ChangeLog] Added notification signal to Map.visibleRegion property. Change-Id: I77d5e1f086a94a677d452644bb82ada1b765c617 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Unify semicolon usage in Q_UNUSEDJesus Fernandez2019-01-231-1/+1
| | | | | | | | | | Change-Id: I36dd6881b6f6f028869d63b6311cba7f52a99cc4 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Expose manager-specific errors from QGeoServiceProviderPaolo Angelelli2019-01-141-2/+2
| | | | | | | | | | | | | | | | | | So that there's no risk to mix failures when creating multiple managers. Task-number: QTBUG-72180 Change-Id: I5c3b18ba17094e1480b2376e37b58d47029ca8f4 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Add Map.fitViewportToGeoShape(shape, margins)Paolo Angelelli2018-12-111-35/+60
|/ | | | | | | | | This method extends the functionality of setting the visibleRegion, by also allowing to specify the margins in pixels. Task-number: QTBUG-69640 Change-Id: I196d0410782992ad2ac954aa08e226521b87ba7b Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix compilation with gcc 4.8Ville Voutilainen2018-12-031-8/+8
| | | | | | | GCC 4.8 doesn't like using QPointer in signal connections. Change-Id: I9504efb259712a65427ef1366ca562882085404e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix missing emits pre-map-initializationPaolo Angelelli2018-08-211-0/+15
| | | | | | | | | | This patch fixes a regression introduced with 367c49e91366aa9b13bc7d64209321168680841e, that doesn't make the Map emit property changed signals before it is initialized for camera data properties. Change-Id: I14ea0a08780d7b2ed79c72f37bc340a1780a0d78 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Move management of QDeclarativeGeoMap camera data into QGeoMapPaolo Angelelli2018-08-201-122/+96
| | | | | | | | | | | | | This patch makes QDeclarativeGeoMap always refer to QGeoMap when it comes to setting and getting camera data properties. The signal emission for each of these properties is also deferred to the reception of QGeoMap::cameraDataChanged. This patch also enable plugins to enforce tilt ranges per zoom, updating the tilt value (as well as any other camera data value) on their own. Change-Id: Icc16645ea53fa2b53b33530f802ce390a2479d39 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Enable nested MapItemViewsPaolo Angelelli2018-07-271-109/+184
| | | | | | | | | | | | | | | | | | | | | | | | | This change allows MapItemView to use a MapItem, MapItemGroup or MapItemView as delegate. To achieve this, MapItemView base class also changes from QObject to MapItemGroup, effectively making MapItemView a MapItemGroup. Note, though, that MapItemGroup API in Map should be avoided, when dealing with a MapItemView, and only MapItemView-specific API should be used. Tests and example coming after [ChangeLog][QtLocation] Enabled nesting of MapItemView. This required a behavioral change, as MapItemView is now a MapItemGroup, not anymore a plain QObject. Due to a bug, MapItemView was previously not a Qt Quick Item, making it possible to create it as a child of any QObject. This has now been fixed, so if you happen to have a MapItemView in your scene which is not a child of a Qt Quick Item, you will get an error message. Task-number: QTBUG-62683 Task-number: QTBUG-62397 Change-Id: Id97e480429e7f952a541fe88df5c01317afeac18 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Introduce Map.visibleAreaPaolo Angelelli2018-07-261-28/+79
| | | | | | | | | | This will allow moving the visible map area to a subregion of the viewport, allowing to maintain the desired visible region visible when overlaying controls on top of the map. Task-number: QTBUG-68966 Change-Id: Idf4b30f7c1e4062e5e1c0ddc01a31bc856c0bc0c Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix compilation when building with qreal defined as floatLuca Carlon2018-07-191-12/+12
| | | | | | | | Call function templates with explicit type to force call using double precision arguments even when qreal is defined as float. Change-Id: Ida5004cdcba9b984a897e2eb7ae15044080d6adc Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Fix MapItemView not setting context data upon item deletionPaolo Angelelli2018-04-171-2/+0
| | | | | | | | | | | | | | | | | | | | The current implementation does not properly re-set context data upon model item deletion/change. This patch uses a QQmlDelegateModel that does all the management internally. To accommodate for items disappearing/reappearing all at once, potentially introducing flickering, a fixed opacity transition 300msec long has been introduced as exit transition. In later Qt releases, new API can be added to let the user change it, as well as also adding an enter transition and possibly more. Task-number: QTBUG-62086 Task-number: QTBUG-65833 Change-Id: I59a8147a12f035d5c7f86c2546e9144b2e1a7b3c Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix coding style in QDeclarativeGeoMapItemViewPaolo Angelelli2018-04-171-3/+3
| | | | | | | | Replace trailing underscore with leading m_ Change-Id: I9c22beefa1819a33ff49dc26f4601af04eecaf58 Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix crash when calling Map.clearData at application startupPaolo Angelelli2018-04-171-1/+2
| | | | | | Task-number: QTBUG-67759 Change-Id: Ie14291ed099aef520ca158c7d146c46ad49625d7 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Doc: Fix all documentation warningsTopi Reinio2018-03-271-9/+9
| | | | | | | | | | | | | | | | | | | | Fix multiple warnings caused by invalid documentation configuration, missing QML module specifiers, wrong QML type names, incorrect arguments for the \fn command, and missing documentation. Remove incorrect statement from the example usage of the Waypoint QML type. Use 'QtLocation' as the name for the module throughout the docs. Clang (used as the parser for QDoc in Qt 5.11) was unable to resolve the path for qlocation.h, causing QDoc to omit the QLocation namespace documentation. Fix this by including the file explicitly from qlocationglobal.h for documentation builds. Change-Id: I2bd790db1ff5ad96f0cdb415a682b97593b3a6dc Reviewed-by: Martin Smith <martin.smith@qt.io>
* Refactor input handling codePaolo Angelelli2018-03-231-124/+123
| | | | | | | | Fix coding style in map gesture area, and move all input handling code in the same section in qdeclarativegeomap.cpp Change-Id: I33ef572cb85ebbb446ee9ff0a1359abbe55c3dfa Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.11Liang Qi2018-02-201-5/+29
|\ | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I0786d8c91141c245f337c31ddcdfcb39e4b8ca41
| * Fix zoomLevel being emitted when the value has not changedPaolo Angelelli2018-02-121-2/+4
| | | | | | | | | | | | | | | | | | | | | | Map.setZoomLevel currently clamps the user-set value to a valid range. The current implementation emits zoomLevelChanged every time the user-set value is different from the current value. This patch restrict emission to when the actual value has really changed. Change-Id: I2096b666d2a5b1849c9022cad028b826cfee2a78 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
| * Fix Map.zoomLevel not honoring user-set valuesPaolo Angelelli2018-02-121-3/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | Apparently m_userMinimumZoomLevel is set but not used when setting the zoom level. With this patch, the minimumZoomLevelChanged signal is still emitted when the "implicit" minimumZoomLevel of the map changes (the one derived from the map size), but only if no user minimum zoom level is explicitly set. Task-number: QTBUG-66107 Change-Id: Id7f87cbd237407b255deea90dad80eeadd2d2f0d Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* | Fix crash calling Map.clearMapItems before Map is initializedPaolo Angelelli2018-02-191-1/+2
| | | | | | | | | | | | Task-number: QTBUG-66315 Change-Id: I18af392a00303b3b4c515c8f557e9c3fa09657eb Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Merge remote-tracking branch 'origin/5.10' into 5.11Liang Qi2018-02-191-113/+94
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/location/declarativemaps/qdeclarativegeomap.cpp src/location/maps/qgeomap.cpp src/location/maps/qgeomap_p_p.h src/location/maps/qgeorouteparserosrmv5.cpp src/location/maps/qgeotiledmap.cpp src/positioning/positioning.pro Change-Id: I42f8b176a8f3e824c7fe5b067a958735173f0dbb
| * \ Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-01-261-113/+94
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/qgeotiledmap/tst_qgeotiledmap.cpp tests/plugins/declarativetestplugin/testhelper.h Change-Id: Ie218ab1dc68642a6922e05e5688c20b90440b72e
| | * Fix copyright notice performance when adding/removing itemsPaolo Angelelli2018-01-161-67/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change avoids rescanning the list of map items every time an item is added or removed, to recompute the Z value at which the copyright notice should go. Task-number: QTBUG-64880 Change-Id: Ieea77669f0140e43085a76dfd9dfdee40a335f5a Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Fix performance issue with copyright noticePaolo Angelelli2018-01-151-20/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Skip evaluating copyrights when the notice is not visible. The implication of this patch is that copyright information won't be up to date or even available unless there is an "attached" copyright notice that has the visible property set to true. Task-number: QTBUG-64880 Change-Id: I3750b61913becb0cbf31273ad9a76ae1a2b6a393 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| | * Fix fitViewportToMapItems in presence of MapQuickItems with zoomLevelPaolo Angelelli2018-01-111-22/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Map.fitViewportToMapItems currently uses the screen geometries of the items to calculate the new values for zoom level and center. When the zoomLevel property is set on MapQuickItems, their on-screen geometry is affected by a hidden transformation within the item. This patch considers that transformation in the calculations. Task-number: QTBUG-63093 Change-Id: I328028f1901b31225866aa3d749849815d59a2a1 Reviewed-by: Vlad Seryakov <vseryakov@gmail.com> Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Fix documented property types for Map propertiesPaolo Angelelli2018-01-101-5/+5
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-65564 Change-Id: I9c52d0bdbbdd2eb0e41ff21741423aa7e22f3e28 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Preemptively release pendingMapObjects upon Map destructionPaolo Angelelli2018-02-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | In this way QGeoMap::mapObjects doesn't have to return all map objects, as the user added ones should be covered by m_pendingMapObjects. Change-Id: I5c850f2fb820629e0c4dd941d13f04cb3684b898 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | | Replace Q_NULLPTR with nullptrKevin Funk2018-02-051-1/+1
| | | | | | | | | | | | | | | Change-Id: Icbebfaae93cc5827d80ef09323ec82868789838a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Allow plugins to use alternative map projectionsPaolo Angelelli2018-01-271-89/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QtLocation mapping has always been geared around the WebMercator projection. Some mapping SDKs support additional projections, such as General Perspective (often called globe view or globe rendering). The goal of this patch is to allow a plugin to provide such a view, disabling WebMercator specific features, and redirecting API calls to plugin-specific implementations. In particular, this patch disables the rendering of Map Items (QDeclarativeGeoMapItemBase and sons) for projections different from WebMercator, with the exception of MapQuickItems. MapQuickItems, in turn, lose the ability to draw "on the map", when the projection is different from WebMercator. However, they can still be used to add geolocated popups, buttons and other UI elements. fitViewportToMapItems is also disabled, for both it can't be computed and there wouldn't be any item to fit (with the exception of mapquickitems) Change-Id: I9fa2fdd01a35a078fc4663efc9d269c4ecaa3f41 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Introduce QGeoMapObjectPaolo Angelelli2018-01-251-6/+90
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | QGeoMapObject is a new class of map item, not deriving anymore from QQuickItem, and designed to be more lightweight, and, most importantly, to be easily backable by SDK-specific implementations, so to act as an as thin as possible wrapper around those. QGeoMapObject is intended to be the base class for this type of items. This patch provides no mean to dynamically add/remove GeoMapObjects. The intended way to do it is by using a MapObjectView, coming initially with the Qt.labs.location extra plugin. Change-Id: I8d6a45a4a32059c7ec4d904f75352e176bffda1e Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | remove use of deprecated QQuickEventPoint::grabber()Shawn Rutledge2017-11-081-1/+1
| | | | | | | | | | | | | | It will soon be removed. Change-Id: Id3e348a6e2ef200b1dde7bd87f64b7ca2cffc5cc Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* | DocFix: mark the new QDeclarativeGeoMap API in 5.10 as tech previewv5.10.0-beta2Paolo Angelelli2017-10-071-0/+4
| | | | | | | | | | Change-Id: Iec1cf03fe5cb480cb6dcd24b43046d7009a37f23 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Use QGeoPolygon for returning the visible regionv5.10.0-alpha1Paolo Angelelli2017-09-091-5/+6
| | | | | | | | | | Change-Id: I5be81916c5c7b4802bdde00c60c370b9a12c07e9 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devPaolo Angelelli2017-08-271-8/+8
|\ \ | |/ | | | | | | | | | | Conflicts: tests/auto/geotestplugin/qgeotiledmappingmanagerengine_test.h Change-Id: I4940db79ebe500ff7e37ded42c7d29d7ccfb6253
| * Fix QDeclarativeGeoMap::populateMap duplicating itemsPaolo Angelelli2017-08-231-8/+8
| | | | | | | | | | | | | | | | | | | | | | Since apparently children() and childItems() do not necessarily return disjoint sets, concatenating the two lists did, in some cases, cause duplicated items in the map. This patch resorts to uniting sets to remove the duplicates. Change-Id: I07ef19a2fdff65429eb65d92be278d7c02ac1999 Reviewed-by: BogDan Vatra <bogdan@kdab.com>