summaryrefslogtreecommitdiff
path: root/src/location
Commit message (Collapse)AuthorAgeFilesLines
* Print warning when QGeoFileTileCache::init fails creating the directoryPaolo Angelelli2019-03-101-1/+3
| | | | | Change-Id: I4369e71bbef0c218b35ef3449c5a1615fbf2cb4d Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* geoservices_mapboxgl depends on opengl and guiLiang Qi2019-02-061-0/+1
| | | | | | Change-Id: I0ada3ad1bbb27f3947497adf4bfeb1469f4a6256 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Document Qt.labs.location qml modulePaolo Angelelli2019-01-301-0/+18
| | | | | | Change-Id: I823bd3ebbd74096fc7319147dc7d4ca6ef10e414 Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Fix MapObjectView removing wrong indices on model changesPaolo Angelelli2019-01-142-10/+21
| | | | | | | | | | | | No incubation cancellation required when an object is removed: the DM takes care of that. Handle also the case of itemCreated called during synchronous object creation, that fires the callback in the middle of the ->object call. Task-number: QTBUG-71264 Change-Id: I058a101c754f22f4b6fbcbd7f6f7ded36f3c129b Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix crash when assigning a Component to MapQuickItem.sourceItemPaolo Angelelli2019-01-111-2/+3
| | | | | | | | | This workaround is currently needed until QTBUG-72930 gets fixed in qtdeclarative. Change-Id: Id75fa2048dd6e012c99f61cdc07cfedbe8c6bf83 Fixes: QTBUG-61509 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix MapItemView attempting to instantiate items with map not setPaolo Angelelli2019-01-071-0/+3
| | | | | | | | | | This case was not a problem when the only incubation mode was Asynchronous, because the test for m_map was done in createdItem. Now that Synchronous is supported too, this check has to be done earlier or else instantiated items will never be added to the map. Change-Id: Ifaa033fb0b64cabe74df395fcb387d162cd02b80 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Introduce a map plugin parameter to decide U-Turn directionTasuku Suzuki2018-12-265-14/+56
| | | | | | | | | | | When "uturn" comes from OSRM, Qt returns UTurnLeft since Right Hand Traffic is in use in most countries. This commit allows qml to set traffic side to return correct u-turn direction. Task-number: QTBUG-72462 Change-Id: Ifaa002b063159b4e4ee563d007721ba7a4a587a4 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-12-103-12/+3
|\ | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ifd3514a958d0df4320b253c26e3da3a632088be8
| * Fix compilation with GCC < 5.0Paolo Angelelli2018-11-301-6/+6
| | | | | | | | | | | | | | | | Apparently unable to resolve QPointers to pointers Change-Id: I04b3b7698ea083f83bc2713530656ca8b3f3ac28 Fixes: QTBUG-69512 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * Fix missing geometry update when changing border widthPaolo Angelelli2018-11-192-12/+2
| | | | | | | | | | | | | | | | | | In this case, only border geometry was marked dirty, producing a misplaced polygon. Fixes: QTBUG-70886 Change-Id: Ied39e523a584976871a655e436daf8c2700458b6 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * Fix unstable rotation gestureTasuku Suzuki2018-11-141-0/+1
| | | | | | | | | | | | | | | | | | Order of touch events are not sorted on some platform. When touch point 1 and 2 are swapped, map is rotated 180 degrees in a moment Change-Id: I9c308b805a6ca54519f26a9ff19217de7f947c17 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Fix compilation with gcc 4.8Ville Voutilainen2018-12-032-9/+8
| | | | | | | | | | | | | | GCC 4.8 doesn't like using QPointer in signal connections. Change-Id: I9504efb259712a65427ef1366ca562882085404e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Fix regression in error handling in QGeoServiceProviderPaolo Angelelli2018-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | cb19e1f7e3cc2cfee3b8fcbdfa5cd151826dadac fixed a bogus comparison in an if statement. However, the correct condition is actually a bug, and should be removed altogether. The previously incorrect condition was always testing to false so the problem wasn't triggered. Task-number: QTBUG-72180 Change-Id: Ia00b55596173474e8c0fe3b0c374490620c6917f Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Make tiled renderer and QGeoProjectionWebMercator debuggablePaolo Angelelli2018-11-2812-206/+439
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces a new macro, QT_LOCATION_DEBUG, that, when fed via qmake command line, changes the scope of some members, adds some extra members and some extra data dumping into these members. In this way external code can inspect the state of the renderer in order to debug it. The patch also moves a few classes into separate files, as well as privately exporting them. Change-Id: I32a042863f78dcd10f94b0b7fe8b90f3fc486891 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Improve the initialization behavior of CategoryModelPaolo Angelelli2018-11-271-5/+24
| | | | | | | | | | | | | | | | | | | | | | | | CategoryModel was missing an update call in the ::componentComplete callback, as well as reacting on the name changed signal of the plugin. An update call was also missing in the setPlugin method. This patch makes it react on the attached signal instead, and adds missing update calls. Fixes: QTBUG-70254 Change-Id: I1a8de0137b4fe4af7c5ffc848799061147febba2 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* | Fix error handling in QGeoServiceProviderPaolo Angelelli2018-11-271-4/+8
| | | | | | | | | | | | | | | | A dangerous local reference with the same name of a member variable caused the latter not to be evaluated and the former not to be set. Change-Id: Iaadcc3bce36f56ed8eeb77374687cf33632abd2f Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Add QAbstractNavigator::setTrackPositionPaolo Angelelli2018-11-263-4/+6
| | | | | | | | | | | | | | | | | | Or else there's no reactive way to tell navigator objects when the user changes this property. Change-Id: Ief78facf537a50c15611127c5282c2bcfd59f8fd Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Fix MapItemView removing wrong indices on model changesPaolo Angelelli2018-11-222-46/+51
| | | | | | | | | | | | | | | | | | | | | | The incubating indices bookkeeping was wrong. This patch removes the bookkeeping and relies on the delegate model doing the right thing when a row is gone but the delegate still incubating. Fixes: QTBUG-71264 Change-Id: Ibf5e525aa7ac79faf2fa149b52def05893d0bcc0 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Fix GeoProjectionWebMercator and MapPolyline incorrect projectionPaolo Angelelli2018-11-192-5/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes rendering artifacts with polylines appearing when rendering large polylines and/or at high zoom levels. Two problems caused the artifacts: 1.A too close near plane when calculating the projectable region in QGeoProjectionWebMercator, which presumably introduced numerical errors when then using such a region to clip data to be projected using a projection transformation based on the same frustum. 2.Projected polylines too large for qTriangulatingStroker, that would then introduce artifacts at screen. To solve 1., as a temporary solution, the distance of the near plane has been increased to a value that seems safe for zoom levels < 19. This while a better formula that scales further is being researched. To solve 2., screen-space line clipping has been brought back from 5.8, and added on top of mercator-space clipping. This, in theory, should also increase the performance, allowing qTriangulatingStroker to process less data. Task-number: QTBUG-71607 Change-Id: Id774419dde819931e2fdd78b02081695a91302ef Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Doc: Make documented QML imports follow Qt versioningTopi Reinio2018-11-162-63/+83
| | | | | | | | | | | | | | | | | | | | | | We can now pass parameters to qdoc commands - use them to automate the version bumps for documented QML imports. Also, improve the structure and language on QML module pages. Change-Id: Id56d36a9bc550ab9a1aea1af6ff8da83e5e1feb9 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Improve error reporting in plugin loadingPaolo Angelelli2018-11-052-2/+12
| | | | | | | | | | Change-Id: Ic49ab959a028adc9edd60018351386d51b2a9bca Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Remove dead codePaolo Angelelli2018-11-051-1/+0
| | | | | | | | | | | | | | Removing a local variable never used. Change-Id: Id2517d0f326b16b4b4ad26e53e4115a33f44c7c2 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Mapbox GL: Add mapboxgl.china plugin parameterBruno de Oliveira Abinader2018-10-311-0/+5
| | | | | | | | | | | | | | | | | | Adds support for setting up Mapbox China API base URL + China government-approved styles. Change-Id: I66d9e15f336804466285e0996b0e326ef288be44 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Move qquickcoordinateanimation to positioningquickPaolo Angelelli2018-10-292-6/+4
| | | | | | | | | | | | | | | | | | So plugins can use it, also stand alone ones, and no ugly "import ../" anymore. Change-Id: I4e53815e041e13d495026d60a826a31bccaef2b4 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Bramastyo Harimukti Santoso <bramastyo.harimukti.santoso@pelagicore.com>
* | update esri doc for place searches and creditsGuillaume Belz2018-10-251-9/+5
| | | | | | | | | | Change-Id: Ie8af7ed00a2f97439f6d801b284a49cfcf281ab0 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Doc: Fix \code command usageTopi Reinio2018-10-251-4/+12
| | | | | | | | | | | | | | | | | | | | | | Since Qt 5.12, \code command accepts parameters, and in-line usage no longer works (and was never documented to work). Also, use \badcode for qmake snippets to make it appear as plain text. Task-number: QTBUG-70980 Change-Id: I53cafdc912b4663d03c19b0a0003693330c94f15 Reviewed-by: Martin Smith <martin.smith@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-10-041-1/+3
|\ \ | |/ | | | | | | | | | | Conflicts: src/imports/locationlabs/locationlabs.cpp Change-Id: I362b903966b5087022fd125b511b236323c265ed
| * Amend 8a7bde9b93 to correctly account for the UnspecifiedVisibility caseAndy Shaw2018-10-031-2/+2
| | | | | | | | | | Change-Id: I3813b65b18877f5030aea4511ca7cb850874d7c7 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
| * If a category has UnspecifiedVisibility then we should still matchAndy Shaw2018-10-021-1/+3
| | | | | | | | | | | | | | | | | | Since it is possible that a category has unspecified visibility then when comparing we still want to match on those. Otherwise it can end up not finding any matches as a result. Change-Id: I586bc3c1c91502ff56ea2974ab87a5dddc9d1263 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Add QGeoMapParameter::hasPropertyPaolo Angelelli2018-09-132-0/+7
| | | | | | | | | | | | | | Convenience method to test if a property is present. Change-Id: I01c6748e35aadfd89eecebf8b8cc64a278bba87f Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Set bounds in qgeorouteparserosrmv5.cppPaolo Angelelli2018-09-131-0/+2
| | | | | | | | | | | | | | | | This has been missing until now. Change-Id: Ida8f7aa0d14e549d1ad1a04a85d096ff5801b71e Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Fix QGeoRouteSegment documentationPaolo Angelelli2018-09-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | Up till now QGeoManeuvers inside QGeoRouteSegments were generated as starting maneuvers, that is, related to the beginning of the segment. But they were documented as being related to the end of the segment. This patch fixes the documentation. Change-Id: Ia08ed2bd597b4f63e6b8a7b3518755d895446a92 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
* | Allow injecting the qml engine into geoservice pluginsPaolo Angelelli2018-09-046-8/+53
| | | | | | | | | | | | | | | | With this geoservice plugins can register Image Providers. Change-Id: Ie2380d658758d2eba376035b4d0b5d5121cfcde2 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Safer and easier navigation APIs for pluginsBogDan Vatra2018-08-307-133/+153
| | | | | | | | | | | | | | | | | | | | Each QDeclarativeNavigator will create and manage its own QAbstractNavigator using the QNavigationManagerEngine, this way the QNavigationManagerEngine doesn't have to manage the sessions itself based on a const reference. Change-Id: Ibe006524969b4f8100e71ea188d951072b846c6c Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Add "we mean it" warning to qplacesearchrequest_p.hPaolo Angelelli2018-08-301-0/+11
| | | | | | | | | | | | | | Previously missing. Change-Id: Id77a29d6d1fbcb93e265366828ab1203a18e09d7 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Add support for route legsPaolo Angelelli2018-08-249-25/+430
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for route legs, that are the portions of a route between one waypoint and the next. QGeoRouteLeg in particular can be seen as an API addition to QGeoRoute in that it uses and exposes additional methods added to QGeoRoutePrivate but not used in QGeoRoute. Currently the request for legs is set to be the same as the request for the entire route. Finding the related bounding waypoints has to be done programmatically using the legIndex property. Change-Id: If462b1dc6348be16dc96b167db5500f079fe0a64 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alex Blasche <alexander.blasche@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-204-124/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Bump Mapbox GL to the latest versionSudarsana Babu Nagineni2018-08-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps Mapbox GL to a new version that fixes the compilation errors on QNX 7. Also, enable Mapbox GL Native plugin for QNX. mapbox-gl-native @ 27b21363e62c105db0b040b4c5a5ef31170ebd30 Task-number: QTBUG-59685 Change-Id: Icc70ab53ba6f76e319feb53858f3614f3edca3e1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Make QDeclarativeGeoMapItemBase::geoShape R/WPaolo Angelelli2018-08-1411-2/+89
| | | | | | | | | | | | | | | | This patch adds a setter for the geoShape property, overridden in the subclasses. Change-Id: I5fc4d412efee5e95c5650943ea5bf9b72dc40155 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Remove usage of deprecated, internal QML APILars Knoll2018-08-034-16/+0
| | | | | | | | | | Change-Id: I4c9a27532f96a885d8baa7a790b2b983b2eb3bb3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Enable asynchronous incremental updates of QPlaceReplyPaolo Angelelli2018-07-276-6/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a new signal to QPlaceReply, contentUpdated. This signal can be emitted in subclasses when the provider is capable of notifying partial updates of the content. The typical use case if fetching the data from multiple databases, also locally instead of over network, and incrementally populating the results, as opposed to the current way of operating, that is via previous page / next page, in which case it's the backend who provides the proper query parameters to obtain the previous or the next page. This signal is currently handled only for QPlaceSearchReplies in QDeclarativeSearchResultModel, where such a signal would trigger a layout update. Change-Id: I0aaba5aa9249b61c970d3a309d93fab7fc39d667 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Remove MapItemViewDelegateIncubatorPaolo Angelelli2018-07-273-79/+0
| | | | | | | | | | | | | | | | Now that a delegate model is used internally by MapItemView, this class is not used any more. Change-Id: Ic0c35d6797a19549da6bc271b76e3529d812995e Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Enable nested MapItemViewsPaolo Angelelli2018-07-2711-323/+758
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Fix missing overrides in QDeclarativeSearchResultModelPaolo Angelelli2018-07-261-7/+7
| | | | | | | | | | | | | | This now triggers compile errors on macOS. Change-Id: I412dd1e3157fd5bf68d0f5fdc125d6eff9d704e7 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Introduce Map.visibleAreaPaolo Angelelli2018-07-2616-51/+381
| | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-07-143-3/+3
|\ \ | |/ | | | | Change-Id: I749522d1f277159d4ee222c59b07044e954c3926
| * QGeoMapObject: Fix MSVC warnings about '*/' found outside of commentFriedemann Kleint2018-07-103-3/+3
| | | | | | | | | | | | | | | | | | labs\qsg\qmappolylineobjectqsg.cpp(103): warning C4138: '*/' found outside of comment labs\qsg\qmappolygonobjectqsg.cpp(81): warning C4138: '*/' found outside of comment labs\qsg\qqsgmapobject.cpp(53): warning C4138: '*/' found outside of comment Change-Id: I5c000dbd40e59af6504b52303bd4ae4a1b782dc9 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* | Enable incremental updates in PlaceSearchModelPaolo Angelelli2018-07-056-30/+184
| | | | | | | | | | | | | | | | | | | | | | This way pages can be changed without resetting the model. To achieve this, new members into QPlaceSearchRequestPrivate are introduced, to keep the relationship between a request for one page, and the previous or the next page. In this way sparse population of the model becomes possible. Change-Id: Ic8db0281408f3500ba83f78c7e152ee0b68cd099 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>