Add support for quaternion in ShaderEffect

Task-number: QTBUG-32605
Change-Id: I4e90a3505740dd9a8b369dac6ce05ce066d14d44
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Respect device pixel ratio in "OpenGL under QML" example.

Change-Id: I1b67acfdcdb1fb47593a6acd62ffd6c3315b5503
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
qqmldebugclient.cpp: Fix warning about missing return.

In file included from ../shared/qqmldebugclient.cpp:473:0:
../shared/qqmldebugclient.cpp: In member function
'QString QQmlDebugClient::stateString() const':
../shared/qqmldebugclient.cpp:452:1: warning: control reaches end of
non-void function

Change-Id: Ic5422dcff41591691621077ade45b6ea3ea3a8f1
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Safely abort when we don't succeed in creating a GL context.

Task-number: QTBUG-33363

Change-Id: Ia2b0c329157786cb4ec703989f12d2fdb1ce6bc8
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Bump MODULE_VERSION to 5.2.1

Change-Id: I211610ee4153fa1e24de085d64bd735ce3746ae0
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Stabilize tst_qpauseanimationjob

This test is highly timer dependent and contains so many windows special
cases that indicate problems (when timers are not accurate or the
machine is busy).

Change-Id: Ie057d560d39300252ffb6c19b4d1446179c0e56a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Merge remote-tracking branch 'origin/release' into stable

Change-Id: Id732233d56e8d1706f62ef7a153d4a471406c551
Use the sharing context when grabbing a hidden QQuickWindow.

This allows QtWebEngine auto tests to grab the window's contents
without having to show it.

Change-Id: I5989a9815d0f69a7eff655f322c99d6051fc4d25
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Always check for dragging changed, not just when movement starts

Otherwise, if you flick and then start a new drag before the flick
completes, dragging remains false.

Change-Id: I9bbe20107317a6edf765c87d2e0afe3e9e2618e9
Done-with: Aaron Kennedy <aaron.kennedy@jollamobile.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
tst_qqmlxmlhttprequest: Use QScopedPointer.

Ensure resources are cleaned up in case of failing tests.

Change-Id: Ie27800da37beac09fec34111af276ed029dcde20
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
Fix assert after giving focus to a disabled item.

If an item has focus stolen by another item remove activeFocus from it even
if the item that gains focus doesn't gain activeFocus.  Otherwise the focus
tree will enter a state where an item that is not the subFocusItem of its
focus scope has activeFocus which is invalid and will trigger an assert
in QQuickWindowPrivate::clearFocusInScope().

Task-number: QTBUG-34779

Change-Id: I72408ec0e4fd9b05ef595147ef1ef95b6aed1c16
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Use lookups for create_property (ie. new foo.bar)

This is not used that often, but it removes one more place
where we do lookups by name.

Change-Id: I9f798b8b4a64be3fdf3e53090e4288724c9d2b22
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Speed up arguments object

Don't fully create the arguments object unless required.
In the 95% use case, we can avoid creating any array based
data structures for the arguments object and directly
manipulate the functions arguments. only create the full
data structure for the other 5%.

Speeds up the raytrace test by 50%, gives around 10% overall
on v8-bench.

Change-Id: If727d28b96585e83314f544031a6c3ca1817ea19
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Add support for large items to the memory manager

This is required, so we can track ExecutionContexts
through the regular memory manager.

Change-Id: I1bd2e2ef275e6e9e1f364a35affbb991f4377b05
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Turn execution contexts into Managed objects

This finally gives proper memory management for ExecutionContexts.
So far they had been garbage collected but where still allocated
using standard malloc/free(). This allows us to collect the
contexts faster and speed up context creation.

Change-Id: I02e642391d55eaa59ab3f4c2720a2ac71259caf4
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Saner and simpler way to handle line numbers for JITed code

Instead of storing the current instruction pointer in the
ExecutionContext, we might as well directly store the current
line number there.

Leads to simpler code, works cross platform and should also
be faster.

Change-Id: Ifb7897cf8dbe8a962505fe876aa3ed43283ebb06
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Fix crash when assigning a null QObject or derived property as a ListView model

Fall through to the null case handler in the event of a QVariant of QObject or
derived type with a null value, rather than asserting in the instance handler.

Task-number: QTBUG-34999

Change-Id: I5eeffbe29a263c57e6157d516b138ddc8e2e7a95
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Performance note about QQuickWindow::setColor vs top-level Rectangle

Change-Id: I58d271b108734958b6e0cd55ff62417d5b649a63
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Tests: Enable TestHTTPServer to receive data in chunks.

Fixes tst_qqmlxmlhttprequest on Windows.

Task-number: QTQAINFRA-573

Change-Id: Ie685cfa90904672246c1c5d8d3cec54c63cc76ba
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Fix crash on QQmlEngine destruction.

QQmlTypeLoader references QQmlImportDatabase in a thread, so change the
declaration order so QQmlTypeLoader is destroyed and its thread stopped
before QQmlImportDatabase is destroyed.

Change-Id: If1f8ef0a5ce56103a417ecfb6897d2c3b9c8d364
Done-with: Andrew den Exter <andrew.den.exter@jollamobile.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>