aboutsummaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* fix whitespaceOswald Buddenhagen2014-01-22124-358/+358
| | | | | | | remove trailing spaces and expand tabs Change-Id: Ieacb9d096b612c45d1a64700044c114d1f7522bc Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Further pack messages for QQmlProfilerServiceUlf Hermann2014-01-221-6/+6
| | | | | | | | | | | Allow multiple detailTypes in each packet and extend the profiling code to make use of that. Note that this changes the usual order of pixmapSizeKnown and PixmapLoadingFinished events. As far as I can see this doesn't affect the QML profiler frontend and the order of these events isn't specified anywhere. Change-Id: Id39ad98594ccf35add4415e08daf9e92ab561237 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Add missing test data files to .proUlf Hermann2014-01-211-1/+5
| | | | | Change-Id: I7e53877de266c1c11509bbd7c4c558be837df462 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Save memory on array dataLars Knoll2014-01-201-2/+36
| | | | | | | | | | | | | | | | | | | | | Store a simple vector of Values in the array data, instead of a Vector of Property's. This halfes the memory consumption on 64bit and simplifies our code. If an indexed property gets converted to an accessor property, we simply convert the ArrayData into a SparseArrayData. Add support in SparseArrayData to allocate double slots (two Value's) to hold a full Property in case someone sets an accessor on an indexed property. Some methods still return a Property*, but this is safe, as only the first Value in the Property pointer will ever get accessed if the Property doesn't contain an accessor. Change-Id: Ic9b0f309b09a2772a328d947a10faaf3be9fe56f Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fixes to sparse array handlingLars Knoll2014-01-201-0/+21
| | | | | | | | | | deleting entries in sparse arrays could lead to rather unexpected results where values got moved to wrong indices, as we didn't correctly update the size_left values in the red-black tree. Change-Id: If71fcc04d39f257194394cb4f734d0db14b92b69 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* [new compiler] Add support for QML list modelsSimon Hausmann2014-01-202-0/+22
| | | | | | | | | | | | | List model definitions make heavy use of custom parsers, which requires AST access as well as a general port to the new QQmlCustomParser API. Additional fixes in the custom parser support were needed to pass all tests: * Fix support for AcceptsSignalHandlers and AcceptsAttachedProperties * Don't call setCustomData unless the compiler generated data earlier Change-Id: Ic42f8a890391267c94f63d35f055b60fdbf3c83d Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-173-1/+168
|\ | | | | | | Change-Id: Id265682aa7db9be1c0b305ab3207b2c932a25a9f
| * V4: fix range splitting when split is between intervals.Erik Verbruggen2014-01-173-1/+168
| | | | | | | | | | | | | | | | | | | | | | Also added some "white-box" unit tests and sprinkled in a bit of documentation. The case that went wrong is covered by the test rangeSplitting_1: before the fix, the new interval would have two ranges: [66-64],[70-71]. The first range is invalid and should not be there at all. Change-Id: If0742f4e6a96d98ea5d696f95126886ba66f92bb Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devSimon Hausmann2014-01-1711-23/+104
|\| | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/imports/dialogs/DefaultFileDialog.qml src/imports/widgets/qquickqfiledialog.cpp Change-Id: I00de6dd05cb773f01254061d585a82c90b229acd
| * Re-enable mac testsAlan Alpert2014-01-161-7/+0
| | | | | | | | | | | | Task-number: QTBUG-35344 Change-Id: Ifc4d5420c95a615b35f02ec585c324b2cc93c5e0 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
| * Increase the timeout for QPacketProtocol testsUlf Hermann2014-01-161-1/+1
| | | | | | | | | | | | | | | | | | Recent failures when testing a completely unrelated one-line commit (https://codereview.qt-project.org/74584) suggest that the timeout is actually too small. Change-Id: I9c3fd0b09c6be2d42f92485c3c223fe88bb8328e Reviewed-by: Michael Brasser <michael.brasser@live.com>
| * Make sure that profiling can only be started if debugging is enabled.Ulf Hermann2014-01-154-3/+91
| | | | | | | | | | | | | | | | | | | | | | Enabling the profiler doesn't make much sense if there is no debug service as the messages can't be sent anywhere then. Furthermore, the profiler instance is only properly initialized if debugging is enabled and thus enabling profiling without debugging being enabled can cause problems. Change-Id: I784a110126d45a9a2bc9d9e14d9a22e2980c3a42 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
| * Fix some compiler warnings in tests and examples.Christian Kandeler2014-01-153-4/+2
| | | | | | | | | | Change-Id: Ia739c995005635caf6fd0bd4e495ed8567350e83 Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
| * Fix nodetest autotest.Gunnar Sletta2014-01-151-1/+3
| | | | | | | | | | | | | | | | | | GL context was initialized with the wrong surface format resulting in warnings, and we did not clean up the render context properly. Change-Id: I19f748ca985a0becf1f7a6caa987f21567029cfd Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Alex Montgomery
| * tst_qquickpathview: Use QCOMPARE instead of QVERIFY.Friedemann Kleint2014-01-101-7/+7
| | | | | | | | | | | | | | | | Attempting to get some diagnostic output for the failues. Task-number: QTBUG-35705 Change-Id: Iffebae89743c31e88125c0b1e21be172d3373b05 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Remove old unused functionFrederik Gladhorn2014-01-151-44/+0
| | | | | | | | | | Change-Id: If161129a6dd1a5a41191628e0d54b75ab4708632 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* | Fix RenderNode autotest on BlackBerryFabian Bumberger2014-01-151-7/+9
| | | | | | | | | | | | | | | | | | | | On BlackBerry the first window that is created is always shown as fullscreen. This is a platform restriction and possibly applies to other platforms as well. The autotest however expects the window to be of a specific size. As workaround a "container" window is created first in which the QQuickView is placed. Change-Id: Ib9023cfcb9148c6cafb21872c2821ebcb8fd664f Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2014-01-142-0/+37
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-102-0/+37
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/qml/jsruntime/qv4managed_p.h Change-Id: I5da7ae9c87a539e42292f272d9e2b5faab619c9f
| | * Fix Flickable generated release event with pressDelay.Martin Jones2014-01-092-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | Map mouse position to grabber when forwarding release event due to release before pressDelay timeout. Task-number: QTBUG-34570 Change-Id: I7214077c9ac95f77407cf66f9dad52f577eccd79 Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
* | | Allow assignment of a QML Locale object to a C++ QLocale property.Mitch Curtis2014-01-141-0/+36
|/ / | | | | | | | | | | | | Task-number: QTBUG-36125 Change-Id: I58454db0c47684aed3e95c52a8135fd5fd6bf2f9 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Rework array handling for JS objectsLars Knoll2014-01-091-1/+1
| | | | | | | | | | | | | | | | | | Split up ArrayData into two classes, one for regular arrays, one for sparse arrays and cleanly separate the two cases. Only create array data on demand. Change-Id: I9ca8d0b53592174f213ba0f20caf93e77dba690a Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Simon Hausmann2014-01-081-0/+13
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devSimon Hausmann2014-01-081-0/+13
| |\| | | | | | | | | | Change-Id: Ied8d65aaf57e897a3dbc4df100744a594e8ee2cf
| | * [ChangeLog][QtQml] Fix JavaScript Array.pop() not updating the internal ↵Simon Hausmann2014-01-071-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | array length correctly While the length property was reporting the correct value, the internal array length was out-of-sync. Task-number: QTBUG-35979 Change-Id: I68820a349cf1ce88c6aabc6a2301a8a861018a10 Reviewed-by: Liang Qi <liang.qi@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | Dont call updatePolish if an item is not visibleFabian Bumberger2014-01-082-4/+20
|/ / | | | | | | | | | | | | | | | | [ChangeLog][QtQuick][QQuickItem] "updatePolish" is not called for invisible items any more. Task-number: QTBUG-31830 Change-Id: Idad6107afaf0c6e6c96d9404ac286695c21883c7 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* | Add QQuickMatrix4x4, a way to specify a matrix transform in QML.Erik Larsson2014-01-071-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Add QQuickMatrix4x4 which makes it possible to specify a 4x4 matrix tranformation directly in QML instead of decomposing the transformation into rotation, scale etc. It does NOT replace anything, just adds a new way of specifying a tranformation of an Item. Change-Id: I1b123778d1d458dfe4314cdb4f0fc99fd8a4c86a Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-066-11/+67
|\| | | | | | | Change-Id: If9a205bea219b9aca95d78b1e556ca9bbff58dd0
| * Fix property access to QQmlPropertyMap objects when addressed via idSimon Hausmann2014-01-021-2/+27
| | | | | | | | | | | | | | | | | | | | | | | | Property access to id objects is optimized at compile time, but we cannot do that for QQmlPropertyMap instances (or generally fully dynamic types). This issue was a regression against Qt 5.1 Task-number: QTBUG-35906 Change-Id: I759a1a899f6a3a1f6466282f455b289ad7451086 Reviewed-by: Albert Astals Cid <albert.astals@canonical.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * Fix lookups of enums in singletonsSimon Hausmann2014-01-024-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a regression against 5.2.0 (which didn't have this bug), due to optimizations introduced in the stable branch after the release. The code path for optimizing access to the members of C++ based singletons through the regular meta-object properties would end up excluding access to enums when the lookup happens at run-time. The run-time getter for the singleton itself would return a wrapped QObject instead of a QQmlTypeWrapper, and only the latter includes enums. As QML based singletons (composite singletons) cannot declare enums, we can continue to do fast lookups on these, but otherwise have to fall back to the slower code path. Task-number: QTBUG-35721 Change-Id: Icc66bdaf3572622cdb718f82b706e3204afa0167 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * V4: re-enable test cases disabled for QTBUG-34047Erik Verbruggen2014-01-021-9/+1
| | | | | | | | | | | | | | Task-number: QTBUG-34047 Change-Id: Idcce254f3594e1f7021705704dbe6a2330aa7e65 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Fix interaction of QQuickItems with the garbage collectorSimon Hausmann2014-01-062-0/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QObject ownership of QQuickItem objects is not accessible / mutable in QML, because the parent property maps to the (dynamic) visual parent. There are use-cases of creating QQuickItem objects without a QObject parent and to support this, the visual parent needs to mark its visual children in order to provide intuitive semantics. [ChangeLog][QtQuick][Import Behavior Changes] A QQuick Item is now strongly referenced by its visual parent item, so it doesn't require a QObject parent to stay alive. Task-number: QTBUG-35913 Change-Id: Ief2d40ac76298a0cf241ca73ff654c4ecfa12748 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Simon Hausmann2013-12-2414-31/+54
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-2414-31/+54
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/quick/items/qquickrectangle.cpp Change-Id: Ia40bc0f2f08b5be68e32eb1e1f118445d20e44fc
| | * Fix positioning of item when first cacheBuffer item is removed.Andrew den Exter2013-12-1914-31/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When items prior to the first visible item are removed from the instantiated items list the first item is moved forward by the size of the item removed so it position remains correct relative to the visible items. But if the removed item is the first instanitated item then it's size shouldn't contribute to the offset as the next instatiated item is already offset by its size. Task-number: QTBUG-33619 Change-Id: I05c33f505e2856afa08cd9cd89d8eae97c20679d Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | | Change C++ parameter type used for var parameters in QML declared signalsSimon Hausmann2013-12-243-3/+17
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | "signal someSignal(var foo)" mapped to foo being of type QVariant. Unfortunately that is a "lossy" type and it cannot represent all JavaScript values, including for example function closures (as reported in the JIRA bug). Instead we should use QJSValue. It is an important behavioural change because it affects the presumably rare case of somebody declaring a signal in QML with such a parameter and connect to it from C++ (or trying to emit it) - in that situation the code needs to be changed. Task-number: QTBUG-35171 Change-Id: I4fb4a18b407e4ea6c28a3a297fc6f76edb76d734 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-1634-62/+904
|\| | | | | | | | | | | | | | | | | Conflicts: src/quick/items/qquickitem.cpp src/quick/items/qquicktext.cpp tests/auto/quick/qquicklistview/tst_qquicklistview.cpp Change-Id: I0bc5786098193c2c40b6fd8905de75d90f6ed0cf
| * Fix touch to mouse synthesis/propagation.Robin Burchell2013-12-132-4/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | Having mouse events synthesised from both QtGui and internally in QtQuick is not a great way togo about things, especially when QtGui doesn't have the same degree of knowledge as QtQuick about the items in the scene. Thus, we now accept all events inside QtQuick to block QtGui synthesis, which should fix a significant amount of edge-case touch breakage/bad behavior. Change-Id: I14e1c87761c8f43160049b5e6f9da15b4e5edbb7 Done-with: Martin Jones <martin.jones@jollamobile.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-12-122-1/+9
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/qml/qml/qqmlcompiler.cpp Change-Id: I802731139d47c5b733dd805f7bf432d67d7331e1
| | * Fix a crash in JSON.parseLars Knoll2013-12-041-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Properly set members that are actually array indices and don't crash when trying to set those. Task-number: QTBUG-35383 Change-Id: I04d4b65c27e97a2e9db19541ed46ee1bb202f780 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
| | * Revert "Revert ffaf39e9a7f11d4e2800b3b37160a2a952795614"Alan Alpert2013-12-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 27052dcad9810869a9065da4c06e9f14379411d7. While the additional flexibility would be nice, I've been reminded that we already did commit to it back in July. Change-Id: Iaf990dda98ee46eb028b4737bdeeafd050d9513f Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
| * | Safeguard QQuickWindow::hide() against other GL contexts.Gunnar Sletta2013-12-123-1/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | If another GL context is bound to another surface on the GUI thread, we can run into issues while cleaning up the SG nodes. Task-number: QTBUG-34898 Change-Id: Ifa02b7cdbc7ab38b3a149a21452cc5071498a7d1 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| * | Stabilize TestAlan Alpert2013-12-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | A slight variance on this number is acceptable, it should be using extremelyFuzzyCompare like the rest of the checks on that property. Task-number: QTBUG-35470 Change-Id: I9114a3a5d3bbc3c63253320637f7af1e5f21a896 Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
| * | Fix regression in QML string list concatenationsSimon Hausmann2013-12-111-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | String lists and other QList property types (wrapped as QQmlSequence) should behave like arrays and have the Array prototype. Therefore it should be possible to pass them also as parameter to concat and they get composed correctly, i.e. the individual items get appended instead of the list being appened as one item. In the spec for concat this "special" casing should be applied if the "class internal property" is "Array", and concat appears to be the only place where this check is done. Therefore this patch adds another exception to match the expected behavior in QML and extends the "internal class is Array" meaning to QML list types. This is a regression from Qt <= 5.1.x Task-number: QTBUG-33149 Change-Id: Iab9522ac3c4ae6b746e790a99d87501b1cc1b655 Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | tst_qquickflickable: unskip rebound on OS XRobin Burchell2013-12-111-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Out of 200 runs on 10.9 + stable branch, I have 0 failures. Task-number: QTBUG-26696 Change-Id: I84de15b68dfff2cb5f141c5f2a783154db16b77e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
| * | Set highlight size for both dimensions, irrespective of ListView orientationRobin Burchell2013-12-112-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The assumption that all list delegates are the same size (dependent on ListView orientation) is not a correct one, even if it is correct most of the time. Task-number: QTBUG-31626 Change-Id: Iba6f3bc5f38d60e3be7632ab17d0c66ab8e73965 Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au> Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
| * | Stabilise and remove insignificant marker from tst_qquickflickable.Robin Burchell2013-12-112-11/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A lot of work has gone into this test already since a79839dc5287de1448d1fd858db312a7bfa7b581, such as 6ba7d88df623df5bce85bfdae853fc49006e76f2. Everything passes for me locally, so let's skip specific tests if they break (or better: fix them) instead of having no test coverage at all. Change-Id: I29a7aeb26b106955c442da26df486cb6ce4bc92a Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * | Fix up listening for layout direction changes.Robin Burchell2013-12-101-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the event type to ApplicationLayoutDirectionChange. LayoutDirectionChange is sent for QWidgets only at present, and was wrong anyway: each widget may have a different layoutDirection, but the application instance only has one -- tied to ApplicationLayoutDirectionChange. Relies on I2d2ac7dc07f11be5c7e501a3575b1d0978d8ac31 from qtbase to actually function. Task-number: QTBUG-21573 Change-Id: Ibee25927b2213ae9145d46556698f54d5129bd06 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
| * | Fix broken Maroon game / regression in PropertyChanges {} elementSimon Hausmann2013-12-104-0/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 0aadcf8077840068eb182269e9ed9c31ad12f45e that pre-compiles the expressions in PropertyChanges {} introduced a regression in where the evaluation context was incorrect and thus bindings would not be able to access the correct properties. For example PropertyChanges { target: someObject y: height / 2 } Here height should be looked up in the context of "someObject", not of the PropertyChanges element. This patch introduces an auto-test that verifies that the lookup context is correct and fixes the bug by disabling accelerated compile time property lookups for binding expressions that are requested from a custom parser. Change-Id: I5cb607d07211b453ddfc9928ccbf5f9ecec85575 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Fix crash in QQuickLoader when source component is garbage collectedSimon Hausmann2013-12-063-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It may happen that the QQuickLoader is the last entity left in the system holding a reference to the QQmlComponent *sourceComponent. We have to let the garbage collector know about that by keeping a persistent value for it. Task-number: QTBUG-35334 Change-Id: I715864440378fd9dd4f2d5ef8ff2f171c81ed7ef Reviewed-by: Lars Knoll <lars.knoll@digia.com>