aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Particles: add missing 'override'Anton Kudryavtsev2016-10-102-4/+4
| | | | | | | ... and drop redundant 'virtual' Change-Id: Id70a0b74724d231bae9b3803fcfe0514adb9f642 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlDelegateModel: proper construction of vectorAnton Kudryavtsev2016-10-101-5/+5
| | | | | | | | | ... with known size and known value by corresponding ctor. Don't use appending for this case. Change-Id: Iee11d305a096e1f81371b31ce472dbea9fac93e2 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* LocalStorage plugin: fix warning with debug buildAnton Kudryavtsev2016-10-101-1/+1
| | | | | Change-Id: I549a39f72bcd837872c0d5e9a6ab3c15cea01658 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Qml: add missing 'override'Anton Kudryavtsev2016-10-0723-131/+135
| | | | | | | ... and drop redundant 'virtual' Change-Id: Ib1f68c1ebd0468cb4a77eecc986bbf718f6bf789 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Quick: add missing 'override'Anton Kudryavtsev2016-10-079-39/+39
| | | | | | | ... and drop redundant 'virtual' Change-Id: Ifb887b149226769d3168f349ddccf0ee1d51bb1c Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Qml types: replace 'foreach' with 'range for'Anton Kudryavtsev2016-10-075-10/+12
| | | | | | | Not all, just instances with low risk. Change-Id: I30612a1debd83dfa01aa087799658cff254bc9fc Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QQmlProfilerService: reduce allocationsAnton Kudryavtsev2016-10-071-7/+18
| | | | | | | Use QHash::equal_range() instead of QHash::values() Change-Id: Iac84fdb12ca3f638bb23e966d822c58db602b63e Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QQEventPoint debug operator: show pointId in hexShawn Rutledge2016-10-071-1/+1
| | | | | | | | Now that pointIds contain a bit-shifted device ID, it's easier to see the structure in hex. Change-Id: Ib2846ce0997ecbf01d6645466f33adcbec1c9b51 Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
* QQuickDirection: drop const from sample() result typeAnton Kudryavtsev2016-10-0610-10/+10
| | | | | | | ... and add missing 'override' Change-Id: I00f04118fa5711a580d6d2b861b6dbda8df7a19d Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlListModel: proper construction of vectorAnton Kudryavtsev2016-10-061-35/+14
| | | | | | | | | ... with known size and known value by corresponding ctor. Don't use appending for this case. Change-Id: I614ba21182d8876c28fb5c8e3774e4b159bfb9f8 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Particles: add missing 'override'Anton Kudryavtsev2016-10-0622-44/+50
| | | | | | | ... and drop redundant 'virtual' Change-Id: Ie15cfd2358fde604029150a1097b19cc8d514551 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Imports: add missing 'override'Anton Kudryavtsev2016-10-0610-29/+29
| | | | | | | ... and drop redundant 'virtual' Change-Id: I13246ff07a219d41c9e0fd11fbc6a0b00109912a Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Plugins: add missing 'override'Anton Kudryavtsev2016-10-062-20/+20
| | | | | | | ... and drop redundant 'virtual' Change-Id: Ifa12539dd40be600158f92f04fac56626527ef77 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Qml: add missing 'override'Anton Kudryavtsev2016-10-0614-343/+343
| | | | | | | ... and drop redundant 'virtual' Change-Id: I8c0d589557f590eb528e80414d9c002504ccb12a Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QQuickContext2DCommandBuffer: mark makePen() method as staticAnton Kudryavtsev2016-10-061-1/+1
| | | | | | | This method does not use members. Change-Id: Ie895b6949f2b284b8ae86ed3fe6cb4ee47404f86 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Mark some methods as constAnton Kudryavtsev2016-10-0621-29/+29
| | | | | | | These methods do not modify objects. Change-Id: I4909f382cc19c5ce6f07e0421fef68a63cfe518f Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QQuickItemView: Extract Method fxViewItemAtPosition()Anton Kudryavtsev2016-10-041-13/+12
| | | | | | | | ... and reuse it in itemAt() and indexAt() Change-Id: I3e4682685227aa7c60d004152dffbc0ccaab6195 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Remove a statement from the documentation that is now false.Jake Petroules2016-10-041-1/+1
| | | | | | | Change-Id: Iccee5621ab1ed436d7c07093fd7ad91857a4075b Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-10-0149-195/+481
|\ | | | | | | | | | | | | Conflicts: src/qml/jsruntime/qv4qobjectwrapper.cpp Change-Id: I1a125b2334532ec5de4af39c0d6628890f4d0587
| * Add some notes to mouse and touch ungrab docsFrederik Gladhorn2016-10-011-0/+15
| | | | | | | | | | Change-Id: Ifb58158cd8b9662b35fab6781a7844ce44ca546d Reviewed-by: Paolo Angelelli <paolo.angelelli@theqtcompany.com>
| * QML: Make all context objects trivialErik Verbruggen2016-09-3018-78/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change also adds a check to the d() calls for Managed, verifies that the object has been initialized. This is only done for debug builds. To prevent other code from tripping the check, a number of other classes are either marked as trivial, or do initialization in the constructors. Because of template function changes in them memory manager (those now call init() instead of in-place new), String has an extra parameter to force it to temporarily use an old/unmodified template function. Change-Id: I8c35161ce7680835d830638b6d21498c5129b02b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Do not crash in debug operator<< when QQuickPointerDevice is nullptrFrederik Gladhorn2016-09-291-0/+4
| | | | | | | | | | Change-Id: I89f5189ab2e73dcd1525abfda41bd7c637e3bf53 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * winrt: Fix crash on ARM in release modeMaurice Kalinowski2016-09-281-0/+6
| | | | | | | | | | | | | | | | | | | | The compiler seems to mis-optimize the switch/case statements causing a QString construction to end up in handling a QUrl and behaving unpredictable from there (crashes for some example). Change-Id: Idd2b6b64f1f41d0aa9204dd73dfdf7f5d0541798 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * QML: Make QV4::Heap::Pointer trivialErik Verbruggen2016-09-287-27/+26
| | | | | | | | | | | | | | One more step needed to make QV4::Heap::structs trivial. Change-Id: I6bebfaff970518d65a09f2b9f50a6855c431d4c0 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Don't crash when delivering stationary touchpoint as mouse releaseShawn Rutledge2016-09-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickPointerTouchEvent::touchEventForItem() can return a nullptr so we have to check for that wherever we use it. In this crash scenario while doing some kind of touch gesture it gets delivered as a synth mouse event to a custom item. When you release the last finger (or release multiple fingers simultaneously), touchEventForItem() returns nullptr because the fingers were no longer moving before the release, and QQuickWindowPrivate::deliverTouchAsMouse() didn't check for that. Task-number: QTBUG-56090 Change-Id: I7ada1f82711296722226fdc06d9c5add2422335b Reviewed-by: Paolo Angelelli <paolo.angelelli@theqtcompany.com> Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
| * QML: Replace QPointer with a QQmlQPointer (which is trivial)Erik Verbruggen2016-09-2712-52/+135
| | | | | | | | | | | | | | One of the steps needed to make QV4::Heap::structs trivial. Change-Id: Ic4d73f15035af21c8a682aaad1ee68cdd91f8e7d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Remove unused notifier for parent accessorSimon Hausmann2016-09-272-3/+0
| | | | | | | | | | | | | | | | After the removal of the property accessors this notifier is not used anymore. Change-Id: I63f984cada529231cc735a4001fa593c7a81d3cd Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * QML: Replace a QVector with a plain old C-style arrayErik Verbruggen2016-09-222-14/+26
| | | | | | | | | | | | | | | | One of the steps needed to make QV4::Heap::structs trivial. It also makes QMetaObjectWrapper memcpy-able. Change-Id: I1a1b2e5a3fdb87ac4d2b5ace5af3aac54a63d9ed Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Merge "Merge remote-tracking branch 'origin/5.7' into 5.8" into refs/staging/5.8Liang Qi2016-09-2114-24/+147
| |\
| | * Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-09-2114-24/+147
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/qml/qqmltypeloader.cpp Change-Id: I07647700fc86764c95a5ef95c568e700a70fe45f
| | | * Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-169-12/+47
| | | |\ | | | | | | | | | | | | | | | Change-Id: Ib45654e3e79087da4754377f0d78b70c44ed4695
| | | | * Merge remote-tracking branch 'origin/5.6.2' into 5.6Liang Qi2016-09-162-2/+6
| | | | |\ | | | | | | | | | | | | | | | | | | Change-Id: I410c2bd25a1bddc0e395316d62791437684b8942
| | | | | * Correctly update the geometry of QSGDefaultPainterNodev5.6.2Yoann Lopes2016-09-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using a FBO, the source rect should be the painted part (m_textureSize) of the FBO. Also, the texture size is now correctly set when using an Image render target. Task-number: QTBUG-52054 Change-Id: If5d7a9c0b02f16f5d4be2cdf8c3c4cb15cb0583e Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | | | | * QtQml: Disable new optimizer of MSVC2015/Update 3Friedemann Kleint2016-09-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add compiler option -d2SSAOptimizer- for this version of the compiler since it causes crashes. Task-number: QTBUG-55238 Change-Id: I9b38c669ad25f519150dd352b402dec982dc5555 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | | * | Propagate window enter event as hover enter event in QQuickWindowEike Hein2016-09-151-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickWindow currently propagates window leave events as hover leave events to its content item, but it does not propagate window enter events as corresponding hover enter events. Instead, hover enter is only triggered implicitly by mouse moves. This can cause problems when there is no mouse movement inbetween the window being entered and a subsequent button press event. A common example where this occurs is dismissing a mouse-grabbing popup window (e.g. a QMenu) by clicking outside the popup, and then clicking in the same spot that was clicked to dismiss the popup. Without this patch, hover state is not realized until movement occurs, so there may be no no visual feedback and code that needs to update state based on what is being hovered prior to handling a press event can't work correctly. This patch synthesizes a QHoverEvent and delivers it in response to QEvent::Enter, similar to how QEvent::Leave is already handled. QWidget handles this correctly via QWidget::enterEvent. The equivalent in Qt Quick is QQuickItem::hoverEnterEvent, ultimately called with the synthesized event. The patch also updates the touchmouse::hoverEnabled autotest. Due to the window enter event now being handled correctly, exitSpy2 would run up a count() of 2, as the cursor was not in a neutral position after previous test cases. The change makes sure the cursor is in a neutral position before test case activity. [ChangeLog][QQuickWindow] The relevant child item is now sent a hover event when the window receives a QEnterEvent, making sure hovering is recognized without waiting for mouse movement. Change-Id: If0586f6cd971df0dfc266bb1a39c9cdb184fd286 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| | | | * | QQuickTextInput: avoid emitting editingFinished twiceRichard Moe Gustavsen2016-09-151-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On platforms like iOS, hiding the virtual keyboard will force the current focus object to lose focus. And when QQuickTextInput loses focus, it will emit editingFinished. To not emit the signal once more directly after hiding the keyboard, we add an extra check in the key event handler to verify that we still have focus. Task-number: QTBUG-44038 Change-Id: Ib64f7028a9f16a172b3c38cab72f3599d560e331 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| | | | * | Destroy an incubating delegate if it is removed before incubation completesMartin Jones2016-09-151-3/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing an item from a model after its delegate has started incubation, but before it has completed results is an orphaned item. Task-number: QTBUG-55901 Change-Id: I3d3136dc05a950ca38d53687ae7d38a6d0c7ec35 Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
| | | | * | Fix grammar in "Keyboard Focus in Qt Quick" documentationMitch Curtis2016-09-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I7f5ff2026ed00cacbc07484263c31397555622f1 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
| | | | * | Document that attached properties are created in C++Mitch Curtis2016-09-051-1/+2
| | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was some uncertainty about whether or not it could be done from QML, which it can't. This patch also links to the documentation for creating custom attached objects. Change-Id: Icb9eff0ec96e7911b8d401bd38813bbd6eda227d Reviewed-by: Gavin Kistner <gkistner@nvidia.com> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | | | * Allow for garbage collection of types with errors in trimCache()Michael Brasser2016-08-301-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I821ea14f60871735bface4e2cf4e61fcb61b2784 Task-number: QTBUG-55567 Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| | | | * Workaround crashes in QtQml code related to dead-store eliminationJonathan Liu2016-08-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When compiled in release mode with GCC 6, QtQml may crash. This is because the C++ compiler is more aggressive about dead-store elimination in situations where a memory store to a location precedes the construction of an object at that memory location. The QV4::MemoryManager::allocate{Managed,Object} functions allocate memory and write to it before the caller does a placement new to construct an object in the same memory. The compiler considers these writes before the constructor as "dead stores" and eliminates them. The -fno-lifetime-dse compiler flag is added to disable this more aggressive dead-store eliminiation optimization. This is a temporary workaround until a proper solution is found. Task-number: QTBUG-55482 Change-Id: I7dbae6e9e613e53ce5fb25957c449bc6657803b5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | | * QQuickDragAttached: set actual drag source when instantiating QDragAlberto Mardegan2016-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QDrag's constructor parameter is used as drag source in a DnD operation; objects receiving QDrag{Enter,Move,Leave}Event will get this object when calling event->source(). Task-number: QTBUG-54195 Change-Id: Id3ed7e8d62a8539983c7c21c45f8f1d72f9a2e30 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| | | * | Fix crash on exit when using default property aliases with layoutsMitch Curtis2016-09-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The layout was being destroyed before the text, which meant that the removeItemChangeListener() call never got hit. To ensure that the listener is always removed, loop through each child in QQuickLayout's destructor. This is a manual cherry-pick of 59c6c0e0b1b5b46747595a58e11311b7393d7e70. Task-number: QTBUG-51927 Change-Id: I669f42beb8c3dd6b4b741cae0b16e017bb3409df Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| | | * | Fix smooth scaling for Qt Quick Text itemsJake Petroules2016-09-141-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-54723 Change-Id: Id94f32791f1d80f0466d9f828de55b413ed1baf4 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | | * | Fix V4 on big-endianAllan Sandfeld Jensen2016-09-121-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't both invert offset position and inter-value positions of tag and value. This patch changes 32-bit big-endian to use the same order inside the tag/value but just at different offsets. This also make it compatible with how we use it with doubles. This fixes value/tag reads on 32-bit big-endian and offsets on 64-bit. Change-Id: I95cf792c29ac3f42a4018ce1f115193c143a0df0 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
| | | * | Doc: Updated Local Storage QML Types documentationNico Vertriest2016-09-122-4/+82
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Idbaff2def0ad7171cbca912b54b30d43ef7771bf Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* | | | | check QML_NO_TOUCH_COMPRESSION during first touch eventJeremy Katz2016-09-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The check was moved from global to function scope to allow the environment variable to be modified from within an application. Change-Id: I6702da8696090941ba2cd657bb002916cd1e4065 Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | | | FolderListModel/FileProperty: Use member initializationFriedemann Kleint2016-09-231-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ic9badca90a65348eb4668092a2d66e3f2bc34f71 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | | | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-09-2156-1669/+476
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/compiler/qv4isel_moth_p.h Change-Id: I8e86a649d1ef8ad27dc66cc8c290093b2faabc69
| * | | | QML: Cleanup prefix/suffixes for plug-in resolvingErik Verbruggen2016-09-191-15/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So now we can read it without getting cross-eyed. Change-Id: Ica6a072fcd505fd4fedca3ccfac7dfc00b522354 Reviewed-by: Lars Knoll <lars.knoll@qt.io>