aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Workaround for crashes in QtQml code relating to null this pointersv5.6.1Thiago Macieira2016-05-201-0/+5
| | | | | | | | | | | | When compiled in release mode with GCC 6, QtQml crashes. This option gets works around the issue by instructing the compiler not to delete null pointer checks for pointers that the standard says cannot be null, yet apparently are. This is a temporary workaround until a proper solution is found. Change-Id: Id3aab65533904562a6cbfffd14501a185fc91179 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Fix links in changelogSimon Hausmann2016-05-191-2/+2
| | | | | | | Use https and qt.io links. Change-Id: I089098317e38b52484a23bdfad128ef47eec8a21 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Fix crashes when incubating objects asynchronously with initial propertiesSimon Hausmann2016-05-189-10/+99
| | | | | | | | | | | | This is a regression from commit 94e337fa95425d259e81b4d21f4d0853108553bd where we accidentally ended up not having a calling QML context set anymore when initializing the properties on newly incubated objects as provided by the caller. The QML context is necessary as for example when we set a URL property, the URL can be relative and it will be resolved to the base url of the context when written, such as in in QQmlPropertyPrivate::write. Change-Id: I1d896381fc92f653a7d76f4d82174bca48828f5e Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Added changelog for 5.6.1Simon Hausmann2016-05-161-0/+53
| | | | | Change-Id: I272452ccc5f6154927b153d033683a0bf07e06c8 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* QML: Fix asynchronous cached loading.Erik Verbruggen2016-05-131-1/+1
| | | | | | | | | | When calling CachedLoader::loadAsync, queue the load on the QML thread instead of asking the thread to load it synchronously. The problem showed when a QML file triggered a plugin load, that would ask the engine to create a component while initializing that plugin. Change-Id: I3714ef285e432eb1aa294c4fd0208ba188d97ee9 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Doc: Remove repository name from examplesinstallpathTopi Reinio2016-05-132-2/+2
| | | | | | | | Examples in binary packages now directly match the install path. Change-Id: I8cbef85c8bef840d6ff87ac308e2e82a835adcc7 Task-number: QTBUG-52953 Reviewed-by: Antti Kokko <antti.kokko@qt.io>
* blacklist the qmlextensionplugins example for testingOswald Buddenhagen2016-05-131-0/+1
| | | | | | | | | it requires a special import search path. it would be possible to hack this into the test launcher, but that doesn't seem worth it (there are other plugin examples already). Change-Id: I147b802c690933803cb8f9cf35210618957a6998 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* remove blacklisting of tiger and fonts examplesOswald Buddenhagen2016-05-131-2/+0
| | | | | | | the associated bugs are marked as fixed for a long time. Change-Id: If8c8710bdf4b7b1962c9749b701cbd335d938fdb Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* adjust example naming convention test to "new" structureOswald Buddenhagen2016-05-131-5/+4
| | | | | Change-Id: I42ec26bd3c2ffa32ae8c5323f7c0a0343d12ce2f Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* actually build the 'graph' exampleOswald Buddenhagen2016-05-131-0/+1
| | | | | Change-Id: I297e302b4672bcd05543b88d7da9318ae81a00b4 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* actually build the textureprovider exampleOswald Buddenhagen2016-05-131-0/+1
| | | | | Change-Id: Idef70d65e6871fa995e680565424056c4caf4411 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* actually build and install the qml tutorialsOswald Buddenhagen2016-05-138-3/+15
| | | | | | Change-Id: Idf81981140e210b29239e91ff5b6b7c40e2f36de Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* fix example installsOswald Buddenhagen2016-05-1310-1/+24
| | | | | Change-Id: Ie6a219392a48fd6b1a32037cc215dc20d408e819 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* make use of COPIESOswald Buddenhagen2016-05-137-38/+19
| | | | | Change-Id: I479c9523a89be1d64364e8205daa5860e16882cc Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* move builtins.qmltypes to an own subdirOswald Buddenhagen2016-05-133-32/+33
| | | | | | | | | | | | shadowing doesn't actually work from within a subdirs project, so we need to put it into a separate aux project. it would be possible to put the project file in the same directory, but then a simple "make qmltypes" wouldn't work due to the different Makefile name. Change-Id: Ib90914e4ea5d75f7199399c7e2825690774081c5 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Merge 5.6 into 5.6.1Oswald Buddenhagen2016-05-1211-119/+62
|\ | | | | | | Change-Id: If83c0d59fccf0620446a5da8d271a5037c9be106
| * Remove workaround for the pointer size in bootstrapped tool buildsThiago Macieira2016-05-111-5/+1
| | | | | | | | | | | | | | | | | | The pointer size is now correctly set in qprocessordetection.h even for bootstrapped builds. Change-Id: I7e6338336dd6468ead24ffff1410d4ba8b1cbdad Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
| * V4: Limit call depth by count, not by checking the native stack.Erik Verbruggen2016-05-112-106/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Getting the native stack size can be really expensive. For example, on Linux/x86_64 (Ubuntu 15.04), it is at least 200,000 instructions for a single-threaded application. With more threads (like qmlscene) it typically ends up around 1M(!) instructions. Worse, it is called twice in the ExecutionEngine constructor. So, now we limit the depth of JavaScript calls to a fixed number, 1234 by default. This can be changed by setting the environment variable QV4_MAX_CALL_DEPTH to the desired depth. Change-Id: Ic13c8efb2769e64fbc73deee6f6fa39d7c0b7af5 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * Fix warning about mixing basic font type's pointSize and pixelSizeMitch Curtis2016-05-111-3/+4
| | | | | | | | | | | | | | | | | | | | We didn't properly read the font property of TextFieldStyle (which is declared in QML) before writing the pointSize property (see bug report), so it was using the value of a previous assignment. Change-Id: I7746c258d1f3a6e031583da7f007bd0dc4087082 Task-number: QTBUG-52920 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * Flickable: start movementEndingTimer consistently only on OSXShawn Rutledge2016-05-111-4/+4
| | | | | | | | | | | | | | | | | | | | Amends 1929fee8e17e9ca66e7fe08faa9ed9fa7fdbb127 to prevent extra bounce at the ends. Task-number: QTBUG-47697 Task-number: QTBUG-53177 Change-Id: I23e63d8e0555e1503ff028ad2f0767b05ef39432 Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
| * QML: add librarymetrics_performance to the builds.Erik Verbruggen2016-05-103-1/+4
| | | | | | | | | | | | | | | | Also make sure that we can easily deploy this test to devices by putting all data inside a qrc file. Change-Id: I175830fde51332b13068b163eba3d68c0535b712 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * Make it possible to call some benchmark functions directlySimon Hausmann2016-05-091-0/+6
| | | | | | | | | | | | | | | | | | | | Some benchmarks - such as "elements" - rely on QQmlMetaType::qmlTypeNames(), which is implicitly populated when other benchmarks import for example QtQuick. However when calling them directly, the benchmark data set is much smaller. Therefore let's add QtQuick to the "base" set that is always available. Change-Id: I4b3696a426854195deb1c31ad24d80427da7b340 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * QAccessibleQuickItem: Implement QAccessibleInterface::window().Friedemann Kleint2016-05-062-0/+7
| | | | | | | | | | | | | | | | | | The window is required to be able to determine the correct scale factor for the screen when High DPI scaling is active. Task-number: QTBUG-52943 Change-Id: If74914659bd64395db23ccfc752ee35e8d43592f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* | QmlDebug: Drop explicit Q_IMPORT_PLUGIN statementsUlf Hermann2016-05-093-16/+0
| | | | | | | | | | | | | | | | | | | | qmake is clever enough to include the plugins without this. Furthermore, the explicit imports duplicate the plugins in static builds and they lead to cross linking from QtQml to QtQuick. Task-number: QTBUG-50306 Change-Id: I822e000481f583f513b863f54f65eb8ff772c0c3 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Revert parts of 392c7b99348e2a96ef11adb5712095fbd13fb780Simon Hausmann2016-05-091-1/+1
|/ | | | | | | | | | | | | | Revert the plugin loading check for Qt 5.6.x. It turns out that making this check strict broke multiple static plugin builds beyond the qtdeclarative repository. Let's not cause unnecessary breakage in a patch release of Qt to fix a bug that has existed for much longer. I'll revert this change in the dev branch for Qt 5.8, together with an entry in the change log to inform the developers that a behavioral change in their code is necessary (the use of the interface id variable). Change-Id: I3c658433eaa125ac0d272806e3bbbf016cf6d3cb Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* QQuickItem: force clear subFocusItem from ancestorsJ-P Nurmi2016-05-041-1/+1
| | | | | | | | | Make sure ancestor items don't end up with dangling subFocusItem pointers. Change-Id: I79015abe8215b807b02577c25de58c44bfc70f9e Task-number: QTBUG-51080 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Revert "Temporarily blacklist importsPath change on Windows"Simon Hausmann2016-05-021-2/+0
| | | | | | | | | | This reverts commit 91a96d1de9c3d3f8d598ee8fbcf2d1868635ec46. I've been told that the race condition in the networking stack has been fixed on Windows. Change-Id: Ica038229e8e164a199332288ed140ca6a1d3104c Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* AnimatedImage: Fix value of sourceSize propertyTobias Koenig2016-05-023-10/+40
| | | | | | | | | | Cache the source size of the internal QMovie object during the change of the 'source' property to ensure that always a valid source size is returned without emitting more sourceSizeChanged() signals than necessary. Change-Id: I637b80efb133197b7345b09fcf8a7bb80c5643c9 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Fix crash when trying to call a property of the scope or context objectSimon Hausmann2016-05-013-3/+27
| | | | | | | | | | For calls on properties of the scope or context object the thisObject parameter in the callData is a reference to the QmlContext, not a real object - therefore the toString conversion fails. Task-number: QTBUG-52340 Change-Id: I08d01cc5c05920c2fac46ddd40fa41e630bcade3 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Fix EnterKey::type docsJ-P Nurmi2016-04-291-1/+1
| | | | | | | It's an attached property, not an ordinary property. Change-Id: I08123670953288b21daca8bd56129c1e14e36365 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Add version tag to QQmlExtensionInterface_iidJoni Poikelin2016-04-291-1/+1
| | | | | | | | | | | | Commit 392c7b99348e2a96ef11adb5712095fbd13fb780 introduced version checking that checks QML extension plugin interface version name. Unfortunately many plugins inside and outside qtdeclarative already defined the string with interface version, leading to plugin not being loaded. Task-number: QTBUG-53090 Change-Id: I792df4ba06753bc21eab4adcd6f2068543d02368 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Doc: Document Window.contentItem QML propertyTopi Reinio2016-04-281-0/+6
| | | | | | | Change-Id: I6914919675e8787312824ac958e3ea3fb6dc5264 Task-number: QTBUG-53045 Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* Make some of the shader manager privateUlf Hermann2016-04-281-2/+4
| | | | | | | | | There is no need for other classes to directly access the shader cache, and if we ever want a way to invalidate pieces of it, we better prevent such access. Change-Id: I79949b375854445c46b9d8bf6072bb53030b8dac Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Revert "Avoid rebuiding batches during a material animation"Gunnar Sletta2016-04-271-6/+4
| | | | | | | | | | | | | This reverts commit 26a230ee0ed68d39d4d13bfeaafd9839ee2a2a00. This optimization breaks when we have a single material change in the scene within a batch as the geometry node does not get visited on the next render. Task-number: QTBUG-52983 Change-Id: Ib385407a9fc35ca03ab18727d1e7b550431416f1 Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Jocelyn Turcotte (Woboq GmbH) <jturcotte@woboq.com>
* QQuickDragAttached: fix updating of "active" propertyAlberto Mardegan2016-04-262-5/+52
| | | | | | | | | The d->active member variable should be changed regardless of the value of Drag.dragType. Task-number: QTBUG-52540 Change-Id: I7fa39ccf11b1200e9c2f6fe57cba58657b6cff74 Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* V4: 'Cache' enumeration end instead of calling a method.Erik Verbruggen2016-04-221-2/+2
| | | | | | | | Saves ~2600 instructions on Linux/x86_64 for a normal instantiation of QV4::Heap::QtObject. Change-Id: I20c9311a96fd76911536153ddd1605500c6ac451 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Fix compilation with Visual Studio 2015 Update 2 (static build)Kai Koehne2016-04-222-0/+10
| | | | | | | | | | | | | | | | | | | | | | Fix linker errors: Qt5Qml.lib(qv4value.obj) : error LNK2005: _nextafter already defined in libucrt.lib(nextafter.obj) Qt5Qml.lib(qv4dateobject.obj) : error LNK2005: _nextafter already defined in libucrt.lib(nextafter.obj) Qt5Qml.lib(qv4runtime.obj) : error LNK2005: _nextafter already defined in libucrt.lib(nextafter.obj) Qt5Qml.lib(qv4globalobject.obj) : error LNK2005: _nextafter already defined in libucrt.lib(nextafter.obj) Qt5Qml.lib(qv4jsonobject.obj) : error LNK2005: _nextafter already defined in libucrt.lib(nextafter.obj) All the defined functions where added in Visual Studio 2013: https://blogs.msdn.microsoft.com/vcblog/2013/07/19/c99-library-support-in-visual-studio-2013/ Change-Id: Ied924b6c93c6b2f81f2793237c9370a70bd6a60c Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
* QML: Access QQuickItemPrivate data (like x/y/etc) directly.Erik Verbruggen2016-04-212-68/+136
| | | | | | | This saves ~5% in QQuickAnchorsPrivate::itemGeometryChanged on x86_64. Change-Id: Iccf782521e9c8523c41c6f2e6d87fad401762a9e Reviewed-by: Michael Brasser <michael.brasser@live.com>
* QML: Remove baselineOffsetValid flag from QQuickItem.Erik Verbruggen2016-04-202-11/+4
| | | | | | | | | This flag was only used to return 0.0 when false, and baselineOffset when true. So initializing the baselineOffset to 0.0 does the same thing. Change-Id: Ia92b05761ea3a03175ae0078bf950a1b4da2d356 Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
* Also match QJSValue conversion types in MatchScore.Michael Bruning2016-04-203-0/+16
| | | | | | | | | | | | | | | This had the effect that overloaded methods were always mapped to the wrong slot. [ChangeLog][QtQml][Important Behavior Changes] When matching the method signature of a invokable method to the slot in the metaobject, the matching function now assigns the best match to a QJSValue if the parameter actually is a QJSValue. This corrects the previous behavior, where QJSValue and int were given the same match score even though QJSValue would have been the best match. Task-number: QTBUG-51746 Change-Id: I906e7b006ee5af92ea760ed1625e5047aef123bf Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Revert "Fixed MouseArea threshold with preventStealing"Michal Klocek2016-04-203-25/+8
| | | | | | | | | | | This reverts commit e1400b5b4d8311769ad3b9f631479ee2b0271197, which breaks qtlocation unit tests for drag support. It is no longer possible to drag markers in mapviewer. Task-number: QTBUG-52534 Change-Id: If713a8e45f64ea898f38fe3e39561ebc266403b2 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com> Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
* Drop the class name from shader effect material keysUlf Hermann2016-04-204-7/+1
| | | | | | | | | | Shader effects with equal program source code can use the same compiled shaders. There is no need to duplicate the data for each QML component. Task-number: QTBUG-42055 Change-Id: Iae86890ebf0ad6ef34a63565b8a01d0fcd903fbc Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Allow more control over memory/speed tradeoff in the atlas.Michael Brasser2016-04-192-1/+12
| | | | | | | | | | | | | | QSG_ATLAS_TRANSIENT_IMAGE_THRESHOLD can be used to define a threshold for retaining the QImage associated with an atlas texture. This gives more control to the developer on platforms where removing a texture from the atlas (e.g. for use in a ShaderEffect) can be prohibitively expensive. Change-Id: I13fd01ebbe94dd960fdcb3ee20b4ff40dcc5694f Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Robin Burchell <robin.burchell@viroteck.net> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Fixed MouseArea threshold with preventStealingFilippo Cucchetto2016-04-193-8/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | When preventStealing is true both keepMouseGrab() and d->stealMouse are true. This in turn enable the dragging immediately since the condition "keepMouseGrab() && d->stealMouse && !d->drag->active()" is true. Conversely when preventStealing is false the dragging is enabled in the next move event since keepMouseGrab() and d->stealMouse are set true inside the last "if" "!keepMouseGrab() && ...check threshold..". This patch adds a new boolean flag for storing if we detected a drag motion (so we exceeded the threshold) and enable the dragging iff this flag is true. With this change: - if preventStealing is true (and so keepMouseGrab() and d->stealMouse) the additional d->overThresHold prevent the start of dragging. At the same time the last if (!keepMouseGrab()) cannot be executed since keepMouseGrab is true and we still check for the threshold being exceeded. - if preventStealing is false, we still check for exceeding the threshold and if this happen we enter in the last "if" since !keepMousegrab() && d->overThreshold is true taking the mouseGrab as without this patch Task-number: QTBUG-52534 Change-Id: I2b14d3048b6f8223c90ce5e2fd26e7ca706cb56a Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Robin Burchell <robin.burchell@viroteck.net> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* Make sure QQuickPathPercent::value is initializedAleix Pol2016-04-191-1/+1
| | | | | Change-Id: I2704b417085a7956e73daed191011af594703aa9 Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* Initialize qmlEngine in QQuickItemGrabResultPrivateAndy Shaw2016-04-191-0/+1
| | | | | | Task-number: QTBUG-51878 Change-Id: If2d28bf641ed4bbd74b2d4f51f0821e93b0aa238 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* activate QtQuick designer support testsTim Jenssen2016-04-191-0/+1
| | | | | Change-Id: I5540eda05e6e4d7ab01c85b1da32e8677a9c332d Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Occasionally trim the type cacheUlf Hermann2016-04-194-1/+59
| | | | | | | | | | | | As loaded components are kept in a cache, they are never removed by the garbage collector. So, if you periodically create new components, they leak. This change adds a floating threshold for the number of components. When that threshold is surpassed trimCache() is called and unneeded components are removed. Task-number: QTBUG-42055 Change-Id: I30e3e4ee287f6d34376713668009c67614a50e0c Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* QQmlDesignerMetaObject: Fixing reference countingThomas Hartmann2016-04-181-7/+10
| | | | | | | | | | | | | | We have to overwrite the cache of QQmlInterceptorMetaObject, but we messed up the reference counting. The same applies for QQmlData. When overwriting the old cache we have to call release on the old cache and increase the reference count on the new cache, because it is released in the destructors of QmlData and QQmlInterceptorMetaObject. Change-Id: Iecdbe8d474092906344d4e5a74278f5d8120b5ef Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* QML extensions tutorial: Add import plugin to app. bundle on OS XTopi Reinio2016-04-163-12/+35
| | | | | | | | | | | The application in chapter 6 of this tutorial failed to import the custom extension plugin on OS X, as it could not see it's import path outside the application bundle. Change-Id: Icdca1f0553020e0460e4efabc5461a3447b32086 Task-number: QTBUG-47003 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>