aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* wasm: cleanup code, remove obsolete codeLorn Potter2018-06-0713-17/+11
| | | | | Change-Id: I54f406d803fa6d458ae53a78abb8c99dc76aab92 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* wasm: fix using separate index bufferLorn Potter2018-06-062-2/+2
| | | | | | | html5 platform is webgl, so we share needing separate index buffers Change-Id: Ic0d09d1ee9274f6a487923bb43d42f06ff6806c5 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Merge remote-tracking branch 'gerrit/5.11' into wip/webassemblyMorten Johan Sørvig2018-06-04158-930/+1849
|\ | | | | | | Change-Id: I7556ac62fd8e1aeb99186c929f1225f02f9d2430
| * Fix subrect of mismatched dpr sprite imageAllan Sandfeld Jensen2018-06-011-5/+5
| | | | | | | | | | | | | | | | | | Scale the subrect to fit image dpr. Task-number: QTBUG-68490 Task-number: QTBUG-68582 Change-Id: I6b0a9af73013dc6cf2b65103d5868f45da8e338e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Bump versionOswald Buddenhagen2018-05-311-1/+1
| | | | | | | | Change-Id: I061a94a4cd642a8832899f69dc33a0a7bd597b72
| * V4: Set argumentsCanEscape when debuggingUlf Hermann2018-05-302-0/+24
| | | | | | | | | | | | | | | | | | This causes the updated arguments to be reported to the debugger when they are overwritten in the function body. Task-number: QTBUG-68534 Change-Id: I30c22d31aa97da0d58a4bbaaa032180a919669a8 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Formals come after locals in the CallContextLars Knoll2018-05-292-4/+37
| | | | | | | | | | | | | | | | | | | | | | The method updating the internal class for a CallContext messed up the order between locals and formals, leading to wrong name lookups for signal handlers taking implicit arguments Task-number: QTBUG-68522 Change-Id: I36d55b3b0cfe9af6397455782551498b7ddb940a Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Fix a crash in the modulus operationLars Knoll2018-05-282-1/+11
| | | | | | | | | | | | | | | | | | | | INT_MIN % -1 crashes in C++ with an arithmetic exception, so avoid passing negative numbers into the integer operation, use fmod() instead. Task-number: QTBUG-68513 Change-Id: Ib5a37b55a0f9d41a84c7e6c00ea3f87622155de5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Remove old pre-QFileSystemEngine-rewrite codeErik Verbruggen2018-05-281-9/+1
| | | | | | | | | | | | | | | | | | | | | | Once upon a time, calling stat directly on Unix-alike systems gave a significant speed-up compared to calling QFile::exists. These days not so much. It also breaks any use of custom subclasses of QAbstractFileEngine. Task-number: QTBUG-68463 Change-Id: Icae8a16880723dee13c460cfdb15b03dc63c1371 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * QML Debugger: Don't crash when encoding JSON dataUlf Hermann2018-05-252-27/+99
| | | | | | | | | | | | | | | | | | Apparently QVariant::save cannot deal with QJsonObject and friends. Transform them into QVariants before sending them over the wire. Task-number: QTBUG-68474 Change-Id: I8fc9fade4915c2b40f8d16aea51ea6ff65247dc1 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Fix build for Android with android-clangLiang Qi2018-05-251-2/+1
| | | | | | | | | | | | | | | | | | | | jit/qv4assembler.cpp:65:11: error: unused variable 'IsIntegerConvertible_Shift' [-Werror,-Wunused-const-variable] const int IsIntegerConvertible_Shift = QV4::Value::IsIntegerConvertible_Shift; ^ Change-Id: I8fd7f03661e9bb7d80c92947cd43841189f148ce Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
| * Fix crash when modifying list model in worker threadSimon Hausmann2018-05-242-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we call get() on a model in a worker thread, we may end up creating a ModelNodeMetaObject (aka cacheObject). Subsequent mutation of properties may make us end up in emitDirectNotifies(). However since we can't have bindings in there, we should shortcut/suppress the notify emission, which we can do by checking ddata->context via qmlEngine(). The previous code crashed when qmlEngine() return a null pointer but QQmlEnginePrivate::get(const QQmlEngine *) would attempt to dereference the parameter. Started-by: Slava Monich<slava.monich@jolla.com> Change-Id: I880619c686436c053692faafa5dba2c96c2ace96 Reviewed-by: Robin Burchell <robin.burchell@crimson.no> Reviewed-by: Slava Monich <slava.monich@jolla.com>
| * tst_gradient.qml: fix warnings about multiple var declarationsMitch Curtis2018-05-241-115/+115
| | | | | | | | | | Change-Id: Iccfb86de6f8c14d10fcf12e1b7cbd58a13754aa7 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * tst_gradient.qml: fix warnings about type coercionMitch Curtis2018-05-241-108/+108
| | | | | | | | | | Change-Id: Ic3ab7cb4fa1772a0d92c06285f9cddf3378bd411 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * V4 debugger: Allow retrieval of non-CallContext scopesUlf Hermann2018-05-235-26/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to encode the scope type properly and we need to return something from the "scope" command. Previously the client didn't even get notified about QML contexts and couldn't actually retrieve anything but call context. The other scope types are not terribly interesting right now, but at least for the global context it should be possible to provide more data in the future. Task-number: QTBUG-68218 Change-Id: I88d3dbc15a93f19b00f6f12365e4fb64ec78862e Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * On network redirects, update finalUrl, not urlUlf Hermann2018-05-238-9/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We want all further imports to be relative to the redirected URL, not the base one. Note that this will incorporate any prior URL interceptions into the final URL if a redirect happens. We don't really want this to happen because the result of interception is not meant to be the base for further URL lookup. However, as interception occurs before redirection, this is unavoidable. Don't use URL interceptors on remote URLs. Task-number: QTBUG-67882 Change-Id: I2717bdd4de119ac67caa08fdccc041432025abff Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Fix change-of-sign warningThiago Macieira2018-05-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | Column numbers cannot be negative. error #68: integer conversion resulted in a change of sign int value = v8engine->consoleCountHelper(scriptName, frame->lineNumber(), -1); ^ Change-Id: I052407b777ec43f78378fffd1531182f28e09b1f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Fix crash when incubating objects with non-existent initial propertiesSimon Hausmann2018-05-234-2/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When incubation is triggered from C++ and reaches the state of setting the initial properties (as supplied to incubateObject), we'd set engine->currentStackFrame to a CppStackFrame that provides access to the correct QML context. As we're not called from the interpreter, the v4Function pointer would be a null pointer. If during the initial property setting an exception is thrown (due to non-existent property access) and a back-trace is created, we'd end up dereferencing v4Function. Change-Id: I7f6b0ba7893bfb4186f55d4c213b4bb602d29aa0 Task-number: QTBUG-68416 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Fix crash when modifying objects used as prototypesLars Knoll2018-05-232-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changing the prototype of an object back and forth leads to a 'cyclic' reference in the internal class transition tables. If one of those objects then gets a new property, we would get an infinite stack recursion trying to update the internal class IDs of the classes using this prototype. Fixed by skipping protochanges and vtable changes in the update code. That's ok, as those classes will always be reached through other paths from the empty class. Task-number: QTBUG-68369 Change-Id: Ie54ca5171a92f8e8b146a91376e435478ff70185 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Ensure we restore QML-defined enumsMichael Brasser2018-05-234-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | This code path was previously missed, leading to some AOT-compiled types generating errors of the form: Unable to assign [undefined] to int [ChangeLog][QtQml] Fix QML declared enums with CONFIG+=qtquickcompiler. Change-Id: Ib46a2b2505aa3863f091a6ccdebf8425e62fc38f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Doc: link to integration flowchart in "Interacting with QML from C++"Mitch Curtis2018-05-221-2/+2
| | | | | | | | | | | | | | | | | | | | Replace the link to the more specific "Integrating QML and C++" page with a link to "Choosing the Correct Integration Method Between C++ and QML", as the flowchart is a much quicker way for users to determine the correct approach for their use case. Change-Id: Ia2c269f9149d801644407bba7388624d69a75564 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
| * tst_qquickanimatedsprite: add all QML files to OTHER_FILESMitch Curtis2018-05-161-1/+1
| | | | | | | | | | | | | | Makes it easier to open them via the locator, for example. Change-Id: I8a5a0beba315da25b14bf2d519974e175f39567f Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| * setGrabberItem: consistently call touchUngrabEvent or mouseUngrabEventShawn Rutledge2018-05-152-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | Calling grabberItem() to get the old grabber must come before setting m_exclusiveGrabber. Then we call oldGrabberItem->touchUngrabEvent() or oldGrabberItem->mouseUngrabEvent() as appropriate. Now the responsibility for this is moved from QQuickItem::grabMouse() to QQuickEventPoint::setGrabberItem() (which it calls). Task-number: QTBUG-65648 Change-Id: Ia6219cb798d7f671ccc4006d51eeb87dbdbda3ef Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
| * Pass the arguments correctly to QRadialGradientAndy Shaw2018-05-151-1/+1
| | | | | | | | | | | | | | | | | | | | The parameters for createRadialGradient indicate the position and radius for the two circles. Therefore the radius arguments should be used with their respective circle positions. Task-number: QTBUG-67960 Change-Id: Ifacba4d43939bafeed451e713250f716a11d30d1 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Fix for input method commit that ends with newlinePaul Olav Tvete2018-05-141-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the input method event contains a commit text that ends with a newline, text, the commit string is inserted first. This changes the current block. This change makes sure that we apply the formatting changes (including removing the old preedit text) to the old block in this specific case. This is a copy of change 6cece0f43a18dc8c9dbf5bc49ce515714f090725 in qtbase, since the code is duplicated. Task-number: QTBUG-67836 Change-Id: I531d3f1dce51d840acc0ef7fda9e7affb3192327 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Fix build without features.gesturesTasuku Suzuki2018-05-145-2/+32
| | | | | | | | | | | | Change-Id: Id2fb6419be9a35ddaa24106d3022e72070cb908d Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * MouseArea: set pressed state to Qt::NoButton not nullptrShawn Rutledge2018-05-131-1/+1
| | | | | | | | | | | | | | Correction to 499ec43937e926e4f2fa57a9baa455fcb3862262 Change-Id: I9f9fb7cf3a0a04611e7f0a31f57147fbbc03c1a5 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Fix TestCaseCollector fails to initialize component from resourcesChristoph Keller2018-05-131-2/+6
| | | | | | | | | | | | Change-Id: I9f1e20653776bbdf1a8a41a631636ec61ddd08b6 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Fix bug where Ungrab event was not sentJan Arve Sæther2018-05-112-1/+43
| | | | | | | | | | | | | | | | | | | | | | | | clearGrabbers() will also clear QQuickWindow::mouseGrabberItem(), so we have to retrieve a copy of the mouse grabber item in advance of calling clearGrabbers(). This could happen when a filtering parent actually called grabMouse() on mouse release(!) event. Change-Id: I287214dbdff802707be625d73c38dd9c5d723aef Task-number: QTBUG-68030 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Fix .import within .js files with CONFIG+=qtquickcompilerSimon Hausmann2018-05-119-17/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When loading a .js file without QQC, we scan the sources and use the ScriptDirectivesCollector to extract things like .pragma library or .import ahead of time. That information is passed on to the compilation unit generator for serialization. When compiling .js files ahead of time, we also used the same collector, but we forgot to save the data into the right location before serialization, so we essentially lost the imports. This patch fixes that by centralizing this code into the ScriptDirectivesCollector itself. [ChangeLog][QtQml] Fix regression with .import in .js files not working when using CONFIG+=qtquickcompiler. Change-Id: I5413c14b1b8bd3114a997011534fe55cdb7634aa Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Fix build without features.timezoneTasuku Suzuki2018-05-111-1/+1
| | | | | | | | | | | | Change-Id: Id40b7a9394a9027551a1334e9e520630e8967cb7 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Fix build without features.quick-shadereffectTasuku Suzuki2018-05-101-0/+1
| | | | | | | | | | | | Change-Id: Id4be19faa05e272ad9bf967516e0b49727016e2b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Fix build without features.quick-pathTasuku Suzuki2018-05-101-1/+1
| | | | | | | | | | Change-Id: I15ae07ebeb8d16643cf24cf16a5bbe4f45843fcf Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Fix build without features.xmlstreamwriterTasuku Suzuki2018-05-101-1/+1
| | | | | | | | | | Change-Id: I375e182709e0e916a124302a9c46c29e53791499 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Merge remote-tracking branch 'origin/5.11.0' into 5.11Qt Forward Merge Bot2018-05-093-10/+184
| |\ | | | | | | | | | Change-Id: Id292599780ae47c6f2f3fa2d3bbc542b113bd16b
| * | tests: unblacklist tst_qquickwindow.cpp::touchEvent_propagationGatis Paeglis2018-05-081-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | For details see QTBUG-67757. Task-number: QTBUG-53916 Change-Id: I142a418fc22e6cdf64ab571ea2759e00c8101c47 Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
| * | Fix crash when changing the source of AnimatedImage after a frame changeLouis du Verdier2018-05-082-5/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QMovie emits the signals updated() and frameChanged(), and restarts right after its timer to prepare for the next frame. Since AnimatedImage destroys its underlying QMovie when its source changes, the lines after emit frameChanged() in QMovie will use free'd memory and will most of the time produce a crash. This fix delays the destruction of the underlying QMovie of AnimatedImage using deleteLater() to prevent this kind of behavior from happening without impact/behavior change in the code of QMovie. Unit tests added as well to cover this situation. This commit also fixes a similar crash when Component.onCompleted is called and when the source changes in the associated callback. Task-number: QTBUG-67427 Change-Id: Ic6568a1bc251e5fa2ee1cf8e5f50eaa56c3007db Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Louis du Verdier <louis.du.verdier@free.fr>
| * | Fix loading of composite singletons from resourcesSimon Hausmann2018-05-085-8/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit f6bbeeb417102c61e8bf23f41e412ed9753a348d began normalizing the resource urls in the type loader, which broke loading of qml singletons from resources, as the normalized url is also used for the "pragma singleton" verification to check that the singleton is in the meta-type registry. If the registration was done with a non-normalized url, the check would fail with a misleading error message. Task-number: QTBUG-68025 Change-Id: I1093ee0cbee884b4a51195c302c8908f748e747e Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
| * | tests: blacklist tst_qquickitem::qtBug60123Gatis Paeglis2018-05-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Its unreliable and we don't know why yet. Task-number: QTBUG-66866 Change-Id: I963a0070e5819b20d0e811f749cf623113eb9d26 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Fix Hidpi BorderImage in software rendererAllan Sandfeld Jensen2018-05-021-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to correct for the fact that sub-rects of images in QPainter are in source coordinates. Change-Id: I457527b4ff7c1df5f6b662c3ed4d690e05efb4fb Task-number: QTBUG-40366 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * | QQuickItem: Guard against null deref in transformationsRobin Burchell2018-04-303-0/+33
| | | | | | | | | | | | | | | | | | | | | Change-Id: Ieb14322c104d816842e04e521b556bfc11855f1c Task-number: QTBUG-67024 Reviewed-by: Robin Burchell <robin.burchell@crimson.no> Reviewed-by: Michael Brasser <michael.brasser@live.com>
| * | Fix QML context leak with visual data model and list property modelsSimon Hausmann2018-04-303-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using the VDM or QML list properties as models, the delegate model injects an intermediate QQmlContext that provides access to the properties of the exposed QObject as context properties. Before commit e22b624d9ab1f36021adb9cdbfa9b37054282bb8, that context was marked to be owned by the parent QQmlContext. When the reference counting was introduced, that parent became referenced from the cacheItem (DelegateModelItem), but that intermediate QQmlContext became floating and was leaked. This can be observed by running the objectListModel test of tst_qquickvisualdatamodel with detect_leaks=1 in ASAN_OPTIONS. The leak is fixed by re-introducing the exceptional case of a parent holding a strong reference to the child, in just this one case. Change-Id: Iabc26990d39757b0abe0cddf69e76e88e40fba40 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Michael Brasser <michael.brasser@live.com>
| * | Doc: add "Best Practices for QML and Qt Quick" to best-practices groupMitch Curtis2018-04-281-0/+1
| | | | | | | | | | | | | | | | | | | | | So that it shows up on http://doc.qt.io/qt-5/best-practices.html Change-Id: I0968362dc055adb6b882c1b7dc6a4a4d7f8b6351 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | Tests: Silence Clang warningsFriedemann Kleint2018-04-272-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./stringmodel.h(63,9): warning: 'rowCount' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] int rowCount(const QModelIndex &) const ^ ./stringmodel.h(73,17): warning: 'columnCount' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] virtual int columnCount(const QModelIndex &) const ^ ./stringmodel.h(83,25): warning: 'index' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] virtual QModelIndex index(int row, int column, const QModelIndex &parent) const ./stringmodel.h(92,25): warning: 'parent' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] virtual QModelIndex parent(const QModelIndex &) const ^ ./stringmodel.h(97,14): warning: 'data' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] QVariant data (const QModelIndex & index, int role) const ^ tst_qquicklistview.cpp(8695,18): warning: unused variable 'ctxt' [-Wunused-variable] QQmlContext *ctxt = window->rootContext(); Task-number: QTBUG-63512 Change-Id: Ie928981a601d0462cfadd093815d110f6971d7f5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | test: fix flaky in tst_QQuickPathView::movementDirection()Liang Qi2018-04-271-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Due to heavy load in ci test vm, the animation perhaps didn't start after QTest::qWait(100). Task-number: QTBUG-67939 Change-Id: I8c786c82ea41c3d3514ab6bddaefb0c584f35fe0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Add "We mean it" to qqmlprofilerclientdefinitions_p.hUlf Hermann2018-04-271-0/+11
| | | | | | | | | | | | | | | Change-Id: I4ff64856c066309057e9f201ab51ed805042aefc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | QQmlDelegateModel: include QQDMIncubationTask errors with our errorsMitch Curtis2018-04-271-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the snippet in the referenced bug report (and the parent patch applied), the output is: qrc:/main.qml:19:19: QML ListView: Error creating delegate There should be more errors after this line, but since the delegate itself didn't have any errors, we need to also check with the incubation task. After doing so, the output becomes: qrc:/main.qml:19:19: QML ListView: Error creating delegate: qrc:/main.qml: Object destroyed during incubation This adds important context (for developers and for users reporting issues in the future) that was previously missing. Task-number: QTBUG-49224 Change-Id: Ic7ac1a06c7dbdf3746f960d28908cc10f6ae86f5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | Fix qmlInfo and friends for anonymous componentsSimon Hausmann2018-04-273-2/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | When used on for example delegates we can and should also print the line number and column where the component is declared. Change-Id: I0f02c675425700cde119352d0001895cc31a4c73 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Michael Brasser <michael.brasser@live.com>
| * | Normalize URL before loading typesErik Verbruggen2018-04-276-10/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | This prevents loading of types with slightly different paths multiple times, like "qrc:/One.qml" and "qrc:///One.qml". Task-number: QTBUG-65723 Change-Id: I6e26db6d1d271b2ed37b97eb990618843e99c372 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | QQmlDelegateModel: provide better warningsMitch Curtis2018-04-271-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, QQmlDelegateModel errors look like this: <Unknown File>: QML VisualDataModel: Error creating delegate This patch uses the delegate as the QQmlInfo object so that we get errors with actual file names and line numbers: qrc:/main.qml:19:19: QML Component: Error creating delegate This has several benefits: - It's obvious which file is causing the issue - A clickable link in Creator's application output pane Task-number: QTBUG-49224 Change-Id: I0df0d1a9e898aff5f83131ca62a47cc7f1c74c6e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Michael Brasser <michael.brasser@live.com>