aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Unify deleteProperty and deleteIndexedProperty vtable methodsLars Knoll2018-06-2615-80/+69
| | | | | Change-Id: I25245818c6ff2104642594476cb9684bac824f29 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Move special handling of getOwnProperty for StringObject where it belongsLars Knoll2018-06-263-10/+23
| | | | | | | | Move the code into a virtual method of StringObject, bringing us closer in line with the ES7 spec. Change-Id: Iaf460f5a5517fe059a30be8c403d71625453b80a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Remove obsolete optionSimon Hausmann2018-06-261-3/+0
| | | | | | | | | | The check-if-supported option does not make sense anymore since the generated output is cross-platform. Change-Id: If7802267b51b445d2e41387d556a344616e9afc8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Rolf Eike Beer <eb@emlix.com> Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
* QSGAdaptationLayer: Remove QLinkedList usageRobin Burchell2018-06-262-11/+10
| | | | | | | This is O(n), which hurts with a large number of consumers. Change-Id: I970da3ddee40cf4e47d2c278e9a480db1cf90cd3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix string memory leak in JavaScript ASTSimon Hausmann2018-06-257-20/+27
| | | | | | | | | | | | | Commit 02252ae08d introduced a QString member in a JS memory pool class, which leaks unfortunately as the pool is not designed to call destructors of allocated types. Typically strings in the AST are derived from input and therefore a QStringRef is fine. The bindingIdentifier in the PatterElement however is sometimes synthesized, so a separate storage for dynamically allocated strings in the memory pool allows for using QStringRef again. Change-Id: I94d090df653d784c554452722b3b759031e4735b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QQuickTableView: make functions constRichard Moe Gustavsen2018-06-252-4/+4
| | | | | | Change-Id: Id2f4c9ad64fafbf7d65f4597250aef86871ff5b5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* MultiPointHandler::hasCurrentPoints: OK if event has more pointsShawn Rutledge2018-06-252-4/+4
| | | | | | | | | | | | | | | | | We plan for DragHandler to be able to handle multiple points and thus to inherit from MultiPointHandler. But most DragHandlers only handle single points. Without this change, the mixer manual test would be broken: each DragHandler's m_currentPoints will have only one point, but as soon as the event has multiple points, all the DragHandlers would return false from wantsPointerEvent, and therefore it becomes impossible to drag two DragHandlers with two fingers. This test was just meant as a shortcut/optimization anyway. But if the event contains fewer points than the handler already knows that it wants to handle, we can still return early. Change-Id: Ieea26a09bb9af9ee3c7ff2913f8e90f35c0f070e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Put QQuickDragAxis into a separate fileJan Arve Sæther2018-06-255-63/+165
| | | | | | | Needed because it will be used by other handlers Change-Id: I2fb6d83e29410a3bdce1e037d3ef0670a282ce14 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Add test init function for C++ partsRainer Keller2018-06-252-0/+10
| | | | | | | | | | | | This allows to start other processes as counterparts using QProcess. In the constructor of the setup class it is not possible because no QApplication object has been instantiated yet. [ChangeLog][QtQml] Add test init function to be called when application object is available. Change-Id: Id24395eca41921c743062522a4aeb6231f9bdf09 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* doc: Remove hint to use not recommended constructorRainer Keller2018-06-251-3/+0
| | | | | | | | | The documentation of QQmlListProperty states that this constructor should not be used in production code. Removing this statement prevents users from unintentional usage. Change-Id: I19130204384d5dbef79cec828de49a628af60c02 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Improve error messageRainer Keller2018-06-252-2/+3
| | | | | | | | | Show information about used types to help the user determine what went wrong. Change-Id: Ia71f21ee2bd53ba751bf0a3f7718f949d0e8330d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add defaultLogLevel to LoggingCategoryTomasz Olszak2018-06-256-9/+86
| | | | | | | | | | | | | Add possibility to define default logging category log level. Just like in QLoggingCategory constructor. [ChangeLog][QML Elements][LoggingCategory] Added defaultLogLevel property. It is possible to define default log level that LoggingCategory is enabled for. Task-number: QTBUG-67094 Change-Id: I12557dfb7c228c40b325d0dccde4c525acae0300 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Merge "Merge remote-tracking branch 'origin/5.11' into dev" into ↵Liang Qi2018-06-25154-316/+723
|\ | | | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/5.11' into devUlf Hermann2018-06-25154-316/+723
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/qmltooling/packetprotocol/qpacketprotocol.cpp src/quick/handlers/qquickhandlerpoint.cpp src/quick/handlers/qquicksinglepointhandler.cpp tests/auto/qml/ecmascripttests/test262 Change-Id: I8908ec8c6116ca626fbd269af7625d4c429429ca
| | * Remove dead test - compilerwarningsLiang Qi2018-06-221-38/+0
| | | | | | | | | | | | | | | | | | | | | A follow-up of 9d078c8f147ea875e862360b0d7480201fbbcff7 in qtqa repo. Change-Id: I4b6c2923827ba8929a8f9b0919e5017122ca95fc Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
| | * Doc: Move literal codeblocks to snippet filesVenugopal Shivashankar2018-06-226-12/+116
| | | | | | | | | | | | | | | Change-Id: Iff45ea6cf414717fd1cb0a194eef390a9f153838 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| | * Doc: Move the code snippets to a separate snippet fileVenugopal Shivashankar2018-06-226-25/+220
| | | | | | | | | | | | | | | Change-Id: I17671563f2beebe16ae1d08552854eaf44ae43ee Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| | * PacketProtocol: Explicitly transmit packet sizes in little endianUlf Hermann2018-06-221-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | So far the protocol would fail if the endpoints have different endianness. Task-number: QTBUG-68721 Change-Id: Ib53894b1e2f3eecf40160bb7bb9cfaa4beb2c045 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * Doc: Correct QML type for FolderListModel.folderPaul Wicking2018-06-211-4/+4
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-68940 Change-Id: I439ec9b6253815f41e405a0d9f79ff69eb75c98e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * Fix crash in binding setup during async load from a LoaderErik Verbruggen2018-06-211-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change 91ac4a8d099d10fdfd5aa631da02727b7917d85f removed the source location from QQmlBindingFunction, because it can be retrieved from the QV4::Function in the QV4::CppStackFrame. However, if a binding is initialized as part of an asynchronous load from a Loader component, there might not be a valid function pointer in that frame. In this specific case, we fall back to the source location of the binding function. Task-number: QTBUG-68738 Change-Id: I2d3f17e4cb82be1e70a54cb66f9cf9c17f541f95 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * Script::parse(): improve "function expressions as statement" error msgMitch Curtis2018-06-201-3/+4
| | | | | | | | | | | | | | | Change-Id: I3c54c90bfa48d2f6ba78b898413133e49b66c208 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * Fix transitive includeUlf Hermann2018-06-201-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | qsgtexturefilehandler_p.h is included through other headers that depend on QT_CONFIG(opengl). Change-Id: Ic87482289332cb1a0215ca74362207f9941239d7 Reviewed-by: Michael Brasser <michael.brasser@live.com>
| | * CMake: fix bad argument quoting when calling rccRolf Eike Beer2018-06-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: 8735ff6499f4ef93675a9e8158af77461f6e93bc Change-Id: If8a3a394e52027fe99acc98ea8f4b7847db81497 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
| | * revert change 353164263c55825a0ec72d30128c50560c626334Lars Knoll2018-06-195-18/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change was too aggressive in trying to avoid marking the array data. We didn't catch all cases where on could be inserting a GC controlled object into the array data. Let's be safe and always mark the content of array data objects. Task-number: QTBUG-68894 Change-Id: Ifbb628be898c0903596b1a483212384295b01df5 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
| | * qmlcachegen: Remove superfluous semicolons from generated codeJoerg Bornemann2018-06-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the "extra ';'" warnings when compiling generated code with -Werror=pedantic. Task-number: QTBUG-68809 Change-Id: Ie26cdc4e06bc26587766dd72b258624773a7f990 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * Fix CONFIG+=qtquickcompiler with umlauts in the file pathSimon Hausmann2018-06-198-10/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of replacing every character that is not allowed in C++ identifiers with an underscore (which in turn could lead to collissions), replace it with the hexadecimal value of the offending character's unicode value. In addition we must use the complete suffix when mapping Foo.qml to Foo_qml.cpp. Task-number: QTBUG-68608 Started-by: Erik Verbruggen <erik.verbruggen@qt.io> Change-Id: I7e2153f0e6671b37dcaee4efb9aaae1d9b230f0c Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| | * Attempt to stabilize tst_qquickwindow::openglContextCreatedSignalSimon Hausmann2018-06-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test creates a QQuickWindow, calls show() on it and then waits with qWaitForWindowExposed() to return true. The expectation of the test is that when that call returns, an expose event was also successfully delivered to the window and the scene graph's render loop has attempted rendering the window contents - using *RenderLoop*::renderWindow(), which would - in the case of the gui thread loop - create the GL context. This expectation is expressed using a QVERIFY on a signal spy that observes the emission of the GL context created signal of QQuickWindow. There is no guarantee that by the time qWaitForWindowExposed returned true, an expose event was delivered to the window. Therefore let's use QTRY_VERIFY. Change-Id: I604cbf40dfb7980448f406e26b77678a65faf359 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * Fix support for QTQUICK_COMPILER_SKIPPED_RESOURCESSimon Hausmann2018-06-191-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | This used to work with QQC before 5.11 and somehow was lost in translation. Change-Id: Id3d38c609e228d0f7676d3fb177b271eb46f6f73 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| | * Merge "Merge remote-tracking branch 'origin/5.11.1' into 5.11" into ↵Simon Hausmann2018-06-191-0/+56
| | |\ | | | | | | | | | | | | refs/staging/5.11
| | | * Merge remote-tracking branch 'origin/5.11.1' into 5.11Qt Forward Merge Bot2018-06-191-0/+56
| | | |\ | | | | | | | | | | | | | | | Change-Id: If058b169d39776b423b85ad975c56b46f49fdb6c
| | | | * Add changes file for Qt 5.11.1v5.11.1Antti Kokko2018-06-151-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I9a46ff6580e63c621835a4100e6fd19b5367492c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * | | Doc: Add missing dots (qtdeclarative)Paul Wicking2018-06-19121-192/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-68933 Change-Id: Ibb5aa227e82825085e7214e17dcffcb17fd44157 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| | * | | Flickable: fix another possible cause for out-of-sync moving flagsNils Jeisecke2018-06-191-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In addition to d868bb4f3e4b0424fd4a2989ff1c82692b0f014c this removes the check for scrollingPhase in movementEnding. If movementEnding is invoked by some codepath other than timerEvent (e.g. setContentY) and scrollingPhase is true this will again prevent any further invocation of movementStarting from within the drag method (see d868bb4). As this check was introduced together with the movementEnding timer (QTBUG-63026) and scrollingPhase is now checked inside the timerEvent there should be no need for the check in movementEnding. Task-number: QTBUG-67460 Change-Id: I88ad6e3ee56b88a66bb61798b8876324f4842f1e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | | | Fix compiler warningSimon Hausmann2018-06-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qml/qqmlmetatype.cpp:1876:58: warning: ‘QString::QString(const char*)’ is deprecated: Use fromUtf8, QStringLiteral, or QLatin1String [-Wdeprecated-declarations] Element names that are const char * in the API are expected to be UTF-8 encoded. Change-Id: I12aab141e4a4d03ca3a025e8575c80dfea5242fe Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | | Fix running the test suite on WindowsSimon Hausmann2018-06-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By "accident" it appears that the files in the submodule have \n line-endings in the CI. However in a regular developer checkout, the YAML test harness config file has \r\n endings and that requires fixing before attempting to parse the YAML. Change-Id: I98bba1864433d5b44741dd7863125b13ae7b58de Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | | Fix a smaller spec incompatibility in ProxyLars Knoll2018-06-251-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A null trap is also allowed. Change-Id: I9dd2548c27c6341dc9ad725fb5be5bebd6c04b9a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Add Proxy support for prototype handlingLars Knoll2018-06-2524-136/+206
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cleanup get/setPrototypeOf and fix some smaller incompatibilities in the default implementation for Object. Add the methods to the vtable and reimplement them according to spec for ProxyObjects. Clean up the Object.prototype.get/setPrototypeOf/__proto__ methods and fix a smaller bug in the Reflect API for those methods. Change-Id: I6e438753332ec4db963d6cdcf86f340ff212777a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Support preventExtensions in Proxy handlersLars Knoll2018-06-257-9/+47
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I03aaacc260bdb46eb09c597598a45fbb25d6d7b6 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Add support for isExtensible in proxy handlersLars Knoll2018-06-255-11/+41
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I580ff0ab33fa58bcd42f6cc500f4a20ee5b05e87 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Fix length properties of global constructorsLars Knoll2018-06-256-9/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I4e9e1635f404082b0e8b333dc13a33d27e4f4b50 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Implement support for getOwnPropertyDescript and has in Proxy objectsLars Knoll2018-06-253-15/+109
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ie7a15afebdfbad31738d2d944d4128065b8a611f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Add virtual interface for hasPropertyLars Knoll2018-06-256-45/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is required to correctly support Proxy Change-Id: I95ec17e919915290a05ad9501cd649452ab82135 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Fix a source of potential bugs in the Identifier tableLars Knoll2018-06-251-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure we never add strings that represent array indices into the identifier table. Change-Id: Ib4a500d44b6ff58a71b7a55053c9be9f2580aea8 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Implement a virtual interface for getOwnPropertyLars Knoll2018-06-2521-191/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is required to support Proxy properly, and at the same time fixes a couple of test failures. The new interface also replaces the old query and queryIndexed virtual interfaces, as those where doing a subset of what getOwnProperty does. Change-Id: I750e366b475ce971d6d9edf35fa17b7a2b07f771 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Partial Proxy supportLars Knoll2018-06-2510-138/+401
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | get, set and deleteProperty proxying is implemented, the others require some more changes in our engine. Change-Id: I4dd4b154b1a582f5e36cdc9429fa049fd37d5167 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | Fix crash with the QQuickRenderControl and deleteLaterDavid Edmundson2018-06-241-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From 238cc098d785b4fe76fbc8422b340d98ff8c1a1b which removes this same line from the software renderer. >I can't see a good reason for the existence of the sendPostedEvents() >call there. It is not present in the other render loops and according to >git blame it stems from the very early first implementation of the >software renderer where surely copy & paste from other render loop code >was involved back then. Task-number: QTBUG-68997 Change-Id: I40aaeb92f431d474b7b1affb85d0ea5f8b2a46ef Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | Clean up finally code genSimon Hausmann2018-06-231-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of emitting GetException MoveReg <returnvaluetemp>, <returnaddress> StoreReg <exceptiontemp> ... LoadReg <exceptionTemp> MoveReg <returnvaluetemp>, <returnaddress> SetException and implicitly relying on MoveReg to not clobber the accumulator, it's cleaner to produce MoveReg <returnvaluetemp>, <returnaddress> GetException StoreReg <exceptiontemp> ... MoveReg <returnvaluetemp>, <returnaddress> LoadReg <exceptionTemp> SetException Change-Id: I3c392ba5fb75aa2ad3ef32aa776fa7acbc25317c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | Add run time assertion for local handlingSimon Hausmann2018-06-231-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit f44782d0cdbdb800d9c31d5aff712fbf29d52edc fixed the missing call context creation that would lead to language/statements/break/S12.8_A2.js failing. It wouldn't always fail as the invalid cast from the global context to a call context would access memory that happens to be available just for the test. An assertion however will not require us to rely on memory setup. Change-Id: I131a2242004cd5e4d518e58cc9f6a79037f962d2 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | Fix remaining failues with qjstest --jitSimon Hausmann2018-06-223-2/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The codegen generates code like this for the unwind handling: GetException MoveReg <somereg>, <return value reg> SetException In the interpreter, MoveReg doesn't clobber the accumulator, but in the JIT it did. Change-Id: I7a9c8200468115ca37403ec8a0d511210e2b25fd Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | Fix language/expressions/equals/coerce-symbol-to-prim-return-prim.js with JITSimon Hausmann2018-06-222-129/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the same method for comparing values for the JIT as well as the interpreter, so that the test passes with interpreter as well as the JIT. Change-Id: I2e0249d8e915c816a64adc922839cb71f0e065db Reviewed-by: Lars Knoll <lars.knoll@qt.io>