qt:qtlocation.git
4 years agoFix compilation with Clang on MacOS.
Alex Blasche [Tue, 3 Dec 2013 09:59:33 +0000 (10:59 +0100)]
Fix compilation with Clang on MacOS.

Clang does not like methods to be declared static inline,
and then have their definition somewhere else. The error message was:

./qdoublevector2d_p.h:186:49: error: conflicting types for 'dotProduct'
Q_DECL_CONSTEXPR inline double QDoubleVector2D::dotProduct(const QDoubleVector2D &v1, const QDoubleVector2D &v2)
                                                ^
./qdoublevector2d_p.h:101:43: note: previous declaration is here
    Q_DECL_CONSTEXPR static inline double dotProduct(const QDoubleVector2D &v1, const QDoubleVector2D &v2);
                                          ^
In file included from qgeocircle.cpp:49:
./qdoublevector3d_p.h:234:49: error: conflicting types for 'dotProduct'
Q_DECL_CONSTEXPR inline double QDoubleVector3D::dotProduct(const QDoubleVector3D &v1, const QDoubleVector3D &v2)
^
./qdoublevector3d_p.h:104:43: note: previous declaration is here
    Q_DECL_CONSTEXPR static inline double dotProduct(const QDoubleVector3D &v1, const QDoubleVector3D &v2);
                                              ^
./qdoublevector3d_p.h:239:58: error: conflicting types for 'crossProduct'
Q_DECL_CONSTEXPR inline QDoubleVector3D QDoubleVector3D::crossProduct(const QDoubleVector3D &v1, const QDoubleVector3D &v2)
         ^
./qdoublevector3d_p.h:105:52: note: previous declaration is here
    Q_DECL_CONSTEXPR static inline QDoubleVector3D crossProduct(const QDoubleVector3D &v1, const QDoubleVector3D &v2);

Change-Id: Ica9305f628c393e3d37e19097ad7343c03e68ef7
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoMerge remote-tracking branch 'origin/stable' into dev
Frederik Gladhorn [Fri, 29 Nov 2013 15:03:31 +0000 (16:03 +0100)]
Merge remote-tracking branch 'origin/stable' into dev

Conflicts:
.qmake.conf

Change-Id: I3c90652f618afcf6a5f26232558843b8e26d8164

4 years agoFix include warning related to qtpositioningglobal.h
Alex Blasche [Fri, 29 Nov 2013 09:39:06 +0000 (10:39 +0100)]
Fix include warning related to qtpositioningglobal.h

This was already fixed in stable but for some reason was not carried over to
dev during the merges.

Change-Id: I2e7c8fe6d11e58c4070ebb03d0f8928e7c47b7cf
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Erik Mattsson <erik.mattsson@appello.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix make install rules for all examples in QtPositioning
Alex Blasche [Thu, 28 Nov 2013 13:21:50 +0000 (14:21 +0100)]
Fix make install rules for all examples in QtPositioning

This was highlighted during the testing of the Qt 5.2.0 package.

Change-Id: Iab1e6f5f1e1a8ceb62fc44658ec12fb131ccad65
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix cut of string when weather string is longer
Alex Blasche [Mon, 18 Nov 2013 09:40:36 +0000 (10:40 +0100)]
Fix cut of string when weather string is longer

Task-number: QTBUG-34910
Change-Id: I90a1748496b55b2e69db5c94fa217f79d43c176f
Reviewed-by: Jim Ehrismann <jehrismann@blackberry.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix instructions for open street map routes.
Albin Olsson [Tue, 26 Nov 2013 12:39:42 +0000 (13:39 +0100)]
Fix instructions for open street map routes.

In order to get instructions for an open street map route, 'instructions'
needs to be set to 'true' in the http request to
http://router.project-osrm.org/viaroute

Change-Id: Ia25ca806c8cd40f56bfa2a7aed0a2a519d63e074
Reviewed-by: Anders Gunnarsson <anders.gunnarsson@appello.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoBump MODULE_VERSION to 5.2.1
Sergio Ahumada [Mon, 25 Nov 2013 11:47:33 +0000 (12:47 +0100)]
Bump MODULE_VERSION to 5.2.1

Change-Id: I73b42c27dfb256818f650d090586fe8bc7db6a2c
Reviewed-by: Matti Paaso <matti.paaso@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoEnable wheel mouse wheel for zooming
Fabian Bumberger [Fri, 15 Nov 2013 06:06:28 +0000 (07:06 +0100)]
Enable wheel mouse wheel for zooming

Change-Id: If80184b81f4e2dcd960be9cf5e70f147fbfa8cf9
Reviewed-by: Anders Gunnarsson <anders.gunnarsson@appello.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDon't steel the mouse/touch events when we must not
Fabian Bumberger [Fri, 15 Nov 2013 05:22:07 +0000 (06:22 +0100)]
Don't steel the mouse/touch events when we must not

E.g. when having a MouseArea and set the preventStealing flag, we do not want the Map item to steel the events.

Change-Id: I9fca66967ef2d9fe9883dabfd5e394026c99d6c9
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDon't start Geoclue satellite providers until necessary.
Aaron McCarthy [Fri, 22 Nov 2013 06:03:16 +0000 (16:03 +1000)]
Don't start Geoclue satellite providers until necessary.

This builds on 2509cc2f13b15de099c3d68769e9bce869400ef7. It implements
similar changes to the Geoclue satellite info source.

Change-Id: I657f110e049c84b35f534a3bfffd14d57ee9c37a
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoChange URL of Nokia/HERE developer website.
Aaron McCarthy [Fri, 22 Nov 2013 01:30:30 +0000 (11:30 +1000)]
Change URL of Nokia/HERE developer website.

The Nokia geo services are undergoing a branding change and is now known
as HERE. Change the URL printed when the required app_id and token are
missing from the plugin parameters. It is no longer obvious how to
register for application credentials at the previous URL.

Change-Id: I50dcd428fd690705b802d5cf6090b0a800ea0622
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoMerge "Merge branch 'stable' into dev" into refs/staging/dev
Alex Blasche [Thu, 21 Nov 2013 14:21:20 +0000 (15:21 +0100)]
Merge "Merge branch 'stable' into dev" into refs/staging/dev

