aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | | YarrOp: Initialize membersFriedemann Kleint2017-06-231-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix GCC 7 warnings: 3rdparty\masm\yarr\YarrJIT.cpp:455:12: error: '<anonymous>.JSC::Yarr::YarrGenerator<(JSC::Yarr::YarrJITCompileMode)1>::YarrOp::m_alternative' may be used uninitialized in this function [-Werror=maybe-uninitialized] 3rdparty\masm\yarr\YarrJIT.cpp:455:12: error: '<anonymous>.JSC::Yarr::YarrGenerator<(JSC::Yarr::YarrJITCompileMode)1>::YarrOp::m_previousOp' may be used uninitialized in this function [-Werror=maybe-uninitialized] 3rdparty\masm\yarr\YarrJIT.cpp:455:12: error: '<anonymous>.JSC::Yarr::YarrGenerator<(JSC::Yarr::YarrJITCompileMode)1>::YarrOp::m_nextOp' may be used uninitialized in this function [-Werror=maybe-uninitialized] 3rdparty\masm\yarr\YarrJIT.cpp:455:12: error: '<anonymous>.JSC::Yarr::YarrGenerator<(JSC::Yarr::YarrJITCompileMode)1>::YarrOp::m_term' may be used uninitialized in this function [-Werror=maybe-uninitialized] Task-number: QTBUG-61558 Change-Id: I661f5455dd4cd57797d09edde9e097e17fb98dae Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * | | Support non-integer pixel-ratio in QQuickWidgetAllan Sandfeld Jensen2017-06-221-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Non-integer pixel-ratios always resulted in blurry rendering when QQuickWidget was used, but not with QQuickWindow. Fixed by reading qreal accessor of devicePixelRatio instead. Change-Id: I49f5efcf2da2efc090c00017e68c99c857cd84ef Task-number: QTBUG-61502 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | * | | Fix typo in QQuickWindow::setRenderTarget warningGunnar Sletta2017-06-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Idc4521e142603ee37a71acdae63ec750fa970d71 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | * | | Fix alignment issue on ARMv7Simon Hausmann2017-06-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As analyzed in the bug report, it appears that we may get QV4::CompiledData::Function pointers for writing that are not aligned for the 64-bit fields at the beginning. [ChangeLog][QtQml] Fix crash due to misaligned data structures on ARMv7 Task-number: QTBUG-61552 Change-Id: I6b2c166b725496150c8850475577628ccd811d65 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
| | * | | Doc: Fix link to Window.screenTopi Reinio2017-06-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/qml/qml/qqmlengine.cpp:455: warning: Can't link to 'QtQuick::Window::screen' Change-Id: I3f662ff574673d86ca048aec709948b236c17fd9 Reviewed-by: Nico Vertriest <nico.vertriest@qt.io>
| | * | | Silence -Wuninitialized warningAllan Sandfeld Jensen2017-06-201-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-61089 Change-Id: I8b1fb03d040b04b3b14f371bf1a5ba8c2318054f Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 784ea8c09d448a418b3128be8bee14d9535e36c9)
| | * | | Fix excessive recursion in rendererGunnar Sletta2017-06-191-3/+4
| | | |/ | | |/| | | | | | | | | | | | | | | | | Change-Id: Iffee781932773fe22c7d946b532ba74492e1e2df Task-number: QTBUG-59789 Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
| | * | Don't leak QQmlJavaScriptExpression errorsColin Ogilvie2017-06-162-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure any error is deleted when the expression is Change-Id: Ibbfd28f50279d4c66830b40c5c917eb8d98f266e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * | Doc: Enclose regular expressions with \badcodeTopi Reinio2017-06-161-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without them, qdoc tries to parse the backslashes as qdoc commands: src/quick/util/qquickvalidator.cpp:231: warning: Unknown command '\d' Change-Id: I36322586c477822f7efbae8b80adaee177c7ca44 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
| | * | testlib: print out milliseconds for datetimeLiang Qi2017-06-161-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-32555 Change-Id: I9219c8a7199d4db27c3d160de2544f0a7cb320a6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| | * | Doc: Avoid copyright text in the codeblock by using \snippetVenugopal Shivashankar2017-06-165-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ib6f1a1e796a085d0f274c7e87d4ed1314e958a06 Reviewed-by: Nico Vertriest <nico.vertriest@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * | Delay the deletion of QSGTextures until all windows are synchronizedDominik Holland2017-06-1610-2/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the 'basic' and the 'windows' render loop the scene graph context is shared. Because of this we cannot start deleting textures after the first window is synchronized as it may contain textures needed by the another window, which is not yet synchronized. QWindowPrivate::syncSceneGraph() is not calling endSync() anymore as it doesn't know whether it is the last window or not. Instead the renderloop is now responsible for calling endSync() once this is safe to do. Change-Id: Icb50ebfb447c928e38b41df7e26f3bfafdb4a811 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com> Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
| * | | doc: Use correct class in docs for font.kerningEskil Abrahamsen Blomfeldt2017-07-042-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Copy-pasted the docs for Text.font.kerning into TextEdit and TextInput and forgot to change the class name in the example. Amends 441e0b41bf5b700cdaa3b0ba2393c487ed4b9de5. Task-number: QTBUG-56728 Change-Id: Ieab27efb51fa702d83b891e3c7b7aeb5e4795fc5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | | Suppress warning about QSignalMapper being deprecatedThiago Macieira2017-07-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It is since qtbase commit 29bcbeab90210da80234529905d17280374f9684. Change-Id: I8d96dea9955d4c749b99fffd14cd512a8ff88a74 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | | Expose "kerning" property for fontsEskil Abrahamsen Blomfeldt2017-06-307-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For text where the content is known, it can be handy to be able to disable the kerning feature in OpenType to improve performance. [ChangeLog][Qt Quick][Text] Added "kerning" property to the font type to support disabling kerning on text. Task-number: QTBUG-56728 Change-Id: I2e447587a066a7e12c5d38967e0845eaad021014 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | | Do not access the qle_bitfield internals directlyAllan Sandfeld Jensen2017-06-281-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This make is impossible to make it private. The uses here also set the internal value multiple times as each part of the union shares the internal. Change-Id: I5db5bf6dd930c09b2aa169371b8d989acfcc00e5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | | QQmlXMLHttpRequest: support sending ArrayBuffer dataAlberto Mardegan2017-06-261-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The XMLHttpRequest.send() method should be able to send arbitrary binary data, and not just UTF-8 text: with this change we first attempt to use the parameter to the send() method as an ArrayBuffer, and fall back to a QString if that fails. [ChangeLog][QtQml] Allow sending binary data, encoded as ArrayBuffer objects, via XMLHttpRequest's send() method. Task-number: QTBUG-61599 Change-Id: I25781969ee39b4d168e5c76315ed9853092b322b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | Do not break qtlocation when integratingJan Arve Saether2017-07-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Once pointerhandlers are merged it should be fixed in qtlocation, and then this should be removed. Change-Id: I8b6364fff762417ac45ea76bfe1c06836c7fdf15 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | | Merge remote-tracking branch 'origin/dev' into wip/pointerhandlerJan Arve Saether2017-07-11196-1317/+8730
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/quick/shared/LauncherList.qml src/quick/items/qquickevents.cpp src/quick/items/qquickevents_p_p.h src/quick/items/qquickwindow.cpp tests/auto/quick/touchmouse/tst_touchmouse.cpp Change-Id: Id692d291455093fc72db61f1b854f3fc9190267b
| * | | shapes: Convert QT_NO_OPENGL to QT_CONFIG(opengl)Liang Qi2017-06-267-20/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also guard fillGradient for now. Task-number: QTBUG-61632 Change-Id: I5fa2607cc1ede0922519258afd455bee4d0187c7 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | Add Q_ASSERT to test prevNodeJesus Fernandez2017-06-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To make Coverity happy: *** CID 181275: Null pointer dereferences (FORWARD_NULL) /qtdeclarative/src/imports/shapes/qquickshapegenericrenderer.cpp: 503 in QQuickShapeGenericRenderer::updateNode()() 497 QQuickShapeGenericNode **nodePtr = &m_rootNode; 498 QQuickShapeGenericNode *prevNode = nullptr; 499 500 for (ShapePathData &d : m_sp) { 501 if (!*nodePtr) { 502 *nodePtr = new QQuickShapeGenericNode; >>> CID 181275: Null pointer dereferences (FORWARD_NULL) >>> Dereferencing null pointer "prevNode". 503 prevNode->m_next = *nodePtr; 504 prevNode->appendChildNode(*nodePtr); 505 } 506 507 QQuickShapeGenericNode *node = *nodePtr; 508 Change-Id: I76e79ef6fe94aa8b0e77f79724101b4682dab6d3 Coverity-Id: 181275 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | Initialize uniform location variablesJesus Fernandez2017-06-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** CID 181276: Uninitialized members (UNINIT_CTOR) /qtdeclarative/src/imports/shapes/qquickshapenvprrenderer_p.h: 174 in QQuickNvprBlitter::QQuickNvprBlitter()() 168 float opacity); 169 170 private: 171 QOpenGLShaderProgram *m_program = nullptr; 172 QOpenGLBuffer *m_buffer = nullptr; 173 int m_matrixLoc; >>> CID 181276: Uninitialized members (UNINIT_CTOR) >>> The compiler-generated constructor for this class does not initialize "m_opacityLoc". 174 int m_opacityLoc; 175 QSize m_prevSize; 176 }; 177 178 class QQuickShapeNvprRenderNode : public QSGRenderNode 179 { Change-Id: I4176981fe79c175db974ff428a5116d82420f7a6 Coverity-Id: 181276 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | Initialize variablesJesus Fernandez2017-06-261-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** CID 181280: Uninitialized members (UNINIT_CTOR) /qtdeclarative/src/imports/shapes/qquickshapegenericrenderer.cpp: 700 in QQuickShapeLinearGradientShader::QQuickShapeLinearGradientShader()() 694 QQuickShapeLinearGradientShader::QQuickShapeLinearGradientShader() 695 { 696 setShaderSourceFile(QOpenGLShader::Vertex, 697 QStringLiteral(":/qt-project.org/items/shaders/lineargradient.vert")); 698 setShaderSourceFile(QOpenGLShader::Fragment, 699 QStringLiteral(":/qt-project.org/items/shaders/lineargradient.frag")); >>> CID 181280: Uninitialized members (UNINIT_CTOR) >>> Non-static class member "m_gradEndLoc" is not initialized in this constructor nor in any functions that it calls. 700 } 701 702 void QQuickShapeLinearGradientShader::initialize() 703 { 704 m_opacityLoc = program()->uniformLocation("opacity"); 705 m_matrixLoc = program()->uniformLocation("matrix"); Change-Id: Ic9435039a1409ade63c7592a4a55b6c7306d03c2 Coverity-Id: 181280 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | Initialize pointerJesus Fernandez2017-06-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** CID 181281: Uninitialized members (UNINIT_CTOR) /qtdeclarative/src/imports/shapes/qquickshapenvprrenderer_p.h: 156 in QQuickNvprMaterialManager::QQuickNvprMaterialManager()() 150 151 void create(QQuickNvprFunctions *nvpr); 152 MaterialDesc *activateMaterial(Material m); 153 void releaseResources(); 154 155 private: >>> CID 181281: Uninitialized members (UNINIT_CTOR) >>> The compiler-generated constructor for this class does not initialize "m_nvpr". 156 QQuickNvprFunctions *m_nvpr; 157 MaterialDesc m_materials[NMaterials]; 158 }; 159 160 class QQuickNvprBlitter 161 { Change-Id: Ia502683b55022ac3eafd4ebd015d44273185bdfc Coverity-Id: 181281 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | Initialize pointerJesus Fernandez2017-06-261-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** CID 181282: Uninitialized members (UNINIT_CTOR) /qtdeclarative/src/imports/shapes/qquickshapegenericrenderer_p.h: 85 in QQuickShapeGenericRenderer::QQuickShapeGenericRenderer(QQuickItem *)() 79 QQuickShapeGenericRenderer(QQuickItem *item) 80 : m_item(item), 81 m_api(QSGRendererInterface::Unknown), 82 m_rootNode(nullptr), 83 m_accDirty(0), 84 m_asyncCallback(nullptr) >>> CID 181282: Uninitialized members (UNINIT_CTOR) >>> Non-static class member "m_asyncCallbackData" is not initialized in this constructor nor in any functions that it calls. 85 { } 86 ~QQuickShapeGenericRenderer(); 87 88 void beginSync(int totalCount) override; 89 void setPath(int index, const QQuickPath *path) override; 90 void setJSPath(int index, const QQuickShapePathCommands &path) override; Change-Id: Ifce4e20c8372b392900b77f45ae14d2abfa1657d Coverity-Id: 181282 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | Support external textures (samplerExternalOES) in ShaderEffectYevhen Kyriukha2017-06-233-16/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | samplerExternalOES type defined in OES_EGL_image_external extension is used on embedded platforms to achieve zero-copy of textures. [ChangeLog][Qt Quick] Added support for samplerExternalOES sampler type in ShaderEffect Task-number: QTBUG-59462 Change-Id: Ib1e864f2e1321949b0a6539d37b92d2b62541ea8 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | Update plugins.qmltypesMitch Curtis2017-06-221-8/+25
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTCREATORBUG-15000 Change-Id: Ia184b442d2adff9a92878f80355b01e79114132b Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | | Fix lookup of formals in QML signal handlers with AOTSimon Hausmann2017-06-211-31/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Partially revert commit 38221427bc21a11b96de7fa7666264c34298c0c0 to allow for the lookup of formals by name even when using the simple call context. Task-number: QTBUG-61531 Change-Id: Ic5b235b62949ce050817ef2937bd4a35dd64aa6a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | | QQuickImplicitSizeItem: don't redefine implicit size change signalsMitch Curtis2017-06-213-31/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f7ada9b9 redefined QQuickItem's implicitWidthChanged and implicitHeightChanged signals in order to avoid warnings. 2ca187ca makes it possible to reuse the base class' signals as long as they don't have parameters. This change should be transparent to users. [ChangeLog][QtQuick][Important Behavior Change] The implicitWidthChanged2 and implicitHeightChanged2 signals of QQuickImplicitSizeItem have been removed. Although these were undocumented and hence private API, any applications currently using them should use the public implicitWidthChanged and implicitHeightChanged signals. Task-number: QTCREATORBUG-15000 Change-Id: I35cfdefc6c992f4529b60c979265650c91ba8549 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
| * | | Merge "Merge branch 'wip/scenegraphng' into dev" into refs/staging/devLaszlo Agocs2017-06-2039-30/+6056
| |\ \ \
| | * \ \ Merge branch 'wip/scenegraphng' into devLaszlo Agocs2017-06-1939-30/+6056
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Say hello to Shape. Change-Id: I1093feee4acc375e62bae1d351db0a7969a536d0
| | | * | | Path and PathMove doc fixesLaszlo Agocs2017-06-191-12/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ife5f290d6860d2e0a41b61da1f7cc2bc995a4079 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | | * | | Rename to vendorExtensionsEnableLaszlo Agocs2017-06-192-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fits existing Quick item naming patterns better. Change-Id: Id6d8f3653b33b1c1963bda4a2bcc212761e74caa Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | | * | | Allow freely mixing non-ShapePath objects in ShapeLaszlo Agocs2017-06-082-29/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The own list property must be kept. However, we can reuse QQuickItemPrivate's data accessors in order to start supporting code like: Shape { .. ShapePath { ... } ShapePath { ... } Rectangle { ... } Image { ... } // any other visual type // or non-visual: Timer { ... } } Change-Id: I6d502d697cae37bf16857770273a749cee1b3aa3 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| | | * | | Use GradientStop and rename ShapeLinearGradient to LinearGradientLaszlo Agocs2017-06-087-191/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thus application code becomes: ShapePath { ... fillGradient: LinearGradient { ... GradientStop { ... } } } which is even more clean and readable. The duplication for stops is now avoided. Change-Id: I50ae2f388e21683a37dc4787763dc71e16eef4f5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| | | * | | Merge remote-tracking branch 'origin/dev' into wip/scenegraphngLaszlo Agocs2017-06-08115-1065/+1636
| | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/quick/scenegraph/adaptations/software/qsgsoftwarerenderablenode.cpp Change-Id: Id8107cb0de0fbfe7120a90a137b49c2b915ff2d3
| | | * | | | Reduce objects: Make ShapePath inherit PathLaszlo Agocs2017-06-076-92/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Shape { ShapePath { Path { ... } } } simply becomes Shape { ShapePath { ... } } Change-Id: Ie57936cd7953c8a8d6c67e78b9d73bdbe2a05316 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | | * | | | Rename to Shape/ShapePath and remove public JS APILaszlo Agocs2017-06-0221-2773/+1961
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I299354da0632fb0b8487cfb13748ed58b97d75fd Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * | | | Merge remote-tracking branch 'origin/dev' into wip/scenegraphngLaszlo Agocs2017-05-31240-606/+1641
| | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Iea0bb0788357bc615d0e9ea411087114b8b3b720
| | | * | | | | Move PathItem to qt.labsLaszlo Agocs2017-04-2522-40/+439
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I1cd686cff60bd40fe2cbbc34f917fac7835b6b7d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Andy Nichols <andy.nichols@qt.io> Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
| | | * | | | | Merge remote-tracking branch 'origin/dev' into wip/scenegraphngLaszlo Agocs2017-04-25116-1361/+1649
| | | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: If2e7c1cf0f1522f6052bbc3e3636ef62bef1b4db
| | | * \ \ \ \ \ Merge remote-tracking branch 'origin/dev' into wip/scenegraphngLaszlo Agocs2017-04-03200-2589/+3940
| | | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I0cbb2ba4a00580e6a74a4e4085fc4eb06d0fadae
| | | * | | | | | | PathItem: add some docs for the JS APILaszlo Agocs2017-03-301-0/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I25a1e14e755350350f9a37ab0ac711576c25f535 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * | | | | | | PathItem/generic: Fix spread modes in gradient materialLaszlo Agocs2017-03-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not including the mode in the comparison makes the scenegraph think that two Pathitems with two linear gradients that only differ in the spread mode can reuse the same material. That would be wrong. Change-Id: I34ad1b74ec8f98ec3a11d6a2565e0a7e5ae3673a Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * | | | | | | Add a PathItem autotest for the declarative APILaszlo Agocs2017-03-302-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I276c185c93122e5eb05ef6678ab62fa6928f2523 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * | | | | | | PathItem docs for the declarative APILaszlo Agocs2017-03-305-17/+447
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add the missing property for disabling vendor extensions like NVPR. Change-Id: Id7dfe245305c8ecdfad87359894e7f496c4100d0 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * | | | | | | Fix async PathItem results not always showing upLaszlo Agocs2017-03-281-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ie8eb1dd5ea8a560f8160384637cc5d76e3bb7c60 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * | | | | | | Fix for disappearing VisualPath entries in generic PathItemLaszlo Agocs2017-03-171-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prevent internal overflows in tesselation due to 100x scale and keep the correct scenegraph node - VisualPath entry associations. Change-Id: I181eae6872ea5c5af5783b68a8757a5249c074e5 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * | | | | | | Merge remote-tracking branch 'origin/dev' into wip/scenegraphngLaszlo Agocs2017-03-01216-3935/+7643
| | | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Iba540adaeffb0098fc4e1923050eb611bf47287b
| | | * | | | | | | | JS API for defining static paths and draw paramsLaszlo Agocs2017-01-279-89/+938
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to avoid the over head of one QObject for each VisualPath, Path and PathXxxx element, provide an optional JavaScript API. PathItem { VisualPath { strokeWidth: 4; fillColor: "blue"; dashPattern: [ 1, 2, 3, 4]; capStyle: RoundCap path: Path { PathMove { x: 100; y: 200 } PathLine { x: 300; y: 300 } } } can now also be written as, at least when the path and the stroke/fill params are static and do not need changing/animating later on: PathItem { Component.onCompleted: { var path = newPath(); var sfp = newStrokeFillParams(); path.moveTo(100, 200); path.lineTo(300, 300); sfp.strokeWidth = 4; sfp.fillColor = "blue"; sfp.dashPattern = [ 1, 2, 3, 4 ]; sfp.capStyle = VisualPath.RoundCap; appendVisualPath(path, sfp); commitVisualPaths(); } } In order to emphasize the difference from an imperative API (like context2d), keep the path and the path stroke/fill parameters separate. To preserve our sanity, extras like gradients are not mapped to JavaScript, instead, one still references an QML-defined object from properties like fillGradient. The objects from newPath() and newStrokeFillParams() are reusable by calling clear(). This avoids the need for multiple temp objects when there are multiple paths. Add a simple test and a hidden stress test with the tiger to the manual test. Change-Id: I3b1e275bacf8c8fc52f585fbed5d6f9354d5ae8e Reviewed-by: Andy Nichols <andy.nichols@qt.io>