Remove from hover list on destruction

When hoverEnabled is unset the item remains in a hovered state until the
mouse leaves. In this circumstance, the item could be destroyed without
cleaning up the reference in the hovered items list.

To catch this and similar circumstances, the item is removed from the
list when destroyed, regardless of hoverEnabled status.

Task-number: QTBUG-30962
Change-Id: I982ab8c9e1077fecc885fd166d70bbbbbe8fc179
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Liang Qi <liang.qi@digia.com>
Enable touch events on Mac for PinchArea

Enabling touch events on a window causes scroll event
lag so we want to avoid avoid it as far as possible.

Enable/disable on scene changes, similar to what we do with
WA_AcceptTouchEvents for widgets, and in change
I2e5b5e2b093cccfc5253f7228f5ec0c588c60371 for MultiPointTouchArea.

Change-Id: I8cd8d172ffd93cfc4ec115917cc8662202f3b069
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Enable touch events on Mac for MultiPointTouchArea

Enabling touch events on a window causes scroll event
lag so we want to avoid avoid it as far as possible.

Enable/disable on scene changes, similar to what we
do for WA_AcceptTouchEvents for widgets.

Task-number: QTBUG-28483

Change-Id: I2e5b5e2b093cccfc5253f7228f5ec0c588c60371
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Canvas: Do not apply transform to text twice

The path already has the transform,
no need to apply it a second time manually.

Task-number: QTBUG-30501

Change-Id: Iedcb2e2f85a1f9eeac8e6264e00536c43bf16ddb
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Fixed wrong rendering offset / clipping with shadowBlur in Canvas.

If the item being rendered didn't have a bounding rect starting in the
origin the shadow path would be get an additional offset equal to the
distance of the item from the origin. Also, the stroke's shadow did not
take the pen width into account, causing clipping artifacts.

Combine all the common shadow generating code into a single function,
and avoid rendering into an intermediate image that is then blitted into
a larger image.

Task-number: QTBUG-30914
Change-Id: I16c7c15897ab8e2d46f37da835f75f97fe680863
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Made Canvas blur better match the one in HTML 5 Canvas.

Fixed blur being too faint by fixing the weight to correctly match the
amount of pixels being sampled based on the blur radius, and by not
multiplying and flooring to int inside the sampling loop which leads to
excessive rounding down errors.

The "half" value in the previous implementation was also wrong due to
using integer division instead of floating point division, which caused
the blur being slightly offset down and to the right.

By not calling scanLine() and constScanline() repeatedly and by only
applying the weight once in the single-weight case we can also gain a
slight performance improvement.

Also, make sure blur radii below 2 don't get floored to 0.

Change-Id: Ibe15d0f51c919594b168923485c051d21f8d7822
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Fix crash in QQmlDelegateModel

It can happen that when the QQmlDelegateModel goes away some of the
QQmlDelegateModelItem from d->m_cache are still incubating, this
means that isReferenced() will return true and we will not delete them.

This also means that when these QQDMIncubationTask finish they may end
up calling QQDMIncubationTask::statusChanged which will try to access
the delegate model that is already gone.

This commit makes sure we set vdm to 0 in these orphaned
QQDMIncubationTask so  in QQDMIncubationTask::statusChanged we know
no one cares about us anymore and don't reference the already gone
delegate model

Task-number:  QTBUG-30928

Change-Id: Ief6176cec151d861dad09ca2498ca27e17ee6385
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Better handle GL errors in EtcTexture::bind().

The scenegraph as a whole does not typically do GL error checking. That
means GL errors occurring elsewhere could cause the etcprovider to unload
textures that loaded correctly.

Change-Id: Ic8e0caa62dab50b391e226cf0a493bc7e357dc46
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Doc: Move example docs related to QtQml under the correct module

This change moves 'Extending QML' qdoc file and the tutorials
from examples/quick to examples/qml, which is the correct
location for them.

Change-Id: I24bd9dfa75baaab7bc8efe08489f09a7b65d98a6
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Merge branch 'stable' of git://qt.gitorious.org/qt/qtdeclarative into st

Conflicts:
	src/quick/items/qquickitem.cpp

Change-Id: Ia8126b22792ce70172e0ee924679c204fe490b8a
Fix crash in QQmlApplicationEngine when loading finishes

Task-number: QTBUG-30997

Change-Id: I10cb2c689408d1b31360095c2aa9e0943a5d9452