4 years agoMerge branch 'stable' into dev
Alex Blasche [Thu, 21 Nov 2013 14:16:36 +0000 (15:16 +0100)]
Merge branch 'stable' into dev

Change-Id: I43e7398a35d963081f5d3eb91598308ea00700e6

4 years agoMerge "Merge branch 'release' into stable" into refs/staging/stable
Alex Blasche [Thu, 21 Nov 2013 11:20:12 +0000 (12:20 +0100)]
Merge "Merge branch 'release' into stable" into refs/staging/stable

4 years agoMerge branch 'release' into stable
Alex Blasche [Thu, 21 Nov 2013 11:13:32 +0000 (12:13 +0100)]
Merge branch 'release' into stable

Change-Id: If8a4fe6d4566ffe072c3be25f2cd5ef7a5b06d95

4 years agoBugfix and improvement for start of panning
Anders Gunnarsson [Tue, 19 Nov 2013 15:36:04 +0000 (16:36 +0100)]
Bugfix and improvement for start of panning

Fixed obvious mistake of subtracting touchCenterCoord_ from new
start coordinate when starting a pan. This lead to a jump to a location
close to 0,0 when touchCenterCoord_ was set.
Since lastPos_ is also maintained as the center between two touch
points, smooth start could also be done in that case.

Change-Id: Icf8776aeb1ea3ae0cbadc74a28e2db22058f05d1
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDon't require a position fix before reporting Geoclue satellite info.
Aaron McCarthy [Fri, 6 Sep 2013 05:46:27 +0000 (15:46 +1000)]
Don't require a position fix before reporting Geoclue satellite info.

The Geoclue plugin uses the Geoclue master provider to select the most
appropriate position provider. However, it doesn't select a provider
unless it is in the available state. For satellite information a
position fix is not required.

If the Geoclue master provider doesn't return a valid provider the
plugin will now listen for all SatelliteChanged signals from any
org.freedesktop.Geoclue.Satellite interface. This means that if
multiple satellite based providers are active at the same time
QGeoSatelliteInfoSource will include satellite information from
both providers.

Change-Id: I257b56dc03fed51a5c4ba0023862708b9618be05
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoMerge remote-tracking branch 'origin/stable' into dev
Frederik Gladhorn [Wed, 20 Nov 2013 15:43:26 +0000 (16:43 +0100)]
Merge remote-tracking branch 'origin/stable' into dev

Change-Id: I52bbea59f75f74beac90c6368b50558e865304fa

4 years agoAdd constexpr to Vector classes
Alex Blasche [Thu, 14 Nov 2013 15:01:26 +0000 (16:01 +0100)]
Add constexpr to Vector classes

This turns code like QDoublVector2D(1,1) into a compile-time
expression when using a C++11 compiler.

Since these classes are private some member functions were converted
into inlines to make maximum use of constexpr.

Keyword inline was added where function declaration was not exhibiting
the keyword but the declaration was using it. Under certain circumstances
this can prevent potential export/import issues on some compilers.

Change-Id: I1b35b03942c5939fbafe2819fc875ef96eacaf02
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix requesting single updates from Geoclue plugin.
Aaron McCarthy [Tue, 19 Nov 2013 04:57:24 +0000 (14:57 +1000)]
Fix requesting single updates from Geoclue plugin.

Geoclue providers are expected to return a position update straight
away, otherwise the geoclue-master blocks when positioning is started.
This means that a position update with no longitude and latitude values
is not an error.

Change the Geoclue plugin to ignore these position updates, instead
waiting for the specified timeout before aborting.

Change-Id: I80b3c4cfdc31da78660f7435fdfac03963688c5a
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoEmit the last known position when Geoclue positioning is started.
Aaron McCarthy [Tue, 19 Nov 2013 05:01:38 +0000 (15:01 +1000)]
Emit the last known position when Geoclue positioning is started.

The QML position source already essentially does this as its position
property is set to the last known position on construction.

Change-Id: I3e41886348a218751ab0872e8d78ac92cb72dc0b
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix ambiguous type conversion options (QPointF vs QDoubleVector)
Alex Blasche [Thu, 14 Nov 2013 13:02:34 +0000 (14:02 +0100)]
Fix ambiguous type conversion options (QPointF vs QDoubleVector)

qdeclarativegeomapgesturearea.cpp: In member function 'void QDeclarativeGeoMapGestureArea::startTwoTouchPoints()':
qdeclarativegeomapgesturearea.cpp:834:66: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: [enabled by default]
     QPointF startPos = (sceneStartPoint1_ + sceneStartPoint2_) * 0.5;
                                                                  ^
In file included from /home/ablasche/dev/qt/androidqt/qtbase/include/QtCore/qpoint.h:1:0,
    from /home/ablasche/dev/qt/androidqt/qtbase/include/QtCore/../../src/corelib/tools/qrect.h:46,
    from /home/ablasche/dev/qt/androidqt/qtbase/include/QtCore/qrect.h:1,
    from /home/ablasche/dev/qt/androidqt/qtbase/include/QtGui/../../src/gui/painting/qregion.h:46,
    from /home/ablasche/dev/qt/androidqt/qtbase/include/QtGui/qregion.h:1,
    from /home/ablasche/dev/qt/androidqt/qtbase/include/QtGui/../../src/gui/kernel/qevent.h:47,
    from /home/ablasche/dev/qt/androidqt/qtbase/include/QtGui/qevent.h:1,
    from /home/ablasche/dev/qt/androidqt/qtbase/include/QtGui/QTouchEvent:1,
    from qdeclarativegeomapgesturearea_p.h:46,
    from qdeclarativegeomapgesturearea.cpp:42:
/home/ablasche/dev/qt/androidqt/qtbase/include/QtCore/../../src/corelib/tools/qpoint.h:357:39: note: candidate 1: constexpr const QPointF operator*(const QPointF&, qreal)
 Q_DECL_CONSTEXPR inline const QPointF operator*(const QPointF &p, qreal c)
                                      ^
In file included from /home/ablasche/dev/qt/androidqt/qtbase/include/QtPositioning/5.3.0/QtPositioning/private/qdoublevector2d_p.h:1:0,
    from ../../location/maps/qgeomap_p.h:59,
    from qdeclarativegeomap_p.h:73,
    from qdeclarativegeomapgesturearea.cpp:43:
