summaryrefslogtreecommitdiff
path: root/src/location
Commit message (Collapse)AuthorAgeFilesLines
* Make QGeoMapParameter accessors virtualPaolo Angelelli2017-11-231-2/+2
| | | | | | | | So that it's possible to make the type property somehow constant in subclasses Change-Id: I61f4d1b412dbfb173e7ca7fa31411cffbfcfacb1 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update Mapbox GL docs on the db file nameBruno de Oliveira Abinader2017-11-141-0/+6
| | | | | | | Task-number: QTBUG-63013 Change-Id: Ifc232705eec81ec632cb19282cfba02c04ba5ec6 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io> Reviewed-by: Thiago Marcos P. Santos <tmpsantos@gmail.com>
* Fix Mapbox GL plugin OpenGL usageThiago Marcos P. Santos2017-11-082-2/+2
| | | | | | | | | | | | | | | | Previously we were linking directly with the OpenGL library available in the system. On Windows for instance the only option was ANGLE. Now Mapbox GL is using OpenGL through QOpenGLFunctions and shall offer much better compatibility. Task-number: QTBUG-62108 Task-number: QTBUG-61767 Task-number: QTBUG-60897 Change-Id: Iabd29ff6c0b6daf14373508d4847344c07d01a57 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Fix MapPolygon docPaolo Angelelli2017-11-031-0/+1
| | | | | | | | | | Document undefined behavior for less than 3 coordinates Task-number: QTBUG-63929 Change-Id: I3111637c625d6410e8bd58c566f54e3accadc2e3 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Ola Røer Thorsen <ola@silentwings.no> Reviewed-by: Bruno de Oliveira Abinader <brunoabinader@gmail.com>
* Windows/MinGW: Build MapBoxGL only when Qt is built with ANGLEFriedemann Kleint2017-10-241-1/+1
| | | | | | | | | | The code links against functions of OpenGL versions > 1.1, which Windows' opengl32.dll does not provide. Task-number: QTBUG-62417 Change-Id: I0fa1ba6ef3fa3ed714e261369df1292018f5568b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Fix outdated BSD license headerKai Koehne2017-10-1711-33/+143
| | | | | | | Use new version with commercial exception. Change-Id: I11058c94138615f7df2f99b6c3245ab075cd8222 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix outdated FDL headerKai Koehne2017-10-1716-76/+76
| | | | | Change-Id: Ie9771204ea1aa46e333d96ab0f392c795c512946 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix Map.fromCoordinate returning wrong values during tiltingPaolo Angelelli2017-09-211-5/+15
| | | | | | Task-number: QTBUG-63251 Change-Id: I7ceeeebb30007c5d97d61e057c8ec6e827177b19 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix MapGestureArea docPaolo Angelelli2017-09-121-1/+1
| | | | | | Task-number: QTBUG-62593 Change-Id: Ieb9a6d8b78b7b123f7376e7313d4a06a00a02841 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Add braces to fix compilation with clangRobert Loehning2017-09-121-2/+2
| | | | | | Change-Id: If79aca3d20475f7734cdd525747f44372ed930b7 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* Fix tile cache not honoring cost 0Paolo Angelelli2017-09-112-9/+33
| | | | | | | | | This patch fixes the case of disabling the various caches. Currently setting the cache size to 0 results in default initial values instead. Change-Id: I019cd15ac23b6479e4367a3e102dd661895a7fda Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Prevent MapItemView from fitting viewport on map when not readyPaolo Angelelli2017-09-111-1/+1
| | | | | Change-Id: I4c066c858801f9d80974018c00b245ec86c05d1e Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Mapbox GL native circle supportBruno de Oliveira Abinader2017-08-302-7/+11
| | | | | | | | | | Circles crossing one pole are drawn inverted. Circles crossing 2 poles do not even have the correct geometry. Nevertheless, a first approximation. Task-number: QTBUG-58869 Change-Id: I5a508f5d6e27c4f08412a7ae327883866068a1e9 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Add a configure feature for each geoservice pluginPaolo Angelelli2017-08-301-0/+70
| | | | | | | | This patch makes it possible to disable geoservice plugins at configuration time using the QtLite -no-feature-geoservices_xxx syntax. Change-Id: I276382833db8cfca27383705cbb3f994ced47cb3 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix PluginParameter not working with script as property valuesPaolo Angelelli2017-08-232-6/+58
| | | | | | | | | | | This patch introduces the undocumented QDeclarativeGeoServiceProviderParameter::initialized signal, to signal to the parent when a parameter becomes fully initialized, so that the parent QDeclarativeGeoServiceProvider can attach. Task-number: QTBUG-62075 Change-Id: Ie3615abf31d19f39587c5e54b202f8f2c4a711cc Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix GeocodeModel not autoUpdating if plugin attaches latePaolo Angelelli2017-08-231-0/+3
| | | | | | | | | This patch handles the case when the plugin attaches after QDeclarativeGeocodeModel::componentComplete() has been called. Change-Id: Ib9e4991ab3a4a34730da2d55fae20a492ac9d9f2 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* 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>
* Fix routes comparisonBogDan Vatra2017-08-091-2/+2
| | | | | Change-Id: Ie02061804efdb79911a997bd017d13ed0d65d262 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Fix visible region computation in QGeoProjectionWebMercatorPaolo Angelelli2017-08-092-15/+28
| | | | | | | | | | | | | | | | | | | | | Currently the visible region is calculated as the intersection between the viewing frustum and the map plane clipped against the map extended rectangle in mercator space (from -1 to 2 in x coords, 0 to 1 in y coords). The result is correct in the extended mercator space. However, this may lead to overlapping coordinates when converted back to latitude and longitude. For this reason, this patch changes the clipping geometry to be the map un-extended rectangle centered around the current map center. The result is a geometry that never wraps around or overlaps, thus removing the need for handling separately the case when the map is fully visible when returning the visible region. Task-number: QTBUG-57690 Change-Id: I8396c40a123ce94bff4388dfefbd8a694657b8bd Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Restore usage of setProperty on Map.fitViewportToGeoShapePaolo Angelelli2017-08-091-2/+2
| | | | | | | | | | setProperty was initially introduced with 2867f1efc989478667ea7ae56ff91cd991d74121 to animate center and zoom level, if an animation was present, but then removed. This change restores it. Change-Id: Id1f6da820b6cccb62b18eeb78d7dba21ebc073bc Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix MapCircle artifacts with small radiusesPaolo Angelelli2017-08-032-7/+23
| | | | | | Task-number: QTBUG-62154 Change-Id: I86647b0509b4682ea6fde1305834b6a86b0b6f64 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix memleak: delete QGeoMap when QDeclarativeGeoMap gets deletedBogDan Vatra2017-07-285-25/+25
| | | | | | Task-number: QTBUG-62122 Change-Id: I538e1eeb6bce3f5de424003b0b31fa59599dc2d5 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Fix dragging items out of map boundsPaolo Angelelli2017-07-285-23/+94
| | | | | | | | | | | | | | | | | | | | | | | | | In 5.9.0 map items are clipped against the visible region. This implies that their geometry is also clipped against the visible region. This is problematic in ::geometryChanged, since the old geometry is always clipped in this way. This patch clips items against a "projectable" region instead, that is the part of the map that is in front of the camera. Since this can produce very large vertices, mapbox earcut 3rd party library is pulled in, to replace qTriangulate that only supports coordinates up to 1<<21. This patch also contains a fix for earcut.hpp to make it build also on QNX6.6 Task-number: QTBUG-61727 Change-Id: Iffc95fdae88fef982c1eb86db567b326b5e51057 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Revert "Fix dragging items out of map bounds"Paolo Angelelli2017-07-195-94/+23
| | | | | | | | This reverts commit 2ab93acd9751b3ffe2c36a4a0e37dc792686a08f. Reason being: not passing QNX6 bot Change-Id: If45fe095b6e6959f7c40e3e0ed7a14d278bbb230 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Remove dead code in QDeclarativePolygon/Polyline MapItemsPaolo Angelelli2017-07-172-149/+0
| | | | | Change-Id: I95c1d361bd6ba43a3eed5465fc2f74b7a622af72 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix dragging items out of map boundsPaolo Angelelli2017-07-175-23/+94
| | | | | | | | | | | | | | | | | | | | | In 5.9.0 map items are clipped against the visible region. This implies that their geometry is also clipped against the visible region. This is problematic in ::geometryChanged, since the old geometry is always clipped in this way. This patch clips items against a "projectable" region instead, that is the part of the map that is in front of the camera. Since this can produce very large vertices, mapbox earcut 3rd party library is pulled in, to replace qTriangulate that only supports coordinates up to 1<<21. Task-number: QTBUG-61727 Change-Id: I7449e755a4848a2b2107c5de4e27821e3e887bfb Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Fix Map.toCoordinate always clamping y values to 0Paolo Angelelli2017-07-172-8/+32
| | | | | | | | | | | | This patch allows to call toCoordinate also on negative y values, given that the y value is still below the horizon. If not, the y value will be clamped to the "minimum unprojectable y value", a value that is clamped to 0. Task-number: QTBUG-61813 Change-Id: I177d3b459b6eaf827daf860b7d4011511a7e76ee Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Do not draw mapQuickItems if coordinate_ is invalidPaolo Angelelli2017-07-051-1/+8
| | | | | | | | | This change also reverts a4dc11fd52f42676265cff2ff9396a7396f1ccb3 Task-number: QTBUG-61070 Change-Id: I2046356e339b5889860b3dce10627d6b736ac02f Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix build with -qreal floatPaolo Angelelli2017-06-211-1/+1
| | | | | | Task-number: QTBUG-61538 Change-Id: Ib1e5cbe1bdcfc324e3e9dcaca7045c9318a5059e Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix for Plugin.required being readonlyPaolo Angelelli2017-06-202-1/+24
| | | | | | | | | | The documentation clearly states that this property should be writable but it's not. Task-number: QTBUG-57419 Change-Id: I1dc93d45ddf52f2e1eee9572f153f4f19916ca2a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix Mapbox plugin mixing tiles for specified map_idsPaolo Angelelli2017-06-191-0/+3
| | | | | | | | | | | | | | This patch fixes the handling of map_ids, preventing the plugin from picking the wrong ids when reading or writing tiles. This changes also makes the generation of map types consistent with the other plugin, with the first type having mapId of 1. Change-Id: I1562a2bbccacf11958ee22a60e9eee74faa15a2e Reviewed-by: Thiago Marcos P. Santos <tmpsantos@gmail.com> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix compilation error without openglPaolo Angelelli2017-06-181-0/+2
| | | | | | | | If opengl is not present, now that warnings are error, Location fails to build due to an unused ogl variable. Change-Id: Id1e9a1f4da8bc31a65e29b3dd2770250284d02bb Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix add/removeMapItemGroup not checking if the item is added to a mapPaolo Angelelli2017-06-183-6/+20
| | | | | | | | | Currently these methods aren't checking if a group is already added to another map. This patch fixes it. Change-Id: I58a5e633b44abfcae5c362f8e97d4c6706869ac5 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix MapQuickItems w/o zoomLevel sticking around when behind the cameraPaolo Angelelli2017-06-141-3/+14
| | | | | | | | | | | | This patch fixes the case when rendering a map with MapQuickItems in it that have the zoomLevel property not set and using a tilting angle. Without the patch, in some scenarios the items may stick around on the screen while they should simply go away. Change-Id: Ic485ecf5851d27a0248ff1745ae552bbb81423ba Reviewed-by: Thiago Marcos P. Santos <tmpsantos@gmail.com> Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Fix for QDeclarativeGeoMapCopyrightNotice crashing the applicationPaolo Angelelli2017-06-142-6/+16
| | | | | | | | Some pointers were used without prior check. This adds checks where necessary. Change-Id: I82e01b72fd3a46a6add7cf286e81686b686b272b Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix Map.addMapItemGroup documentationPaolo Angelelli2017-06-121-3/+1
| | | | | | | Items in map item groups are not reparented anymore. Change-Id: I1d083bf8cba5aa46e8640c175bf90aa9f04b69aa Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix for GeocodeModel documentationPaolo Angelelli2017-06-091-3/+3
| | | | | | | Links to Location QML element are broken Change-Id: Iffda8fd8c8cdd9e00e45592ee2f0e971865defb9 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix incorrect Map.visibleRegion when all the map is visiblePaolo Angelelli2017-06-091-1/+11
| | | | | | Change-Id: I9d532416e0e6dd06f84216d97bcf160e3e8e43be Task-number: QTBUG-57690 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Add unnecessary break to keep GCC 7 happyThiago Macieira2017-06-061-0/+1
| | | | | | | | | | | Falling through or breaking have the same effect, since the next case label repeats the same condition in the "if", which must necessarily be false for the code to have fallen through. qdeclarativesearchresultmodel.cpp:632:9: error: this statement may fall through [-Werror=implicit-fallthrough=] Change-Id: Ia3e896da908f42939148fffd14c48127381f219d Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix documentation for return types from QJSValue to the actual QML typePaolo Angelelli2017-05-313-3/+3
| | | | | Change-Id: I6db1f0db07de3bb9446f0b04ea95f34b56acf805 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Check for validity in QDeclarativeGeoMapQuickItem::setCoordinatePaolo Angelelli2017-05-291-1/+1
| | | | | | Task-number: QTBUG-61070 Change-Id: I610a943e9aeaa2129b87bfd4e4f5afa391bc7c31 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Refactor: move code not depending on "this" into static methodsPaolo Angelelli2017-05-292-57/+70
| | | | | | | | | | | This patch moves the implementation of the default filenameToTileSpec and tileSpecToFileName methods into standalone public static methods so that they can be possibly reused by plugins or other components, since these implementations do not actually depend on any member of QGeoFileTileCache. Change-Id: I6e3f59615ff3a5e0924f946aa13aabebb8157e42 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Make it possible to MapItems to rendered under some style layersThiago Marcos P. Santos2017-05-251-1/+13
| | | | | | | | | Add a MapParamter to specify the default "before" layer for MapItems that Mapbox GL can render. This can be used for inserting route lines before labels. Change-Id: I3ee414ee8af31f38b74c95b3ecc31df6085bed30 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Merge remote-tracking branch 'origin/5.9.0' into 5.9Liang Qi2017-05-232-3/+6
|\ | | | | | | Change-Id: I122bd675639baca961882ec9d512900f4e7e773b
| * Document MapboxGL plugin API to be Tech Previewv5.9.0-rc2v5.9.0-rc1v5.9.05.9.0Paolo Angelelli2017-05-191-0/+2
| | | | | | | | | | | | Change-Id: I2444bacedb230101bfef615db1f5c10252b6f367 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Thiago Marcos P. Santos <tmpsantos@gmail.com>
| * Fix compile due to change in private API in qtdeclarativeJan Arve Saether2017-05-191-3/+4
| | | | | | | | | | | | | | | | | | | | e0c30279ec1fad88346ed3fb483bc3c672fdd01b in qtdeclarative changed some private APIs, so we need to adjust code correspondingly. Task-number: QTBUG-57253 Change-Id: I0cf30b5f4aaf5c040d72a384d87b0fe277a84d27 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
* | Fix incorrect condition in QDeclarativeGeoMap::geometryChanged()Paolo Angelelli2017-05-231-1/+1
| | | | | | | | | | | | | | | | isEmpty should be used instead of !isValid, as 0,0 is a condition to skip as well. Change-Id: Ibbfa03b5a09fd0adf4b143d21674870301459f45 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Fix building on configurations without openglPaolo Angelelli2017-05-201-0/+4
|/ | | | | | Task-number: QTBUG-60881 Change-Id: Iffdcfe1ebfe81da9b809dceeff61fca044e94891 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Add a way to skip showing tilesPaolo Angelelli2017-05-084-7/+28
| | | | | | | | | | | | | | | In certain cases servers provide tiles that can be fully transparent, provide no content or are bogus. Tile fetchers can be smart and detect some of these cases. This patch offers an extensible way to allow them to communicate (via a null QImage) tiles that should not be rendered, in addition to an extensible mechanism to identify such tiles on disk. The default way is by assuming that, once such tiles have been detected, the tile fetcher would simply write a file with "NoRetry" as content. Change-Id: I404bb4dcc38fdd33c412f7407601b47947e4ce8d Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Workaround for QGeoFileTileCache losing contentv5.9.0-beta4Paolo Angelelli2017-05-071-2/+4
| | | | | | | | | This patch disables the queue persistence, that causes the cache to fail indexing valid content present in the cache on disk Task-number: QTBUG-60581 Change-Id: Iec3ba6105fe59a6f466bfabf0db4bf4fc00267af Reviewed-by: Alex Blasche <alexander.blasche@qt.io>