MER: Add packaging.
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>
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>
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>

Conflicts:
	src/imports/location/qdeclarativegeomap.cpp
	src/imports/positioning/positioning.cpp
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>

Conflicts:
	src/imports/location/qdeclarativegeomap.cpp
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>
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>
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>
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>
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>
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>
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>

Conflicts:
	src/imports/location/qdeclarativegeomapgesturearea.cpp
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>