/home/ablasche/dev/qt/androidqt/qtbase/include/QtPositioning/5.3.0/QtPositioning/private/../../../../../../qtlocation/src/positioning/qdoublevector2d_p.h:208:30: note: candidate 2: const QDoubleVector2D operator*(const QDoubleVector2D&, double)
 inline const QDoubleVector2D operator*(const QDoubleVector2D &vector, double factor)
                              ^

Change-Id: Ic9f56a14f5222b54f24443f3546b97f88a3dcf53
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix install path for examples v5.2.0 v5.2.0-rc1
Alex Blasche [Mon, 18 Nov 2013 14:35:33 +0000 (15:35 +0100)]
Fix install path for examples

The QtLocation examples are still broken when running make install
but the module is not part of the release anyway.

Task-number: QTBUG-34907
Change-Id: Ie3a35daae3df39747a70ed4bce430ec1a73cbe3d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoFix qdoc references following shift of example dirs
Alex Blasche [Mon, 18 Nov 2013 14:05:33 +0000 (15:05 +0100)]
Fix qdoc references following shift of example dirs

Task-number: QTBUG-34907
Change-Id: Id119523528c7cd2419be638048f4faf7bf0f2cb9
Reviewed-by: Topi Reiniƶ <topi.reinio@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoDoc: Update .qdocconf to match example folder structure
Topi Reinio [Mon, 18 Nov 2013 13:21:50 +0000 (14:21 +0100)]
Doc: Update .qdocconf to match example folder structure

Update the .qdocconf files for both Qt Location and Positioning
documentation sets to match the new example folder structure.

Also add 'examplesinstallpath' configuration value, needed for
correct paths in example manifest files.

Task-number: QTBUG-34907
Change-Id: I6115377044418b251757a18524de4fcf02502fa5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoReorder example dir structure according to Qt convention
Alex Blasche [Mon, 18 Nov 2013 09:24:19 +0000 (10:24 +0100)]
Reorder example dir structure according to Qt convention

Causes undesirable example structure in Qt release package

Task-number: QTBUG-34907
Change-Id: I47e2205aa6faef388792146b36cf6ae6cae863da
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoFix drawing of Open Street Map routes.
Albin Olsson [Fri, 15 Nov 2013 09:39:45 +0000 (10:39 +0100)]
Fix drawing of Open Street Map routes.

The coordinates for open street map routes were off by a factor of ten. It
seems that the route data generated has changed since this code was
written.

Task-number: QTBUG-33849

Change-Id: I3996963aa2206c379946ca7aafb15f0104d0fd8a
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix crash (null pointer dereference).
Albin Olsson [Fri, 15 Nov 2013 09:39:34 +0000 (10:39 +0100)]
Fix crash (null pointer dereference).

When accessing the path property of a RouteSegment, QtLocation will
crash when trying to create a QJSValue. A call too QQmlEngine::contextForObject
returns a null pointer because a context has not been set. This patch
fixes the problem by properly setting the context when creating the QObjects.

Change-Id: I9dc4a1e7c1b5b6db64a54c21121e72272f333ab4
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoInitialize the center of the Map item
Fabian Bumberger [Fri, 15 Nov 2013 07:27:38 +0000 (08:27 +0100)]
Initialize the center of the Map item

Center is initialized with center (latitude and longitude) being NAN.
Without initializing the center the Map item is not useable (navigation is not working)
and it sometimes crashes.

Change-Id: I708e9f0efd05ee0b3ed0ebc0f0cac818b6185c12
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoMerge "Merge branch 'stable' into dev" into refs/staging/dev
Alex Blasche [Thu, 14 Nov 2013 08:35:02 +0000 (09:35 +0100)]
Merge "Merge branch 'stable' into dev" into refs/staging/dev

4 years agoMerge branch 'stable' into dev
Alex Blasche [Mon, 11 Nov 2013 14:43:40 +0000 (15:43 +0100)]
Merge branch 'stable' into dev

Change-Id: Ia0af08e46e39b783ffa0773bbc43a9a5a78c28bc

4 years agoRemoved timer for press time in QDeclarativeGeoMapGestureArea
Anders Gunnarsson [Thu, 7 Nov 2013 14:14:42 +0000 (15:14 +0100)]
Removed timer for press time in QDeclarativeGeoMapGestureArea

The timer was used to let panning start with any movement after a
certain time. Before that time the startDragDistance from a platform
was used as threshold for pan start.
This causes trouble on platforms with touch interaction since start of
panning breaks a long press. When using touch before this change, a
long press on an item on top of the QDeclarativeGeoMapGestureArea
was difficult to achieve.

Change-Id: I1a265626b1b28dd5618eb83239a946ad8d25187a
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix compiler warning.
Alex Blasche [Mon, 11 Nov 2013 10:16:15 +0000 (11:16 +0100)]
Fix compiler warning.

Change-Id: I2f5c84cfad86c287d64869c9df56d49be135d7b1
Reviewed-by: Erik Mattsson <erik.mattsson@appello.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoUpgraded Nokia Route API from 6.2 to 7.2
Erik Mattsson [Thu, 7 Nov 2013 12:48:51 +0000 (13:48 +0100)]
Upgraded Nokia Route API from 6.2 to 7.2

Since the 7.2 API supports many more lanugages(23 compared to 4) and is the
only version that supports China it was necessary to upgrade the nokia route
plugin to 7.2.

The major change is that 7.2 does not support multiple mode parameters which
6.2 did. Now if the user selects multiple route optimizations multiple
requests will be made, one for each optimization. Nokia has also reduced
the amount of different route modes, only fastest and shortest are supported
now.

In the response part noting has changed, so no parsing fixes were necessary.

Task-number: QTBUG-24808

Change-Id: I256079f9a1e91e11c961849c95b95b712021ace0
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoAdd BlackBerry positioning plugin for QtLocation
Jim Ehrismann [Thu, 24 Oct 2013 20:22:40 +0000 (16:22 -0400)]
Add BlackBerry positioning plugin for QtLocation

Note files in bb subfolder are considered temporary and
will be removed when equivalent functionality has been
incorporated in Qt Core or BB10 core on Qt5.

