| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: I3241efba9c3a32a4a097a67fd6432c45aad8e6ef
|
| |
| |
| |
| |
| |
| |
| | |
Binary compatibility files updated
Change-Id: Icb554c390a2c662a724d68d33909838f2a3e23e7
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This test has, in the last week, started to fail more often than not.
Since it's very likely to be a CI problem, blacklisting it for now.
Task-number: QTBUG-61485
Change-Id: Ifb68274f83b7ecc1652394623454230b527b2002
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Icd0e0d4b27cb4e5eb892fffd14b5285d43f4afbf
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A way to retrieve the size of the path is missing, as the path property
turns out not to be accessible to QML.
This patch adds a Q_INVOKABLE method to expose it.
[ChangeLog][QtPositioning][QGeoPath] Add ::size() to QGeoPath to
retrieve the number of coordinates in the path.
Change-Id: Ifa7a640113cba71f23e36626a84c8b2fe473a07e
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
src/plugins/geoservices/geoservices.pro
Change-Id: Ie82dd22c588e5cba409fc1ef31a65968ce9f719b
|
| |
| |
| |
| |
| | |
Change-Id: I4067d6df69aad0af9495a29532a34f0a7e992596
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As currently there is no way to create a pre-filled qgeopath,
this patch adds an overload to QtPositioning.geopath() to pass
parameters to the constructor.
Change-Id: I05af4dbef07bd62e9e2eace7105b5255e8a392fa
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |\
| | |
| | |
| | | |
Change-Id: I0cb953c2ef6d6efaf6e1c181693bd9f30432fd9a
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This patch adds a QByteArray member to QGeoMapType with the name of
the plugin providing that map type.
This value is then used to validate what is passed to
QDeclarativeGeoMap::setActiveMapType to see if it's a map type for the
currently set plugin.
Change-Id: If15b67c32150f0c3c2815d28e26fc37138d4cf71
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently boot2qt is tested with QEMU and some tests fail. Disabling
them for now to make it possible to enable qt5 tests for Coin.
Task-number: QTBUG-60266
Change-Id: Ib12fe4787bf5f5c672be96233205da3184c2920d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Until now we have not honored the min/max zoom levels specified
in QGeoCameraCapabilities when requesting tiles.
As a result we have often fired requests for non-existing tile layers.
This change complements the added support for individual camera caps
for each map type, and makes the tile fetcher honor the bounds
defined in the camera capabilities.
This also allows to set larger zoom levels in the renderer, overzooming
existing tiles, without the fetcher firing requests for invalid
resources
Change-Id: Ic8a523a114147109f7ef8af3510a3ab78d06d714
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since the only part of QGeoMapType used in the method is mapId, there's
no need to pass the whole map type as argument.
The benefit is that the camera caps can be requested solely based on
the info in QGeoTileSpec.
Change-Id: Iafd0e2a1d4d45fbf02b862efe56841001cbebd75
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is not just a regular test. This is a plugin that does
load(qt_plugin).
qgeotiledmappingmanagerengine_test.h:89:14: error: 'createMap' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
Change-Id: I523b0abacd5148b2bf08fffd14b488ffa441e68b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It is reasonable to add mapReady property to the condition
for the start of test cases where it is required that the
map is initialized. This covers the case when one of the
initialization steps runs asynchronously.
Change-Id: I2eff52dbe3a7bec0b2f3fb26d607398829b5c9f2
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Somehow MSVC still sees it as unused, despite our best efforts in
Q_ASSERT. So add Q_UNUSED.
qdeclarativepinchgenerator.cpp(218) : warning C4100: 'event' : unreferenced formal parameter
Change-Id: I523b0abacd5148b2bf08fffd14b46aa8f8409f42
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|/
|
|
|
|
|
|
|
|
| |
Squaring a number, doubling it and taking the square root is just a
roundabout way of multiplying the number by sqrt(2); so do that
instead, saving some computational cost and probably reducing the
amount of rounding errors that can creep in.
Change-Id: I1abf3c2de318f48f80536379156ace8f25a6acaf
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
|
|
| |
Apparently these cause a test crash
Task-number: QTBUG-59503
Change-Id: I3982eaf68503f791faf25ec4b57f7a592d8a2242
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ibd6d68ced4edbd96fb67fe61244b83d597df5775
|
| |
| |
| |
| |
| |
| | |
Change-Id: I1774d2b4c637f5057691f43275e10f19b986c722
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
We already had a guard for QT_NO_PROCESS in place. Change that to the
safe form QT_CONFIG(process) and also guard the header inclusion.
Change-Id: I9c62024bd315a91da44e0492f0c8aa095de76dab
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The current precision of 6 digits only ever guarantees
110m on Earth. That's not sufficient for some use cases.
A precision of 11 guarantees at least 8 digits after the comma since
there are at most three digits before the comma. The 8th digit
reflects a geographical precision of 1.1 mm on earth. More precision
for navigation purposes is not needed.
Task-number: QTBUG-59259
Change-Id: I4f59c152171c3a71f22aa7520718d0fcb611b697
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch bakes all the required linear transformations performed
in the method inside a 4x4 double matrix, removing 4 of the 5
instructions previously performed.
Autotest adaptations with compares instead of verifys have been
necessary due to small epsilons in the results.
Change-Id: I7795173a27812eb93a48e3175ad24fd546aeec04
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The old algorithm for computing the frustum footprint has problems
with certain viewport sizes when tilting the map.
This patch fixes the problem, and also removes the dependency on a local
copy of qsort that was necessary in order for that algorithm to work
properly.
Task-number: QTBUG-58684
Task-number: QTBUG-34088
Change-Id: I36aaaa90c567cd19a4ae66dba8def0aec0b00534
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change makes the currently read only properties minimumTilt,
maximumTilt, minimumFieldOfView and maximumFieldOfView user-settable
as well, like minimum and maximum zoom level.
Autotests are included.
Task-number: QTBUG-58931
Change-Id: I784be7bd0d960061e94bc40cd8a45e466754526f
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch makes it possible to change QGeoCameraCapabilites
at runtime, when the map type changes, to accommodate for
those plugins that offer different maps having different
capabilities.
This is then used to properly push the min/max zoom levels
for each map type in our OSM plugin.
Autotests are included.
Change-Id: I48532da77ffb3eaf2e752561395945c3a2c21985
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Changing Q_LOCATION_EXPORT to Q_LOCATION_PRIVATE_EXPORT in all
_p headers to avoid confusion.
Change-Id: Ic42d1c59f0cd68c27bcf40296c612d005da11efd
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\ \
| |/
| |
| |
| |
| |
| | |
Conflicts:
src/plugins/geoservices/nokia/qgeotiledmappingmanagerengine_nokia.cpp
Change-Id: I2428d360c07b55ec5ee61f81c6f97b3d7b20f363
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch changes the window size of tst_map_flick to 120x120, that
seems to be the minimum on windows platforms.
This to prevent test failures.
Task-number: QTBUG-56679
Change-Id: I08082710d843f3330a2d7c80b494d3732e0675bc
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Flick tests results on windows are flaky in presence of high system
load, due to the way testlib simulates flicking.
This change blacklists them on windows, where the problem seems to be
most severe.
Task-number: QTBUG-56679
Change-Id: Ia4e1eb524af8280e8ed724216c0c118cf81f05db
Reviewed-by: Milla Pohjanheimo <milla.pohjanheimo@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Change filtetring into filtering
Change-Id: Ib00a904df11bcab66805dc927f4c4b01d0de0cf4
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Autotests are now all working, blacklisting not necessary anymore
Change-Id: I2c9dc16a95f7b64b00228143ccfa31d1ae1645b6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Added binary compatibility file for qtlocation
Change-Id: Iffeb7e66db62cba2935637e697ddb67798978a1c
Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch lets a user create an external qml file, and put multiple
map items inside a parent MapItemGroup{}, and add that element to a Map
item.
QDeclarativeGeoMap gets also two associated methods: addMapItemGroup and
removeMapItemGroup to deal with item groups at runtime.
Additionally, clearMapItems now clears also added item groups.
Task-number: QTBUG-55211
Change-Id: Ie4e602e4bda65fb56422b721be5fd34c54eb7954
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch uses QGeoShape::boundingGeoRectangle to set the visible
region, supporting the new QGeoShapes, simplifying the logic in
::fitViewportToGeoShape, and not requiring updates if new QGeoShapes
are added.
Change-Id: I4f4c21bc0b62aae9432024d8f20db774d191255b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds rotation and tilting support to QGeoTiledMapScene
and QGeoCameraTiles.
It also adds the related capabilities to the geoservice plugins
mapping managers
QML Api is added in a separate patch
Change-Id: I3de1b52a9928c4856f6ee57ad39191acebe0f770
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QDeclarativeGeoMap currently does not provide any mean to set bearing
and tilt into qgeocameradata.
It has been not a problem since QGeoTiledMap and sons did not support
it.
External renderers however support it, so this patch adds QML api
calls to control these parameters, and adapt the existing logic
to take them into consideration in camera-related
calls, as well as in the afterViewportChange handlers of the Map
Items.
This patch also sligthly modifies the QML api to make the handling
of all the bounded camera property more homogeneous.
Minimum and maximum zoom levels prior plugin initialization
aren't -1 anymore, but are some valid lower and upper bounds
for this property, that is 0 and 30.
in this way all the 2 bounded properties (zoomLevel and
tilt) behave the same, in that they can be freely set before plugin
initialization, within reasonable predefined bounds, and, after that,
they may be clamped depending on the actual plugin capabilities.
Autotests for the QML part of the API included.
Change-Id: I9d09e32698a7330388e465e8ea7523ee39577d34
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch simplifies the QGeoMap API removing all the API
necessary to convert to and from screen.
This is now demanded to a specific QGeoProjection class, that will
be independent of the map, except for using the same Geo projection
(currently only WebMercator, or EPSG:3857, although we use a sphere
instead of an ellipsoid, i believe)
The benefits are
- This relieves subclasses of QGeoMap from implementing a
GeoProjection API, especially since QtLocation currently supports
only WebMercator, and reimplementations would have to anyway
produce the same results as the inbuilt one.
- This avoids the several indirection steps previously necessary
to perform a map projection (qgeotiledmap -> private->mapscene->
private). Since these operation are quite frequent one per
map item coordinate at every redraw, shortening the indirection
chain is beneficial
- It simplifies the highly complex QGeoTiledMapScene, separating
all the logic that is not needed to draw the scene, but only
to perform geo coordinate <-> screen coordinate conversion
Change-Id: I9e3ca5280166f2d6430a32deb44c030d02d9d4e1
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently the zoomLevel is the power of 2 reflecting how many tiles
are in a map edge.
This means that two plugins with two different tileSize will show a
map of different size at the same zoomLevel.
With this patch the zoomLevel is "normalized" upon a tileSize of 256,
regardless of the tile size in use.
In this way, the new 256 based zoom level can be a consistent parameter
also for plugins that are not tile based.
CameraCapabilities therefore now offers two new methods,
m[in,ax]imumZoomLevelAt256, that return the respective value for
the normalized 256^2 tilesize.
It also gets a setTileSize, which is currently not used as all our
plugins use a tile size of 256 (which is the camera capabilities
default tilesize value).
Change-Id: Ib12092fd14faf7fc85f8be5fb799dbd5496b760b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QGeoProjection is currently a class containing only static methods for
WebMercator conversion/interpolation.
This patch renames it to QWebMercator, effectively freeing the
QGeoProjection name for a real projection class
Change-Id: I15b71d04f7d1d21a1d26f46687ed33aa277f6deb
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Furthermore, since the candidates for abs(), that g++ found, all took
integral parameters, they would have involved truncation. Our qAbs()
is suitably templated to cope with double naturally.
Change-Id: I373a08657ed182c7d853104879b07fb7704cc418
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As the collection of QGeoShapes grows, this method loses its scope, as
it would have undefined behavior for certain shapes (polygon, or
polyline, for example).
Therefore the base class virtual method is now deprecated, with the
documentation pointing to the specific implementations instead.
Change-Id: I9717df092b8686b5413556858e9dfe7eaa92dd80
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch reimplements the method mercatorToItemPosition using
values relevant for this type of conversion, instead of re-using
values initially computed for the tile generation.
This allows to greatly optimize the method, reducing branches and
the total number of operations, as well as making it easier to
understand.
This patch also removes the support for letterboxing the map
viewport inside the DeclarativeGeoMap, as there now is the
constraint that the map can never be smaller than the containing
element.
Change-Id: Ida98e97ad0a6b65233c80ae3c4abd3ec7664c555
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/imports/location/qdeclarativegeomap.cpp
src/location/maps/maps.pri
src/location/maps/qgeomap_p_p.h
src/plugins/geoservices/nokia/qgeocodereply_nokia.cpp
src/plugins/geoservices/osm/qgeoroutereplyosm.cpp
Change-Id: I18d31cff9233648178fe3e2636ce294026dfaeb7
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The current name of this method generate confusion, as what it does
is changing the size of the final element in the application, and not
the actual map size.
This patch renames this method to changeDisplaySize
It also renames QGeoMap::setSize to setViewportSize,
as well as ::size to viewportSize , width to viewportWidth
and height to viewportHeight, to make everything consistent and
self-explanatory.
Finally it also renames minimumZoomAtMapSize to
minimumZoomAtViewportSize.
Change-Id: I7c1ca8bb3ca3d6f6b0fe6fc881b9300db7110527
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This patch privately exports QGeoMapPrivate, effectively making it
possible to subclass QGeoMap directly.
Change-Id: Ib373eff5ab6782c832464d2df3484d2790ea3644
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds a new MapParameter object to give users access to
specific features of a custom QGeoMap otherwise not accessible through
the standard API.
A MapParameter is implemented by a QDeclarativeGeoMapParameter, which,
in turns, inherits from QGeoMapParameter in the location module.
In this way QGeoMap & subclasses won't depend on declarative, from
this side, still allowing a QMapWidget someday.
The implementation is based, on both sides, on the dynamic
properties of QObjects for defining the MapProperty data.
This allows high flexibility in defining various types of
MapParameters (essentially by duck typing them), and therefore
each plugin which makes use of them must document each of them.
Change-Id: I5f3a8c18e996f290beb8e4ff37d3c2c655eefc6c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds an addition qgeoshapes, QGeoPath.
This represents a geographical path where each consecutive geopoints
are connected along the shortest line of constant bearing
(rhumb line).
The path has a width, in meters, that is used in the contains()
method to decide whether a coordinate is or not on the path, based
on shortest distance to the rhumb line segments.
Change-Id: Ia02780e3c8ac6c6d63a6083f53ea0677f8a21a1d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QGeoRectangle::translate currently modifies the rectangle if the
latitudinal offset brings the rectangle out of bounds.
This patch changes the behavior of the translation, clamping the
latitudinal offset, and preventing changes to the rectangle geometry.
Change-Id: Iedb8823bbd6e3c04ee499bb9f9945049a9590aae
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
this patch introduces QGeoShape::boundingGeoRectangle,
which returns a QGeoRectangle containing the latitudinal/longitudinal bounds
of a geoshape.
The bounding geo rectangle is projection independent, as it returns
a georectangle containing the min/max latitudes/longitudes of the
shape.
Change-Id: Ie3a83ec41f87ea3753899d2278e664fe2469f778
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|