aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QQuickTableView: don't rebuild table upon querying content sizeRichard Moe Gustavsen2018-09-114-57/+23
| | | | | | | | | | | | | | | | | | | | | | Overriding contentWidth/Height was done to be able to force build the table early if the app needed to know the size of the table already at Component.onCompleted (to e.g center the viewport on the center of the table). But now that we have a forceLayout() function, it's better to require that that function should be called before querying contentWidth/Height at this stage. By not building the table on the fly, we allow the application to bind expressions directly to contentWidth/Height, without being concerned about potential binding loops that can occur as a result of us rebuilding the whole table behind his back. The benefit of this overshadows the need to call forceLayout() explicit for some corner cases. Note that we still redefine the contentWidth/Height properties in TableView so that we can catch if the application sets an explicit contentWidth/Height (which is tested by checkExplicitContentWidthAndHeight()). Change-Id: Ic4499b3939af1cb3a543e4c006023d0d6f12fd3b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-09-115-7/+73
|\ | | | | | | Change-Id: Ieaf0811cf045af1e6df4db4ab67d7c38ba0d1fbf
| * Build: XmlListModel depends on qtConfig(qml-network)Liang Qi2018-09-101-0/+2
| | | | | | | | | | | | Task-number: QTBUG-70414 Change-Id: I90ca63304bfc20cc5eab113d26f02a5a2a5d76f3 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Merge remote-tracking branch 'origin/5.11.2' into 5.11Qt Forward Merge Bot2018-09-092-0/+64
| |\ | | | | | | | | | Change-Id: Ie270aa64bdac3339bfbb5974e526d50e66e001fd
| | * Add changes file for Qt 5.11.2Antti Kokko2018-08-291-0/+60
| | | | | | | | | | | | | | | | | | Change-Id: Iec1654a4ce34d17de5fd9267a680536b4f4848d5 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * Merge 5.11 into 5.11.2Frederik Gladhorn2018-08-272-5/+24
| | |\ | | | | | | | | | | | | Change-Id: I886fb173e156fb719d5e1d84cb1b0f3052a606b4
| | * | Doc: Fix broken linkPaul Wicking2018-08-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add missing external page reference to resolve link. Fixes: QTBUG-70130 Change-Id: I3af162c619ba88d425a7714fbf20f45f7b3213ab Task-number: QTBUG-70130 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| * | | examples: Fix LauncherList page components being hidden on window resizeTor Arne Vestbø2018-09-071-2/+0
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The binding for x to -width will take effect after the enter-transition finishes animating x from -page.width to 0, but will not update the x value for some reason, so the item stays at the correct position at the end of the transition, even if the binding is still active. Once the window is resized though, and the new window width gets propagated to the page component, the x-value will be re-evaluated and the page component ends up on -width again, hiding it. It doesn't look like the explicit property binding adds anything to the example, as the transition takes care of starting at -width, so by removing it we fix the issue. Change-Id: If0e693ae85fe3e0aa49f59832cbb1ba2804b7b6b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | Delete textures even if one of the windows is invisibleVaL Doroshchuk2018-08-271-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If there is an invisible window that will not be rendered but is constantly requested to render, updatePending is always set. This prevented purging of already unneeded textures, and meant endSync() was never called and m_texturesToDelete was never cleared. Added a fix to clear the updatePending flag regardless of visibility. Task-number: QTBUG-66116 Change-Id: Ib8bf453a3dee18d3d43342580c619664b701acae Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | Qml Preview: Record more detailed frame statisticsUlf Hermann2018-09-107-21/+158
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just the number of frames per second doesn't tell us the reason for any low frame rates. The problem could either be GPU-bound, and rendering could take very long, or the problem could be CPU-bound, with synchronizing or the gap between frames being very long. Reporting the rendering and synchronization times in more detail gives the client an idea of what is actually going on. Change-Id: Ib2840a9e1aa9b9738e967730c668769946659be2 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* | | Bump tests262 submodule to include .gitattributes fixJani Heikkinen2018-09-101-0/+0
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-70450 Change-Id: Iece912a4184f28290d7a40f3d83253efd81559d2 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | QQuickTableView: check if the focusObject is a actually a QQuickItemRichard Moe Gustavsen2018-09-101-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to do "static_cast<QQuickItem *>(window->focusObject());". But window->focusObject() returns a QObject, which doesn't have to be a QQuickItem. And in fact, during start-up, focusObject() will point to the window itself. The result is that we could sometimes get a crash because of this. This patch will change the implementation to use qobject_cast instead. Change-Id: Id5335a8efb4b2d400e308bf6c27158a406fc781e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Re-enable the software rendered when Qt is built without threadsSimon Hausmann2018-09-105-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts commit a7472867f407f1226d82aa7bce4cd4d6f9bd652f and merely excludes the threaded render loop of the software renderer. Task-number: QTBUG-70422 Change-Id: Id56a3fc12a3601cb3bce8be35e201d772988ae23 Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
* | | QQuickTableView: don't set contentX/Y to zero when building the tableRichard Moe Gustavsen2018-09-103-4/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't reset the content item to 0,0 when we do a rebuild of the table, since that will overwrite whatever the user has set to contentX/Y explicitly. Doing the latter can be handy if he needs to flick the table to a start position upon construction. If the user want's to move the content item back to origin when changing the model, he can instead do so manually. Change-Id: Ic7bc424312569e49115dea5037dd1109261a3aff Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickTableView: don't override margins API in TableViewRichard Moe Gustavsen2018-09-104-248/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Flickable has a margins API with the exact same naming as the margins API in TableView. This means that overriding those properties in TableView was an oversight, and a mistake. This patch will therefore remove the margins API from TableView. However, since the API already exists is in Flickable, the resulting API remains unchanged. But it will ease the TableView implementation a bit, since we can then remove code that takes margins into account (since Flickable does this automatically for us). The only real difference that will take effect from this change, is that any overlay or underlay items inside the flickable will need to have negative coordinates if you want to position them on top of the margins (e.g to create a header on top of the table). Change-Id: I43af66e49f5ddff90739a1c789aacb77ed18b4ce Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | make pointer operations more explicit when building string tableRolf Eike Beer2018-09-101-3/+4
| | | | | | | | | | | | | | | Change-Id: Iff8a45cecc63751f0daae5844f89cf452619d58d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Implement OwnPropertyKeys for TypedArrayLars Knoll2018-09-103-6/+33
| | | | | | | | | | | | | | | Change-Id: I85d6cfa4b4652863cfafad4810176d99dccdabc9 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Small correctness fix in Reflect.ownKeys()Lars Knoll2018-09-091-10/+13
| | | | | | | | | | | | | | | Change-Id: If4af20d25781c663f55cf9d6107a660f6540869d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix a small bug in virtualHasPropertyLars Knoll2018-09-092-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | It should call hasProperty() on the proto if the property wasn't found locally, instead of looping and calling getOwnProperty, as this leads to subtly differences with Proxy objects. Change-Id: I088b0522c621999b7991f9194f46eaa9f6e15206 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Include symbols in getOwnPropertyKeysLars Knoll2018-09-096-30/+51
| | | | | | | | | | | | | | | | | | | | | And fix getOwnPropertySymbols and getOwnPropertyDescriptors. Change-Id: Ie0e4c3d308ffe8a904e9a6ab9242b2cda59d779f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Proxy.revokable creates an object with an anonymous revoke functionLars Knoll2018-09-092-2/+2
| | | | | | | | | | | | | | | Change-Id: Iaed36da1284e6545a88eaa17d23fa2862fc611be Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix ownKey iteration over Proxy objectsLars Knoll2018-09-0926-40/+51
| | | | | | | | | | | | | | | Change-Id: I045a4844c06df9232cc8b04485ab0a39bb990e3f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix some bugs in Proxy::virtualGetOwnPropertyLars Knoll2018-09-083-5/+20
| | | | | | | | | | | | | | | Change-Id: I28c32f2bfdac8848baf82905fb04790f29451805 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix spec compliance of Object::virtualGet()Lars Knoll2018-09-083-45/+26
| | | | | | | | | | | | | | | Change-Id: I9c07a6b08e9029b893c28e7a945f839c0f0dda8d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Skip all realm related testsLars Knoll2018-09-082-105/+14
| | | | | | | | | | | | | | | | | | | | | | | | We don't support realms currently, and it's unclear whether we'll ever need the support. Change-Id: I023f84d477f374b3cef2590a78542c0c9408a144 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Implement IsCompatiblePropertyDescriptor and use it in ProxyLars Knoll2018-09-083-8/+42
| | | | | | | | | | | | | | | Change-Id: I40bc5ce2858ebfe1afb04a7957a53114b37ef50f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix toNumber conversions for hex, octal and binary stringsLars Knoll2018-09-082-6/+18
| | | | | | | | | | | | | | | Change-Id: Ifb7159a3307c96b27530e001ab13bcd6ddd03d09 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix test failures in NumberLars Knoll2018-09-082-23/+28
| | | | | | | | | | | | | | | Change-Id: I0743e9d7fdda0be7a8bb4f9fe3b8e195722c1c90 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix compression of jump instructions with an type >= 256Lars Knoll2018-09-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Those instructions are encoded with a two byte instruction id that needs to be read correctly to figure out whether it's a wide or narrow instruction. Change-Id: I769d1a2d121f9f372105fa94771785d517694855 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | avoid duplicate offset calculations when building string tableRolf Eike Beer2018-09-071-3/+3
| | | | | | | | | | | | | | | Change-Id: I5bfc46b9d9cdc3bde35f60de75cb8e9e51b0b0ec Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | QML Preview: fix a possible crashTim Jenssen2018-09-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Use the preview together with 3d runtime crashes at calling m_currentWindow->framePosition. Change-Id: I582f1bc5e17b24020a95f955752f0ada376289bf Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | | Fix compile error with gcc7 in developer mode by defining FALLTHROUGHDavid Faure2018-09-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | qtdeclarative/src/3rdparty/masm/yarr/YarrParser.h:355:24: error: this statement may fall through [-Werror=implicit-fallthrough=] FALLTHROUGH; Change-Id: I08321d30d54e192bcd3957a3fc7bf634220e9914 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix a corner case in Math.max()Lars Knoll2018-09-072-2/+3
| | | | | | | | | | | | | | | Change-Id: I9dffaec95b01757fb21466617d055def2edeeb30 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix Date.Utc()Lars Knoll2018-09-072-22/+43
| | | | | | | | | | | | | | | Change-Id: Iefba82adbf8f7b944079d165054e9dfe4461ac77 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | QQuickTableView: remove focus for the delegate item itself, not only for the ↵Richard Moe Gustavsen2018-09-073-12/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | child "isAncestorOf" will not include itself as an ancestor. So we need to check if the delegate item has focus as well, since we also want to remove focus for that case. This can e.g happen if the delegate is a TextInput directly. Change-Id: I5a5f5a7ec262eacdac64d72b0f41bca991dbab73 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Use the correct enum value instead of hard coded intsLars Knoll2018-09-072-5/+5
| | | | | | | | | | | | | | | Change-Id: I2d65fe6fb3d9f299f5aeff1542c7dc1d2db8b012 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Get rid of unused variableLars Knoll2018-09-071-1/+0
| | | | | | | | | | | | | | | Change-Id: I71bcf32d513c9c06e43816ba0797865e3e3a1ac5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Don't evaluate the switch expression inside the switch blockLars Knoll2018-09-072-4/+2
| | | | | | | | | | | | | | | Change-Id: I6cbe0610b65c9f9d7381bc1c70ae17e10486d5c3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix a smaller bug in IteratorCloseLars Knoll2018-09-072-14/+20
| | | | | | | | | | | | | | | | | | | | | Throw the correct error in all cases Change-Id: Ic8f146cf13db605cb54cb8c96aaf0b3a1b9cca96 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Add support for yield*Lars Knoll2018-09-0714-56/+181
| | | | | | | | | | | | | | | Change-Id: I5b054b59519ed825459a5b0b0a7cd2c6fc8a3797 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Throw a type error when trying to destructure null or undefinedLars Knoll2018-09-0710-4/+38
| | | | | | | | | | | | | | | Change-Id: Id1bba1a729124bccb8a90dcf40252fe5c69d27a3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix exception handling while destructuringLars Knoll2018-09-079-86/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an exception happens during destructuring, IteratorClose needs to be called, unless the exception happened inside the IteratorNext call (in that case the iterator is assumed to be invalid and we shouldn't call close on it). Implement this, by ensuring that we set the done return variable of IteratorNext to true whenever IteratorNext throws an exception. IteratorClose will check the done state and not do anything in that case. Change-Id: I73a27f855f2c4d3134b8cc8980e64bf797d03886 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Some fixes when unwinding inside for-of loopsLars Knoll2018-09-073-33/+30
| | | | | | | | | | | | | | | | | | | | | | | | This is not perfect yet, as the two regressions in TestExpectations show, but it's an improvement over the current situation. Change-Id: I82c0ef0f69619562037c573bea1026abc53c1ab3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Fix new.target access from eval()Lars Knoll2018-09-076-10/+56
| | | | | | | | | | | | | | | Change-Id: I1855eb303225d1784b019f8eebab0ad8bf2cdf5e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | QQuickTableView: don't layout an extra time at start-upRichard Moe Gustavsen2018-09-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | We need to clear the columnRowPositionsInvalid flag during a rebuild, otherwise it will get processed later, resulting in an unnecessary extra layout at startup. Change-Id: I04d594c1b762e46b5b672113008b2bd67bf602d4 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Doc: add Qt.labs.qmlmodels moduleMitch Curtis2018-09-061-0/+13
| | | | | | | | | | | | | | | | | | Change-Id: Ic79f2e16c7b9a8c156cffd69f156e43bf565320d Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* | | Update plugins.qmltypesKai Koehne2018-09-0622-35/+501
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | by running cd qtdeclarative/imports; for path in `find . -name Makefile -print`; do pushd `dirname $path`; make qmltypes; popd; done in the build directory. Local file paths in the command line were then edited out by hand. Task-number: QTBUG-70264 Change-Id: I931604aff6a779915708395e8b8dbdf659cbd637 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | QQuickTableView: clear focus when delegate item with focus is flicked outRichard Moe Gustavsen2018-09-063-6/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | If we flick out a cell that has keyboard focus, we should clear that focus. Otherwise, the item will be focused also when it is later reused. Change-Id: I0fb79b6d906c1907a352de4ec52e3b488064b55a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQmlTableInstanceModel: don't fall back to use DelegateChooser as delegateRichard Moe Gustavsen2018-09-063-4/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the application uses a DelegateChooser, but the chooser fails to resolve a delegate for a certain index, it should not use itself as the delegate instead. This will cause the application to crash. Instead, we just print a warning, and return nullptr, which will let TableView handle the situation gracefully. Change-Id: Ibaf9da09fd11149362f5b674fc61db47593de10c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | qmlplugindump: Remove path for -dependencies argumentKai Koehne2018-09-061-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not print the full path passed to -dependencies in the file header. This avoids local paths to show up in the plugin.qmltypes file, and therefore in the Qt checkout. Task-number: QTBUG-70264 Change-Id: I7870d7d4e30e57684c62f4e353a6bf6d72dc5faf Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>