Change-Id: I08d2c771d18914525fad410f1b6e83772ef3a0d7
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Liang Qi <liang.qi@digia.com>
4 years agoFix occasional crash in Geoclue plugin.
Aaron McCarthy [Tue, 5 Nov 2013 07:20:16 +0000 (17:20 +1000)]
Fix occasional crash in Geoclue plugin.

There is no need to create a DBus proxy object for Geoclue.Position when
the service name and path are empty.

Change-Id: I21ca2190aa929fa77e823c5cc7056ceb74f644eb
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDoc: Updated url variable in qdocconf files.
Jerome Pasion [Tue, 5 Nov 2013 12:18:46 +0000 (13:18 +0100)]
Doc: Updated url variable in qdocconf files.

In 5.2, the HTML output is in a flatter structure and when they are
hosted in qt-project.org/doc, the documentation will be found at
http://qt-project.org/doc/qt-$QT_VER

The url variable is used by projects outside of Qt 5 which need
to link to Qt 5 documentation, such as Qt Creator.

Task-number: QTBUG-34584
Change-Id: Ibc0d4b9ef43bfb0e584d95fac8e97ec472e1e0e8
Reviewed-by: Topi Reiniƶ <topi.reinio@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
4 years agoAlways use double point precision for geo lookups internally
Erik Mattsson [Mon, 4 Nov 2013 13:52:22 +0000 (14:52 +0100)]
Always use double point precision for geo lookups internally

This patch is to remedy rounding errors on ARM devices where
qreal is defined as a float instead of double.

The main change is to replace QPointF with QDoubleVector2D when using
screenPositionToCoordinate and coordinateToScreenPosition. In many
cases the QDoubleVector2D is converted to QPointF when the increased
precision is not used. This because many of the surounding classes uses
qreal so the precsision would be lost anyway. These classes include
QVectorPath, QPainterPath and QQuickItem.

The most important change is in polyline and polygon map item in the
updateSourcePoints methods. Using floating point precision here resulted
in many precision errors that caused for example route lines to be
chopped of as the method erroneously thought it needed to wrap to the other
side of the datum line.

The external uses of the coordinate lookup functions in declarative geo map
has been left untouched so they still use QPointF for compatibility reasons. Not
sure how the process goes when updating externally visible parts of the API

Change-Id: I01ed67a0563cfb5c4ff2db6395b7a62eaa8e4a19
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoFixed broken test cases with incomplete test plugin configuration
Anders Gunnarsson [Mon, 4 Nov 2013 15:07:47 +0000 (16:07 +0100)]
Fixed broken test cases with incomplete test plugin configuration

The test plugin is experimental and requires allowExperimental == true
to be used

Change-Id: Id27d4b2a4a9597fc42a725435cac49b898010e4a
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoImprove ClosedError handling in QGeoPositionInfoSource
Alex Blasche [Wed, 30 Oct 2013 13:03:57 +0000 (14:03 +0100)]
Improve ClosedError handling in QGeoPositionInfoSource

The previously described behavior was introduced by a platform
which QtPositioning no longer supports. Effectively this is a
behavior change which currently doesn't affect any known backend.

The upcoming Android & BB10 backends support this new behavior.

The described behavior was very inconvenient from a QML developer's
perspective. Deleting a QML PositionSource is rather inconvenient and
difficult to do. The API should make a developer's life easier.

Task-number: QTBUG-33457
Change-Id: I94432c0569b647cd33c27f75ed73ce5322f40d47
Reviewed-by: Anders Gunnarsson <anders.gunnarsson@appello.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix grammar mistake in satellite info source documentation.
Alex Blasche [Wed, 30 Oct 2013 14:32:50 +0000 (15:32 +0100)]
Fix grammar mistake in satellite info source documentation.

Change-Id: I33b8df175587bbe263a14a810442fb85ba30cf6e
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
4 years agoImprove QGeoSatelliteInfoSource API docs
Alex Blasche [Wed, 30 Oct 2013 08:09:30 +0000 (09:09 +0100)]
Improve QGeoSatelliteInfoSource API docs

1.) Clarifies the timeout behavior of startUpdates()
2.) Specify error() signal behavior when timing out during requestUpdate()

Change-Id: Id643465891a6a08ba04c25c1439fda34bd5a79b0
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoRemove incorrect position references in satellite documentation.
Alex Blasche [Tue, 29 Oct 2013 14:28:10 +0000 (15:28 +0100)]
Remove incorrect position references in satellite documentation.

Most liklely they were caused by Copy & Paste.

Change-Id: Iacdff9d28aa3e3a1bd662e970200f84e2863597f
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoAdd QGeoPositionInfoSource::NoPositioningMethods enum value
Alex Blasche [Mon, 28 Oct 2013 15:14:23 +0000 (16:14 +0100)]
Add QGeoPositionInfoSource::NoPositioningMethods enum value

This simplifies various position backend implementations
as they don't have to cast 0 to QGeoPositionInfoSource::PositioningMethods

At the same time we synchronize the same QML enum and its value name.

Change-Id: Ic0b258161a6319da238b265ad5d9926349f461f1
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoAdd NoError to the various Positioning Source classes.
Alex Blasche [Mon, 28 Oct 2013 14:51:42 +0000 (15:51 +0100)]
Add NoError to the various Positioning Source classes.

This became apparent while implementing the BB10 and Android backends.

Change-Id: I54e2c0fce63021b9fad0c544777792aed726608b
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoDoc clarification on emission of updateTimeout() in QGeoPositionInfoSource
Alex Blasche [Tue, 29 Oct 2013 12:38:14 +0000 (13:38 +0100)]
Doc clarification on emission of updateTimeout() in QGeoPositionInfoSource

The error() signal is not emitted in case of an updateTimeout() signal.

Change-Id: If4fc4c723f042f2e6feed66ffac32fb857e09ae9
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix wrong signal names in documentation.
Alex Blasche [Tue, 29 Oct 2013 09:44:54 +0000 (10:44 +0100)]
Fix wrong signal names in documentation.

Change-Id: I7926efa7a15859185a8990c850cc8407f8f45de6
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
4 years agoNew copyright logo for nokia maps plugin
Erik Mattsson [Fri, 25 Oct 2013 09:11:42 +0000 (11:11 +0200)]
New copyright logo for nokia maps plugin

Since Nokia maps is now Here maps we need to update the copyrigt
logo in the maps view to the Here logo.

