aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/scenegraph
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | Add a method to query the scene graph backendMichael Brüning2017-04-272-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since 5.8, it has been possible to set the scene graph backend using QQuickWindow::setSceneGraphBackend instead of using the environment variables. This caused some trouble with modules that need to know which backend is used and relied on the environment variables or command line options for getting this information. One example of such a module is Qt WebEngine, which crashed because it ended up trying to use OpenGL resources with the Qt Quick scenegraph software backend. Task-number: QTBUG-60232 Change-Id: Ia7c4860b16a9ce6fe9af73dfe5a5d2d19ebf5bfd Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | | | | | | Run includemocs in qtdeclarativeThiago Macieira2017-04-2619-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I84e363d735b443cb9beefffd14b8c023a37aa489 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | | | | | | Support for Q_OS_ANDROID_EMBEDDED and android-embedded buildsOtto Ryynänen2017-04-252-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A Native Android build (Boot to Qt Android injection) is defined by having both Q_OS_ANDROID and Q_OS_ANDROID_EMBEDDED flags defined, as well as having Qt config android-embedded. This commit enables the possibility to build native Android builds (i.e. Qt build for Android baselayer only, without JNI) Change-Id: I1007eb010545374038e2d09a053fe25f884efeba Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
| * | | | | | | QSGBatchRenderer: Fix a performance regression noted by qmlbenchRobin Burchell2017-04-241-11/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0a88774a0f11bf96a87012ac4a83e31ced19460b switched from using client side pointers to VBOs, ostensibly for core profile support. Unfortunately, some GPUs/drivers seem to suffer quite a bit with these, so only use them if we must. Results for changing_over_isolated_with_clip_rotated.qml: eskil_linux_tx1: Before: Average: 65.6 frames; using samples; MedianAll=65; StdDev=0.894427, CoV=0.0136346 After: Average: 120 frames; using samples; MedianAll=120; StdDev=0, CoV=0 eskil_linux_focault (nvidia) has a similar regression in all branches where the original commit is present, too: 5.6 & v5.8.0 tag: 600 5.8, 5.9 & dev branches: 399 Assuming this is the sole regression in that case and we end up at the original 600 again, that would be a 50% gain there, and an 81% increase on TX1. Change-Id: I44af9e67698356200f9587e77c9409fdb756519d Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* | | | | | | | Add a include to fix build for qsgshaderrewriter.cppLiang Qi2017-04-261-0/+1
| |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the change, 164392548e3e1c7526d4eef4896748ef5162cf2d, in qtbase. Task-number: QTBUG-60411 Change-Id: I23db9dbe185f389c042e7039963bf0dae97d197a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | | | | | | Merge remote-tracking branch 'origin/5.9' into devLars Knoll2017-04-223-2/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I95266fdaf5c6dc65969bd2e28403da7969367d32
| * | | | | | Silence GCC 7 warnings about implicit fallthrough in Qt codeThiago Macieira2017-04-203-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This only deals with Qt code. MASM has a lot of those left. We should just update from upstream instead to get the fixes. qv4regalloc.cpp:660:52: warning: this statement may fall through [-Wimplicit-fallthrough=] if (leftSource->type == DoubleType || rightSource->type == DoubleType) { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ qv4regalloc.cpp:666:13: note: here case OpBitAnd: ^~~~ Change-Id: I7814054a102a407d876ffffd14b6b0e2d6b03689 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | | | | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-04-211-0/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ibed6ee74d36b4ce37391c82db00a0abd30d09e7a
| * | | | | | Add \since to QSGTexture::AnisotropyLevelFriedemann Kleint2017-04-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Amends change 5ef3265cd46de6579399562429e26961d6f13885. Change-Id: I6c75273e45e235084e5aea53e83669bab85798ee Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* | | | | | | Merge remote-tracking branch 'origin/5.9' into devSimon Hausmann2017-04-113-0/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I95914046889022e0ef9bdc17338dc5895c5223fe
| * | | | | | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-04-113-0/+3
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ib3d81ad33a6ba28d891da91271a64d5fcc4874e6
| | * | | | | | Fix hidpi support for opengl window grabbingFilipe Azevedo2017-04-093-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now set the QImage devicePixelRatio so the content is correct on all screens. Task-number: QTBUG-53795 Change-Id: If94edf901da1285afe9bb847b8973d568a2b7082 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | | | | | | Merge remote-tracking branch 'origin/5.9' into devSimon Hausmann2017-04-073-0/+8
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/jit/qv4assembler.cpp src/qml/jit/qv4assembler_p.h src/qml/jit/qv4isel_masm.cpp src/qml/jsruntime/qv4vme_moth.cpp Change-Id: I865d794e550a263387a39ca8d051ebf48b70cbc0
| * | | | | | | Doc: add new enumeration descriptionsNico Vertriest2017-03-303-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qsgmaterial.cpp:416: warning: Undocumented enum item 'DirtyCachedMaterialData' in QSGMaterialShader::RenderState::DirtyState qsgmaterial.cpp:416: warning: Undocumented enum item 'DirtyAll' in QSGMaterialShader::RenderState::DirtyState qsgnode.cpp:104: warning: Undocumented enum item 'DirtySubtreeBlocked' in QSGNode::DirtyStateBit qsgnode.cpp:139: warning: Undocumented enum item 'RenderNodeType' in QSGNode::NodeType qsgengine.cpp:75: warning: Undocumented enum item 'TextureIsOpaque' in QSGEngine::CreateTextureOption Change-Id: Ia51d414151e42eddc5fa1198d3bad3ecbc20e30a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | | | | | | Document that wrap modes do not work with atlas texturesGunnar Sletta2017-04-041-0/+2
| |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ifa417644e10b947c4ca0b9c518cfd800b63142b5 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | | | | | Merge remote-tracking branch 'origin/5.9' into devSimon Hausmann2017-03-272-8/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/jsruntime/qv4functionobject_p.h Change-Id: I4bbed45f1fe02cf64df3c8a5f92f811e38e772f3
| * | | | | | Merge remote-tracking branch 'origin/5.8' into 5.9Simon Hausmann2017-03-152-8/+5
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/compiler/qqmltypecompiler.cpp src/qml/compiler/qqmltypecompiler_p.h src/qml/qml/qqmltypeloader.cpp src/qml/qml/qqmltypeloader_p.h Change-Id: I4894555ab7a0879b56bbda7a46d16d1c40c19e7c
| | * | | | | Doc: Removed non-working reimplementation suggestionsChristoph Sterz2017-03-152-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QSGSimpleMaterialShader::uniformMatrixName() and QSGSimpleMaterialShader::uniformOpacityName() cannot be reimplemented since they are non-virtual. Removed the suggestion, so nobody is tempted to do so. Added a Remark in the header to fix towards intended behavior in Qt6. Change-Id: Id23c8d54728095f143f1d0e0520590303cff91a0 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com> Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* | | | | | | Remove QSGDistanceFieldGlyphCacheManagerRobin Burchell2017-03-2114-180/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After the previous cleanups, it became clear that this didn't serve much of a purpose, so let's remove it and simplify the implementation as a result. Change-Id: Iae2ff9c46762f0c7bdf4225a2c4df93bc8253902 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | | | | | QSGDistanceFieldUtil: Remove a layer of indirectionRobin Burchell2017-03-213-49/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These mysterious setters appear to be unused (and always were, as far as I can see). How useful they are is not entirely clear (as opposed to a patch to the source for instance, and as it's private API anyway, you'd be touching internals to use this. Additionally, removing the indirection makes the code a bit cleaner and more self-contained in my opinion. This removal leaves the value of QSGDistanceFieldGlyphCacheManager in some question to me, given that it's basically a glorified wrapper around QHash. Change-Id: I6d18eb40d8cd00ebe389b4ed53448f3401962ae6 Reviewed-by: Gunnar Sletta <gunnar@crimson.no> Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | | | | | QSGDistanceFieldGlyphNode: Remove per-node QLinkedList of nodes to deleteRobin Burchell2017-03-154-13/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We avoided deleting these nodes directly due to preprocess, but this is a bit of a hack. QSGRenderer::preprocess already contains some work to allow for modification of nodes at preprocess time, but it didn't allow for detecting dead nodes. By marking a pointer as not to be touched if it is removed during preprocess, we can remove the per-node QLinkedList and delete directly, while at the same time, still not touching deleted nodes later on in preprocess. Change-Id: I99a1ea65d3fe0b73db73e4a1d10d999d56edcdc4 Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* | | | | | | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-03-144-4/+158
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I0ec164ce6e8099e6e4d6b40a3c7340737473ef4b
| * | | | | | QtQuick scene graph: fix text native renderingOleg Yadrov2017-03-092-0/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only 65536 vertices (65536 / 4 = 16384 characters) can be drawn in one draw call. This is why QSGDistanceFieldGlyphNode (renderType: Text.QtRendering) creates subnodes if number of characters exceeds that limit. QSGDefaultGlyphNode (renderType: Text.NativeRendering) missed that logic for some reason. Task-number: QTBUG-58852 Change-Id: I88b3fcdb8e56bc92622d3347cd638634d43df138 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * | | | | | Software: Flush whole window on Expose eventAndy Nichols2017-02-282-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The software render loop updates the window content via either an expose event or an update event. An expose event should always flush the entire backingstore, but previously only the newly updated region would be flushed. The first time a window is exposed this is fine because the whole scene would be rendered, but when hidden and shown again, the software renderer might show that nothing has changed, and nothing would be flushed. A new flag has been added that forces a full window flush for an expose event. Task-number: QTBUG-59177 Change-Id: I3700bbcc76bc97be4eb0c822e2945ebef339f11a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | | | | | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-03-022-6/+7
|\| | | | | | | |_|_|_|_|/ |/| | | | | | | | | | | Change-Id: I6cbd83b61fac34c2ba6936711289ec09a490719a
| * | | | | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-242-6/+7
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/compiler/qv4ssa.cpp src/quick/accessible/qaccessiblequickview_p.h src/quick/items/qquickmousearea.cpp src/quick/util/qquickanimatorjob.cpp tools/qmlplugindump/main.cpp Change-Id: I84474cf39895b9b757403971d2e9196e8c9d1809
| | * | | | Quick: Check fbo msaa related extensions via QtGuiLaszlo Agocs2017-01-312-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GL_EXT_xxxx is not sufficient here. QOpenGLFunctions already has support for the ANGLE and some other variants of the framebuffer multisample and blit extensions, so use that instead of the manual checks. Change-Id: I2d8e0850d3b0b9a9cfd9e55aa38adad07a0ba45d Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* | | | | | sources: Add missing override and remove redundant virtualAlexander Volkov2017-02-2313-56/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I48e26b1491024d41ebf75d40f0d1a7e9a1b20f22 Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | | | | Add samples property for Item.layer and ShaderEffectSourceLaszlo Agocs2017-02-234-5/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Qt Quick] Added the properties ShaderEffectSource.samples and Item.layer.samples to allow requesting MSAA rendering of an item subtree, without enabling multisampling for the entire scene. Task-number: QTBUG-58945 Change-Id: I9102cfabba10d4dc1e7ad2aa0b258ada6d9a5a47 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* | | | | | Merge "Merge remote-tracking branch 'origin/5.9' into dev" into refs/staging/devLars Knoll2017-02-151-1/+1
|\| | | | |
| * | | | | Doc: added doc for parameter windowNico Vertriest2017-02-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Undocumented parameter 'window' in QSGRendererInterface::getResource() Change-Id: I13cd520ad0b06abe1ad76be7aec83eae5c3e4d7c Reviewed-by: Martin Smith <martin.smith@qt.io>
* | | | | | dynamic_cast -> qobject_cast for QObjectDerived*Robin Burchell2017-02-142-6/+6
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot use dynamic_cast in Qt. Change-Id: Ia6aeeb2439ca8c24239dce7cff55a0c18860e43e Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* | | | | Add fixes for INTEGRITYKimmo Ollila2017-01-311-49/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Full definitions of types are needed in static_casts. Change-Id: I028ffc40a76cdb16cb297a181b3d9dfe9d09c945 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | | Use independent buffer for indicesJesus Fernandez2017-01-272-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WebGL does not support using the same buffer for vertices and indices. Change-Id: I362e1cb8e10dc2b4b99f6ce7161c4e3ce8a6f707 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | | | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-261-7/+0
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/quick/util/qquickutilmodule.cpp tools/qmllint/main.cpp Change-Id: Ic2283f88c293ca7fc776de3e83eb4c7812309d8a
| * | | | Remove documentation references to internal functionsKavindra Palaraja2017-01-131-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QSGOpacityNode::combinedOpacity() and QSGTransformNode::combinedMatrix() are intended to be internal. Task-number: QTBUG-53897 Change-Id: Icc73476eb8af5cdc673f7ce9bacd25ecc75202b5 Reviewed-by: Robin Burchell <robin.burchell@crimson.no> Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* | | | | Add anisotropic filtering support to QSGTexturePaolo Angelelli2017-01-258-2/+94
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support to switch on anisotropic filtering on QSGTexture and to QSGDefaultImageNode. Not adding this support to QSGImageNode since it became public in 5.8, and it does not allow additional virtual methods anymore. Change-Id: Ibf1744845df2297f9129b1b5ce6a69d0a3b31c7c Reviewed-by: Andy Nichols <andy.nichols@qt.io> Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* | | | Remove remnants of blackberry platform supportRobin Burchell2017-01-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The last remnants were removed from qtbase in 5.7 making this all dead code, so match here too. Change-Id: I10f3f1c614562f2a97ade7cdf5002065d6f79e07 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-142-5/+32
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I9d87ed86e95b5901a86cc3aa65d7ac39b0b708c2
| * | | Fix projection matrix for DepthAware QSGRenderNodesLaszlo Agocs2017-01-121-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unlike renderUnmergedBatches(), renderRenderNode() did not adjust the projection matrix. Change-Id: Ib5a7183a3623d35c85af47205cc22187bad89409 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| * | | Propagate root changes to rendernodes tooLaszlo Agocs2017-01-121-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise weird things will happen once a node gets turned into a batch root and the rendernodes in the child subtree still refers to their old root. Change-Id: I42b0ba514c2fbeed833f0f665e49b275c19b5686 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| * | | Update QSGRenderNode docs to match realityLaszlo Agocs2017-01-121-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Scissor and stencil tests are not actually enabled when invoking render(), meaning rendernode implementations do not clip by default. This has been documented when making the class public in 5.8, but the older list with the OpenGL states still contains contradictory entries which are false since Qt 5.2 or so. Change-Id: I46875b11322585d40962db2c4302602a1410a7b9 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| * | | Fix stencil clips with core profile contextsLaszlo Agocs2017-01-041-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Client-side pointers are not supported. Start using a VBO instead. Task-number: QTBUG-57768 Change-Id: Ia7ac9b0838d837b02e8bf99fcd22f0373cb357c9 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | | | QSGThreadedRenderLoop: Correctly stop the animation timer ...Robin Burchell2017-01-122-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... when destroying the last window while it is still visible. For the case of windowDestroyed(), the QQuickWindow can still be isVisible true and isExposed true. Given these circumstances, we would not stop the timer (assuming that we needed to keep it running), but this is actually wrong when we are evaluating a timer change depending on the window being destroyed. By calling startOrStopAnimationTimer again, after the window has been removed from m_windows, we will successfully stop the timer -- the only cost being an unnecessary polish event being sent from the first call (which will be ignored). Task-number: QTBUG-58091 Change-Id: I043ce5d88eafee15019e1c8d41c06d531d1da059 Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* | | | QSGNodeVisitorEx virtual destructorPier Luigi Fiorini2017-01-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QSGNodeVisitorEx has virtual methods and accessible non-virtual destructor. Change-Id: I38ebfb07acee4aa433623db5f623ced03995f442 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* | | | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-12-252-0/+2
|\| | | | |_|/ |/| | | | | | | | | | | | | | Conflicts: tools/qmlimportscanner/main.cpp Change-Id: I01e17581f6691a03f83788773364d0cf96319514
| * | Q_CHECK_PTR QSGGeometry allocationsUlf Hermann2016-12-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | We want to cleanly crash if they fail, rather than return a null pointer from vertexData(). Change-Id: Ie88adaa9f0977c70ef4a47a59463509dcd15bdcf Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * | Q_CHECK_PTR the result of malloc() in batch rendererUlf Hermann2016-12-201-0/+1
| | | | | | | | | | | | | | | | | | | | | We want to cleanly crash if it fails. Change-Id: Ib32d3d6ae0c5d58e0a954e55adca8b2c4081a7f5 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* | | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-12-1423-119/+169
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/qmltooling/qmldbg_debugger/qv4debugjob.cpp src/plugins/qmltooling/qmldbg_inspector/globalinspector.cpp src/plugins/qmltooling/qmldbg_nativedebugger/qqmlnativedebugservice.cpp src/qml/qml/qqmlimport.cpp src/quick/items/context2d/qquickcontext2dtexture_p.h tools/qmleasing/splineeditor.h Change-Id: I8f6630fcac243824350986c8e9f4bd6483bf20b5
| * | Get rid of most QT_NO_FOO usagesLars Knoll2016-11-2917-69/+69
| | | | | | | | | | | | | | | | | | | | | | | | Instead use QT_CONFIG(foo). This change actually detected a few mis-spelled macros and invalid usages. Change-Id: I06ac327098dd1a458e6bc379d637b8e2dac52f85 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>