Change-Id: Ice6b08afbe7eedefd93a6fb1733df1aa07f30577
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoEnabled setting max/min zoom level in declarative map
Erik Mattsson [Fri, 18 Oct 2013 13:41:13 +0000 (15:41 +0200)]
Enabled setting max/min zoom level in declarative map

Created setters for max & min zoom level qproperty in declarative geo map.
The new max/min values are set in the gesture area so the camera data
values set by the plugin are still intact.

Change-Id: I502159c1842238f41c2d598d2fb82c761af9535b
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoUpdate Qt Creator QML meta data following recent version changes
Alex Blasche [Tue, 22 Oct 2013 10:00:23 +0000 (12:00 +0200)]
Update Qt Creator QML meta data following recent version changes

Change-Id: I6331a0cde85dd3c4ba69e4f67db53e67aa696db1
Reviewed-by: Erik Mattsson <erik.mattsson@appello.com>
Reviewed-by: Anders Gunnarsson <anders.gunnarsson@appello.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoIntroduces 5.3 QML APIs.
Alex Blasche [Tue, 22 Oct 2013 09:59:55 +0000 (11:59 +0200)]
Introduces 5.3 QML APIs.

Existing 5.2 QML APIs automatically become available
under 5.3 import tags too

Change-Id: I5101c63eaaa00a124475bbc7f60fda0eecfde6ec
Reviewed-by: Erik Mattsson <erik.mattsson@appello.com>
Reviewed-by: Anders Gunnarsson <anders.gunnarsson@appello.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoMerge branch 'stable' into dev
Alex Blasche [Tue, 22 Oct 2013 12:37:37 +0000 (14:37 +0200)]
Merge branch 'stable' into dev

Conflicts:
src/imports/location/qdeclarativegeomap.cpp
src/imports/location/qdeclarativegeoroute.cpp
src/imports/location/qdeclarativegeoroutemodel.cpp
src/imports/location/qdeclarativegeoroutesegment.cpp
src/imports/location/qdeclarativepolygonmapitem.cpp
src/imports/location/qdeclarativepolylinemapitem.cpp
src/imports/positioning/positioning.cpp

Change-Id: Ieaa5f567d2144d0267e7eef5bd75bde7e0079fbe

4 years agoMade fitViewportTo* methods honor qml animations
Erik Mattsson [Thu, 17 Oct 2013 13:51:46 +0000 (15:51 +0200)]
Made fitViewportTo* methods honor qml animations

fitViewportToMapItems and fitViewportToGeoShape ignored any animations
that was set on center and zoomLevel in qml. With this change they
are now properly animatied if any animation is specified in qml.

Change-Id: I8f88875cc9a528566ecdbe5484a413459787b316
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoSave and restore the last known position. v5.2.0-beta1
Aaron McCarthy [Thu, 17 Oct 2013 04:19:34 +0000 (14:19 +1000)]
Save and restore the last known position.

Saves the last known location on destruction.

Change-Id: Id3c45bed4e94c9e44656d96a8dffc576c7e26a48
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoUpdate position when switching position sources.
Aaron McCarthy [Thu, 17 Oct 2013 04:10:06 +0000 (14:10 +1000)]
Update position when switching position sources.

The declarative position source only updates its position when an update
arrives. The position property is now updated when:

At construction time the position source may have a last known position
available.

When switching position sources, the position is updated to the last
known position of the new source or invalidated in the case that no
position source is selected.

Change-Id: Ib67407f252f2e60d8fd4e32179847f465c1aaf94
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDon't start Geoclue providers until necessary.
Aaron McCarthy [Tue, 15 Oct 2013 12:56:50 +0000 (22:56 +1000)]
Don't start Geoclue providers until necessary.

Creating the Geoclue master client starts the Geoclue providers. This
causes the Geoclue provides to start, even though startUpdates() hasn't
been called yet. Defer creating the master client until startUpdates()
is called and destroy it when stopUpdates() is called.

Change-Id: I8a40eb1d68b50288742b8da088bc14904b1165ba
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoUpdate Positioning QML meta data following QML version bump to 5.2
Alex Blasche [Fri, 11 Oct 2013 14:45:56 +0000 (16:45 +0200)]
Update Positioning QML meta data following QML version bump to 5.2

Change-Id: I8170b591317feb866d208fa4c12a96d3ed52fb7a
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoFix potential enum value clashes in QGeoPositionInfoSource::Error.
Alex Blasche [Tue, 15 Oct 2013 09:18:08 +0000 (11:18 +0200)]
Fix potential enum value clashes in QGeoPositionInfoSource::Error.

The declarative version of the position info source reuses the C++ enums.
Nevertheless the declarative version may add its own enums as well.
Shift the enum values such that C++ and QML version of the API can stay
in sync and at the same time add values independent from each other.

Change-Id: Ic7082a3d34e7a69f6518a3f1268ee319068bf15d
Reviewed-by: Anders Gunnarsson <anders.gunnarsson@appello.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoAdded qml function to fit map to geo shape
Erik Mattsson [Mon, 7 Oct 2013 08:23:01 +0000 (10:23 +0200)]
Added qml function to fit map to geo shape

Added a qml invokable function in the map object to fit the viewport
to a geo shape. It's heavily influenced from fitViewportToMapItems.
Also added some basic ui tests.

Added handlig for the case with an empty shape

Change-Id: Iecad849f2c1b6d9a54eab90e26435b31a138886c
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoQtAlgorithms have been deprecated (2 of 2)
Alex Blasche [Thu, 10 Oct 2013 13:22:56 +0000 (15:22 +0200)]
QtAlgorithms have been deprecated (2 of 2)

Convert to std algorithms to avoid warnings

Change-Id: I348e693fc14d67ad18fddfccd184858386373d23
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoRevert "Improve filtering of touch and mouse events."
Alex Blasche [Mon, 14 Oct 2013 12:45:48 +0000 (14:45 +0200)]
Revert "Improve filtering of touch and mouse events."

This reverts commit b34bee26c932b9f7579e99d1dca632cb8c47d85f.

Tests with mapviewer example on Linux have shown that
the map cannot be dragged anymore. Bisecting the history has
revealed b34bee26c to be the culprit.

Task-number: QTBUG-34077
Change-Id: If2aa9ebca4d56d03c7f6414d82a1813adb9b7b11
Reviewed-by: Erik Mattsson <erik.mattsson@appello.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoAdd proper version to QtPositioning and its QML API.
Alex Blasche [Fri, 11 Oct 2013 14:43:21 +0000 (16:43 +0200)]
Add proper version to QtPositioning and its QML API.

The QML API remains available under 5.0 though.

Change-Id: I037b82e5b12825db610e8458d6c82122ecde4f44
Reviewed-by: Erik Mattsson <erik.mattsson@appello.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoMake geo coordinates animatable in QML.
Albin Olsson [Thu, 19 Sep 2013 14:17:20 +0000 (16:17 +0200)]
Make geo coordinates animatable in QML.

Interpolation logic in AnimatableCoordinate has been moved around so
that QGeoCoordinates can be animated directly by QPropertyAnimation.

A new QML type has been added, 'CoordinateAnimation', for animating
coordinates in QML. This type follows
the pattern of 'ColorAnimation' and other specializations of
'PropertyAnimation'.

QDoubleVector2D, QDoubleVector3D and QGeoProjection has been moved to QtPositioning

Testcase for CoordinateAnimation has been added to declarative_ui.

AnimatableCoordinate and QGeoCoordinateInterpolator are redundant
and have been removed.

Change-Id: I0809da566e1800274384f9c5337df65623d1e61a
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoQtAlgorithms have been deprecated (1 of 2)
Alex Blasche [Fri, 27 Sep 2013 12:13:26 +0000 (14:13 +0200)]
QtAlgorithms have been deprecated (1 of 2)

Convert to std algorithms to avoid warnings. One qSort case is still
left since it seems to require a more elaborate fix.

Task-number: QTBUG-11022
Change-Id: Ieccc5050b127a58ff1f0aa7c488909f2acfa2972
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoEmit updates from Geoclue when an update interval is not specified.
Aaron McCarthy [Thu, 3 Oct 2013 06:32:26 +0000 (16:32 +1000)]
Emit updates from Geoclue when an update interval is not specified.

An update interval of 0 is valid and means provide position updates as
frequently as the provider can supply them. The state of the update
timer was being used as the check for whether updates should be
provided. This is invalid for the case of a 0 update interval as the
update timer is not started.

Change-Id: I2c9d3fef41abaa21feafd31b232a7053d179ffd6
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoAdded possibility to create a georectangle from a list of coordinates
Erik Mattsson [Fri, 27 Sep 2013 13:44:01 +0000 (15:44 +0200)]
Added possibility to create a georectangle from a list of coordinates

It will create the smallest possible rectangle that contains all of the
coordinates. This is accessible from qml using the locationsingleton.
The plan is to include the ability to fit the view-port of the map
to a georectangle.

Change-Id: I616ac8ef169f697e53a3d9ebcf114f4f2cde8298
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoPerformance enhancements for map tile textures
Anders Gunnarsson [Thu, 3 Oct 2013 15:33:31 +0000 (17:33 +0200)]
Performance enhancements for map tile textures

Unnecessary image conversion for premultiplied textures is now avoided.

Map tile textures are now applied correcly to their geometries, so that
vertical mirroring is no longer needed for the textures.

Mipmaps are disabled for map tile textures. Different tiles are already
used for different zoom levels.

Change-Id: I546bffc8b7f6b2a777d9805c434697f2284ec082
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
4 years agoFix build with current qtdeclarative.
Stephen Kelly [Wed, 2 Oct 2013 15:33:32 +0000 (17:33 +0200)]
Fix build with current qtdeclarative.

Change-Id: I1315d984216309ed2f76e8326c231752aa98ab3e
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoInclude QDataStream.
Aaron McCarthy [Tue, 24 Sep 2013 11:25:09 +0000 (21:25 +1000)]
Include QDataStream.

Don't rely on it being pulled in by other includes.

Change-Id: Ifda86c1a5b3e76299594fafbbb6d2d94f24b0bb3
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoUpdate the git-archive export options
Sergio Ahumada [Fri, 27 Sep 2013 14:21:54 +0000 (16:21 +0200)]
Update the git-archive export options

The .gitattributes, .gitignore, .commit-template files do not need to be
present in packaged sources, as they are for people using the Git
repository.  People who download tarballs usually don't reimport into
Git -- they should just download the actual repositories.

Change-Id: I34c049b99475c2aee448a075dec30e5471bf8f83
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
4 years agoMake QtLocation QML module compile after QJSValuePrivate constructor change
Alex Blasche [Mon, 30 Sep 2013 09:35:43 +0000 (11:35 +0200)]
Make QtLocation QML module compile after QJSValuePrivate constructor change

Change-Id: Ib38ebdbed68689cca035cefa46e02e68bf63ae0b
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoDoc: Fixed broken Location links due to version number. v5.2.0-alpha1
Jerome Pasion [Wed, 25 Sep 2013 11:14:40 +0000 (13:14 +0200)]
Doc: Fixed broken Location links due to version number.

-Documentation should not have the version number.
-Links and documentation with type version number no longer recommended
 because it is a maintainability and consistency issue.

Use <Module name>::<type> to link to a QML type.

Change-Id: I830407e68f0a91f3fb9a5deb3fb5a9a02a100a34
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDoc: Fixed broken Positioning links due to version number.
Jerome Pasion [Wed, 25 Sep 2013 11:09:56 +0000 (13:09 +0200)]
Doc: Fixed broken Positioning links due to version number.

-Links and documentation with type version number no longer recommended
 because it is a maintainability and consistency issue.

Use <Module name>::<type> to link to a QML type.

Change-Id: I0f5dcb833c32c3845fc48c18fa29a2c89b13f1d0
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDoc: Removed version from "\inqmlmodule QtLocation"
Jerome Pasion [Tue, 24 Sep 2013 15:32:24 +0000 (17:32 +0200)]
Doc: Removed version from "\inqmlmodule QtLocation"

-QDoc ignores these and uses the "\qmlmodule QtLocation 5.0"
 to determine the import statement.
-Better to remove now to avoid confusion.

Task-number: QTBUG-32172
Change-Id: I63e468d8e8e5ef672527dc427f02378d0d269ad9
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoDoc: Removed version from "\inqmlmodule QtPositioning"
Jerome Pasion [Tue, 24 Sep 2013 15:28:50 +0000 (17:28 +0200)]
Doc: Removed version from "\inqmlmodule QtPositioning"

-QDoc ignores these and uses the "\qmlmodule QtPositioning 5.0"
to determine the import statement.
-Better to remove now to avoid confusion.

Task-number: QTBUG-32172
Change-Id: Ic72481de40bdc69b874e9e6ac3339968b6ac208a
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoBump qtlocation version to 5.3.0
Thiago Macieira [Mon, 23 Sep 2013 02:44:31 +0000 (19:44 -0700)]
Bump qtlocation version to 5.3.0

Change-Id: I5b8af17d3aa5846d405958fea05bdadc7988464c
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
4 years agoMove tilecache storage to a standard location
Albin Olsson [Thu, 19 Sep 2013 07:29:54 +0000 (09:29 +0200)]
Move tilecache storage to a standard location

~/.tilecache is not standard. Base path off of QStandardPaths::CacheLocation

Change-Id: I66573afe33f756f86afef02951a8b4800a4aea5d
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoMake compile after recent V4 API changes
Alex Blasche [Thu, 19 Sep 2013 10:12:22 +0000 (12:12 +0200)]
Make compile after recent V4 API changes

Change-Id: Ib14d670e51c256d52ad6c62a6091b470ed3c95e7
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoDoc: Setting \qtvariable to "positioning" instead of "location"
Jerome Pasion [Tue, 17 Sep 2013 15:02:23 +0000 (17:02 +0200)]
Doc: Setting \qtvariable to "positioning" instead of "location"

Change-Id: Id8864f4e3f874965b064dd404a994dbade89602e
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoImprove area monitoring API.
Alex Blasche [Mon, 26 Aug 2013 07:35:01 +0000 (09:35 +0200)]
Improve area monitoring API.

1.) QGeoAreaMonitor renamed to QGeoAreaMonitorSource
2.) Add new QGeoAreaMonitorInfo data type encpsulating individual areas to be monitored
3.) Port positionpoll plug-in to new features
4.) Make positionpoll monitor thread safe
4.) Extend and fix the QGeoAreaMonitor unit test
5.) Fix documentation.

Task-number: QTBUG-31711

Change-Id: Icfc982de4753d2f43cb4d15c234eb7b7c039a0c4
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoReturn NaN if position info source doesn't have an attribute.
Aaron McCarthy [Mon, 9 Sep 2013 05:38:46 +0000 (15:38 +1000)]
Return NaN if position info source doesn't have an attribute.

The previous returned value of -1 could be a valid value for some
attributes. Returning NaN has the advantage that calculations done with
an attribute that has not been set will have the final result evaluate
to NaN as well.

Change-Id: I42fd3512453910efd78f3be66acba46a1e829ee0
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix MapGestureArea consuming mouse events.
Albin Olsson [Wed, 11 Sep 2013 06:58:13 +0000 (08:58 +0200)]
Fix MapGestureArea consuming mouse events.

If MapGestureArea.enable == false, allow mouse events to be passed
on to the Map's parent item.

Change-Id: I9d7fc2ca760193e6b523565a7459612db927f909
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoImprove definition of projects belonging to QtPositioning & QtLocation
Alex Blasche [Wed, 11 Sep 2013 14:50:44 +0000 (16:50 +0200)]
Improve definition of projects belonging to QtPositioning & QtLocation

This enables clean builds of qtlocation repo even if Qt3D is not available.
In such cases only QtPositioning related projects should be build.

There is a small build fix as well as some quick related includes
changed from proper includes to forward declarations.

Change-Id: Ifa8a9315beabcc1f64be219f8fa55236bf4ce42f
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix broken polygonline and polygonitem for ARM.
Albin Olsson [Wed, 4 Sep 2013 11:19:32 +0000 (13:19 +0200)]
Fix broken polygonline and polygonitem for ARM.

Routes drawn on map became broken after pinch-zooming. Root cause was
inconsistent use of floating point types that only affects ARM
architecture. Fix is to switch double to qreal declarations.

I believe a more thorough review of the uses of doubles in QtLocation
needs to be done. See QTBUG-33331.

Change-Id: I72411d304d2e9183d415c2afdf0a31b80a4ad2a6
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix Geoclue plugin when used with slow Geoclue providers.
Aaron McCarthy [Tue, 3 Sep 2013 06:49:22 +0000 (16:49 +1000)]
Fix Geoclue plugin when used with slow Geoclue providers.

The Geoclue plugin expected the master provider to select a positioning
provider quickly and would fail if one was not selected. This is likely
to happen if the only provider available is GPS based and has to obtain
a fix from a cold start.

Fixed by changing the Geoclue plugin to report success as long as the
master client interface is successfully created.

Change-Id: Ib74e3800a2444eb80afd26c671371de884759119
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix assert error caused by MapItemView.
Albin Olsson [Tue, 3 Sep 2013 07:27:54 +0000 (09:27 +0200)]
Fix assert error caused by MapItemView.

Use deleteLater() instead of delete to avoid potential assert error
(ASSERT: "context() && engine()" in file qml/qqmlboundsignal.cpp)
when a map item is deleted.

Change-Id: I86252077a3b0a0ce4b90e194c2e2c3bbd1214ef0
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoFix conditional expression.
Aaron McCarthy [Mon, 2 Sep 2013 00:06:01 +0000 (10:06 +1000)]
Fix conditional expression.

The return type of the init() function was changed to bool. Fix the
expression that was missed.

Change-Id: I2310064dad9bd4d414a47631c3cc561c2c78cfd2
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix comment in copy and pasted code.
Aaron McCarthy [Mon, 2 Sep 2013 00:11:26 +0000 (10:11 +1000)]
Fix comment in copy and pasted code.

Modify the comment to refer to the actual member variable that the
comment is about.

Change-Id: I8ecd9e0de4e0d977866c6d2a93295564ae5d290b
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoImplement socket NMEA source.
Albin Olsson [Fri, 30 Aug 2013 10:56:31 +0000 (12:56 +0200)]
Implement socket NMEA source.

nmeaSource property of PositionSource is limited to log files. This
change adds possibility of using a TCP socket instead. This is a lot
more useful when testing because it can be used with a simulator.

Change-Id: Ie6fb2b5344aae2702a8cf53d0146780d6ea1e0f9
Reviewed-by: Albin Olsson <albin.olsson@cybercom.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoRevert "Temporarily fix qtlocation against a non-broken qtbase."
Simon Hausmann [Tue, 3 Sep 2013 08:13:32 +0000 (10:13 +0200)]
Revert "Temporarily fix qtlocation against a non-broken qtbase."

This reverts commit 6603fae80a7a5d6e610668c418f4ff983cfd38dc

qtbase is fixed now

Change-Id: I9216bb7a947fc9c7b5c42d7a31a150800699b303
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoFix some name inconsistencies in QtLocation
Alex Blasche [Thu, 29 Aug 2013 09:27:50 +0000 (11:27 +0200)]
Fix some name inconsistencies in QtLocation

1. Rename QGeocoding* classes to QGeoCoding*. This emphasizes the QGeo
prefix rather than the geocing word. The QML interfaces continues to use
the Geocoding* as they don't a prefix as such.

2. Rename QProposedSearchResult to QPlaceProposedSearchResult. The class is place
related and should carry the QPlace name prefix

Change-Id: I428c7e6368774a9f199db5c113de11649e4a665c
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoUpdate the cmake test for the location modules.
Stephen Kelly [Mon, 2 Sep 2013 13:54:15 +0000 (15:54 +0200)]
Update the cmake test for the location modules.

Task-number: QTBUG-33259

Change-Id: I6b6f2465732f8b3ae3c8613339be26f61bdfc88b
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoSplit QtLocation into QtPositioning and QtLocation
Alex Blasche [Fri, 16 Aug 2013 08:02:13 +0000 (10:02 +0200)]
Split QtLocation into QtPositioning and QtLocation

QtPositioning is not dependent on any gui component and mostly
covers everything around the retrieval of position information.

QtLocation covers place, map and navigation APIs.

Several documentation issues were fixed during the process.

Change-Id: I98e2a53065549a2fc43f93a75b4f65b5bc884c92
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoTemporarily fix qtlocation against a non-broken qtbase.
Alex Blasche [Mon, 2 Sep 2013 09:59:32 +0000 (11:59 +0200)]
Temporarily fix qtlocation against a non-broken qtbase.

mac no-framework builds are currently broken.

Change-Id: I1df610c5af15a82414b15c038605ea321d4203b3
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
4 years agoFix bug where getDetails() could invalidate icon url.
Albin Olsson [Thu, 29 Aug 2013 13:21:18 +0000 (15:21 +0200)]
Fix bug where getDetails() could invalidate icon url.

QQmlProperty map cannot remove values, only "clear" them. When they were
converted to a QVariantMap (for retrieving url) cleared values would
be sent as invalid QVariants, which caused the url fetch to fail.

Solution is to check for invalid qvariants.

Change-Id: Ifd9407b3217edbd2d5a1702915f82c46f3c5f498
Reviewed-by: Albin Olsson <albin.olsson@cybercom.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoChange isPinchActive property to read-only.
Albin Olsson [Thu, 29 Aug 2013 07:11:24 +0000 (09:11 +0200)]
Change isPinchActive property to read-only.

According to the documentation the isPinchActive property in
MapGestureArea should be a read-only property. It has probably been made
writable by mistake.

Change-Id: Idacb6607a077010ae59a97cca16ab7e9a3569526
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoImprove filtering of touch and mouse events.
Albin Olsson [Tue, 27 Aug 2013 15:10:00 +0000 (17:10 +0200)]
Improve filtering of touch and mouse events.

When filtering touch events, two different touch points may be received in
two different events. This could cause the map to flicker when it
interpreted the events has having the same touch point. Solution is to
check state and id of touch points in the event.

When filtering events, either don't use the event, return true and receive
the event again the normal way, or use the event but return false so the
child can use it also. This should prevent using the same event twice.

In order to support both mouse and touch (by internal touch synthesizing)
we must record whether we receive touch events and only accept mouse
events if we don't.

Change-Id: I90e557b13e23db71d5179f52055965ee23067d36
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
4 years agoAdd support for Geoclue Satellite interface.
Aaron McCarthy [Tue, 20 Aug 2013 01:47:52 +0000 (11:47 +1000)]
Add support for Geoclue Satellite interface.

The Tizen project introduced an interface for getting the Satellite
info directly from a positioning provider. If Geoclue supports this
interface make use of it in the geoclue position plugin.

The plugin no longer checks the gconf setting
/apps/geoclue/master/org.freedesktop.Geoclue.GPSDevice for a valid GPS
device. This setting is used by Gypsy (and other providers) but may not
necessarily be used by all providers that provide GPS quality data.
Instead rely on the Geoclue master provider to determine if GPS is
available. Because of this change the gconf dependency has been dropped.

The plugin no longer uses the Geoclue master provider as a proxy for
position data. Instead it queries the master provider for the DBus
service and path of the actual provider and connects directly to that
provider. This has to be done anyway to get velocity and satellite
data.

The plugin no longer assumes that the real positioning provider is
Gypsy. This assumption was hard coded as it was always connecting
directly to Gypsy to get the velocity data irrespective of what
positioning provider was actually being used. Geoclue master does not
proxy the Velocity interface. Instead it queries the master provider
for the DBus service and path of the actual provider and connects
directly to that provider. If the velocity interface is available it
will now be from the same provider as the position.

Change-Id: I8a6116e4061e50cc28d1efd71df0f7a348a0f143
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoIncrease reliability of nmea auto tests on Windows
Alex Blasche [Wed, 14 Aug 2013 09:05:10 +0000 (11:05 +0200)]
Increase reliability of nmea auto tests on Windows

The default timeouts seem to be to small

Change-Id: Idc9f9a4bd017a9ce1fb5de70f41075b8ff4bc0ed
Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
4 years agoQGeoAreaMonitor becomes loadable via plugins.
Alex Blasche [Tue, 6 Aug 2013 14:22:37 +0000 (16:22 +0200)]
QGeoAreaMonitor becomes loadable via plugins.

The polling-based default implementation is separated out into its own
plugin.

Task-number: QTBUG-31960
Change-Id: Ife25f6a83dd51f32fcd9ee3bfde1ca51291c78e4
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>