aboutsummaryrefslogtreecommitdiffstats
path: root/tools/qmlscene
Commit message (Collapse)AuthorAgeFilesLines
* Remove the qmake project filesFabian Kosmale2021-01-151-12/+0
| | | | | | | | | Remove all qmake project files, except for examples which are used to test that qmake continues to work. Change-Id: Ic4abb72dc2dcd75df7a797c56056b6b3c5fe62ac Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* CMake: Regenerate projects to use new qt_internal_ APIAlexandru Croitor2020-10-062-6/+6
| | | | | | | | Modify special case locations to use the new API as well. Task-number: QTBUG-86815 Change-Id: I3b964e3baf0cc7040830156dac30358ea1152801 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Fix additional warnings from usage of deprecated APIsVolker Hilsheimer2020-09-161-2/+2
| | | | | | | | Replace QLibaryInfo::location with QLibraryInfo::path, and remove usage of Qt::AA_EnableHighDpiScaling, which doesn't have any effect anymore. Change-Id: I347e8a83e0f4c2b4405f2512e569ad3234f05a98 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Remove use of deprecated High-DPI application attributesTor Arne Vestbø2020-09-021-6/+0
| | | | | Change-Id: Ibfb50fdcbb51ba93d6e5d11f9e8ce0e7b3bfde79 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* CMake: Regenerate projectsAlexandru Croitor2020-07-092-6/+8
| | | | | | | | | We need the qt_add_tool changes to successfully configure qemu builds. The rest of the changes are just to be in sync with the .pro files. Change-Id: I7bcc08ac58f57a5761aedef09761428c55235289 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Clean up QT_CONFIG(opengl)Paul Olav Tvete2020-06-171-8/+1
| | | | | | | | | | Accelerated graphics is now possible without OpenGL support. With this change, a Qt build with -no-opengl can still run Qt Quick with a Vulkan, Metal, or Direct3D backend. Fixes: QTBUG-84027 Change-Id: Ib63c733d28cfdf7de16b138df136fa7628e1747b Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* QQuickWindow: Remove (set)ClearBeforeRenderingLaszlo Agocs2020-06-161-1/+0
| | | | | | | | | | | | | | | | | | The doc update reveals that this setting has been ignored with the RHI always, and there is no plans (or ways) to support this. As the beforeRenderPassRecording() signal documents, connecting to that signal is effectively an alternative to disabling clearing the color buffer. (because it allows the application to execute custom GL or other calls after the clear but before the rest of Qt Quick's rendering) Therefore, remove the clearBeforeRendering flag from Qt 6. [ChangeLog][Qt Quick][QQuickWindow] setClearBeforeRendering() and clearBeforeRendering() are removed. Change-Id: I6a0a6f56552331923f2e07390e2f33f58c6c31e0 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Remove the now unneeded moc include from qmlsceneLaszlo Agocs2020-06-101-2/+0
| | | | | Change-Id: Ieb8859c3695aa005a7d66476ac398142bbf22464 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Remove openGLContextCreated signalLaszlo Agocs2020-06-101-36/+0
| | | | | | | | | | | | | | | | No reason to have this in the API in 6.0, and it's already not emitted at all in dev (because the direct OpenGL code path is now gone from the render loops) Some simple GL string printing has been removed from qml/qmlscene. This opt-in feature has not been useful in practice anyway since QSG_INFO=1 prints the same things. [ChangeLog][Qt Quick][QQuickWindow] The openGLContextCreated signal has been removed from QQuickWindow. Change-Id: Ifb647bbd1e828ebad2b775e8ce5c38723a0cda13 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* CMake: Regenerate qtdeclarative/toolsAlexandru Croitor2020-05-292-0/+2
| | | | | | | | Includes - A bunch of TARGET_DESCRIPTION Change-Id: I6acfe05187afbdd45cf7e1bf8634f1554a51c791 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: Regenerate and adapt to merge from devwip/cmakeAlexandru Croitor2020-03-122-8/+6
| | | | | | Change-Id: If8daa6152a563d4309d7342414780ef75b9f5589 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Leander Beernaert <leander.beernaert@qt.io>
* Merge remote-tracking branch 'origin/dev' into wip/cmakeAlexandru Croitor2020-03-121-1/+2
|\ | | | | | | | | | | | | | | Conflicts: dependencies.yaml src/qml/qml/qqmlengine.cpp Change-Id: I6a73fd1064286f4a2232de85c2ce7f80452d4641
| * Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-02-171-1/+2
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/qtqml/plugin.cpp src/qml/qml/qqml.h src/qml/qml/qqmlmetatype.cpp src/qml/qml/qqmlmetatype_p.h src/qml/qml/qqmltypeloader.cpp src/qml/types/qqmlbind.cpp src/quick/items/qquickitemsmodule.cpp tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp Change-Id: I52548938a582cb6510271ed4bc3a9aa0c3c11df6
| | * Add QML_CORE_PROFILE support to QML toolThomas Hartmann2020-02-061-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If QML_CORE_PROFILE is defined we use the CoreProfile surface format. This is required for QtQuick3D. For consistency we also introduce QSG_CORE_PROFILE. Adding QSG_CORE_PROFILE also to qmlscene. Change-Id: I4feee91740162cf36fa2668695b74f5a1279bb89 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | Merge remote-tracking branch 'origin/dev' into wip/cmakeAlexandru Croitor2020-01-291-1/+1
|\| | | | | | | | | | | | | | | | | | | | Conflicts: dependencies.yaml Change-Id: Ie3e9dc62031a85e5e81cbdf04694b95159d49fca
| * | Quick: Don't qualify OpenGL includesUlf Hermann2020-01-271-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | The headers are moving from QtGui to QtOpenGL. By avoiding the qualification we can keep them compiling either way. Also, add opengl-private to make the types available. Also removed the QGraphicsRotation hack to get access to the projected rotation function of QMatrix4x4. The function is public now. Task-number: QTBUG-74409 Change-Id: I216e8ca09f8e247f96627b081308e3a57c55c29c Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Regenerate all projects with new CMake API versionAlexandru Croitor2019-11-152-6/+6
| | | | | | | | | | | | Change-Id: Ie0db35f674137c229eaf049616f38f8e818f7092 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Regenerate projectsAlexandru Croitor2019-11-142-2/+0
| | | | | | | | | | | | Change-Id: I38044c382e4d84b5865a19cdd04cc8922bd72a77 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge remote-tracking branch 'origin/wip/qt6' into wip/cmakeAlexandru Croitor2019-07-111-34/+61
|\| | | | | | | Change-Id: I2963c1209316fb6755f572969f368970450d7991
| * Add the graphics api independent scenegraph portLaszlo Agocs2019-07-041-11/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Opt in via environment variables: QSG_RHI=1 -> enable using QRhi instead of GL QSG_RHI_BACKEND -> set to vulkan, metal, d3d11, gl to override the default (the default is d3d11 on Windows, metal on Mac, gl elsewhere) Or force a given rhi backend via the existing QQuickWindow::setSceneGraphBackend(). Otherwise the default behavior is the same as before, the rhi code path is never active by default. -no-opengl builds are supported in the sense that they work and default to the software backend. However, the rhi code path cannot currently be used in such builds, even though QRhi from qtbase is fully functional with Vulkan, D3D, or Metal even when qtbase was configured with -no-opengl. This cannot be utilized by Quick atm due to OpenGL usage being all over the place in the sources corresponding to the default backend, and those host the rhi code path as well. This will be cleaned up hopefully in Qt 6, with the removal all direct OpenGL usage. Other env.vars.: QSG_RHI_DEBUG_LAYER=1 -> enable D3D debug or Vulkan validation layer (assuming the system is set up for this) QSG_RHI_SHADEREFFECT_DEBUG=1 -> print stuff from ShaderEffect QSG_SAMPLES=1,2,4,... -> MSAA sample count (but QSurfaceFormat works too) QT_D3D_ADAPTER_INDEX=0,1,... -> D3D adapter index QT_VK_PHYSICAL_DEVICE_INDEX=0,1,... -> Vulkan physical device index QSG_RHI_UINT32_INDEX=1 -> always use uint index data (both merged/unmerged, convert when needed - with some rhi backends this is implicit) QSG_RENDER_LOOP -> to override the render loop as usual. The default with RHI is threaded for Metal, threaded for Vulkan on Windows, basic for Vulkan on Linux and Android (to be checked later), while the existing rules apply for OpenGL. Not supported when running with QRhi: - particles - compressed atlases (though this is transparent to the apps) - QSGRenderNode - QQuickRenderControl - QQuickFramebufferObject - certain QQuickWindow functionality that depends directly on OpenGL - anisotropic filtering for textures - native text may lack some gamma correction - QSGEngine applicability unclear - some QML profiler logs may be incorrect or irrelevant Change-Id: I7822e99ad79e342e4166275da6e9e66498d76521 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-07-011-21/+23
| |\ | | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/imports.pro src/qml/qml/qqmlmetatype.cpp Change-Id: I308436caf55402cb2246cb591c6ac8f83e1febf8
| | * Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-06-281-21/+23
| | |\ | | | | | | | | | | | | Change-Id: I59343fe228ca6b823b61577e5a0907e7381899c2
| | | * qmlscene: Fix setting of the default surface formatJoni Poikelin2019-06-251-21/+23
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-76603 Change-Id: I2977117dcaf45345c14599e0b38cb4a242ee449b Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| * | | qmlscene: Avoid infinite loopUlf Hermann2019-06-261-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the root document doesn't contain any executable code, we should terminate with an error message rather than loop forever. Change-Id: Ice2ff10ae5dc9d71df2d1c784597393695ab1d98 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * | | Convert uses of QTime as a timer to QElapsedTimerEdward Welbourne2019-06-121-2/+2
| |/ / | | | | | | | | | | | | | | | Change-Id: Ia34d3980e48d2978c8c77e65b1ee2aa7f71fd985 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* / / Port the declarative toolsAlexandru Croitor2019-06-082-0/+75
|/ / | | | | | | | | | | | | | | | | Also fix up QmlDevTools module to not depend on QtQml, but instead make it include the headers / cpp files as it is done in the qmake project. Change-Id: I240c52d5357db150a7c0c819892fb0a3708ceee4 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-04-191-2/+4
|\| | | | | | | Change-Id: I9ef4be23bfe35aa48d4c65d4159e72c527943845
| * Merge remote-tracking branch 'origin/5.12.3' into 5.12Qt Forward Merge Bot2019-04-171-2/+4
| |\ | | | | | | | | | Change-Id: Ie2e6a4af1953cb5d7965b95090d369e7433ceb85
| | * Fix qmlscene command parsingv5.12.3Thomas Hartmann2019-04-081-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | If "QMLSCENE_CORE_PROFILE" is set the command line parsing does not work anymore. Change-Id: I75ffa733562708a412d1ae341b24d1f3bb35c034 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* | | Merge remote-tracking branch 'origin/5.12' into 5.13v5.13.0-beta3Qt Forward Merge Bot2019-04-151-0/+7
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/masm/assembler/LinkBuffer.h src/qmltest/doc/src/qtquicktest-index.qdoc tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp Change-Id: I7d83ad95cf489dda794dd7a0a33bad3ef3b05609
| * | Add support for selectors to qmlsceneThomas Hartmann2019-04-091-0/+7
| |/ | | | | | | | | | | | | | | This allows to use qmlscene together with file selectors. Task-number: QDS-589 Change-Id: Icf613c938bfc2c56b33a36ab2da32c3c54b498a2 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-04-021-9/+15
|\| | | | | | | Change-Id: I1dd04210f10895c509b5c637fc5e2dcf66e3bb91
| * add core profile environment variableTim Jenssen2019-04-011-1/+2
| | | | | | | | | | | | | | | | | | | | Enables 3druntime scenes at macOS without calling it with extra process arguments. Task-number: QDS-553 Change-Id: I04e59f4f9061eb2a567c65406c5a8195b1896836 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
| * Fix surface format bug for macOSTomi Korpipaa2019-03-291-8/+13
| | | | | | | | | | | | | | Task-number: QT3DS-3238 Change-Id: Ie3a675ef32251481abaa460bb89bc1c4381573ea Reviewed-by: Pasi Keränen <pasi.keranen@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-12-231-3/+3
|\| | | | | | | Change-Id: I9c3d282c11a556e616c5e1ba1b51e88b741327f6
| * qmlscene: Make it explicit that QCA::installTranslator is staticKai Koehne2018-12-141-3/+3
| | | | | | | | | | Change-Id: I1b123981a9dae359c27c96d4b7ae276af1c5e90f Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-11-241-13/+3
|\| | | | | | | Change-Id: I57e4b762dcccf2f7f6e4b659f6fc8c40465d3322
| * qmlscene: Fix potential invalid memory access to QTranslatorKai Koehne2018-11-231-13/+3
| | | | | | | | | | | | | | | | Qt assumes that installed QTranslator object should remain valid for the whole lifetime of Qt, so let's create it on the heap. Change-Id: Ia99826a933eefd9952efc6556505c7f52920b483 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
| * Make QtDeclarative work for the no-thread configMorten Johan Sørvig2018-09-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Force use of the basic render loop, adapt qqmlthread and qqmltypeloader to work on a single thread. Disable components and features that require worker threads: qmldb_server, worker script, shapes, folderlistmodel, threaded render loop, software renderer. Done-with: Lorn Potter <lorn.potter@gmail.com> Change-Id: I77d965947f684f8b7d19284b5decd893395316cb Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
* | Fix feature dependencies of qmlscene and qmleasing toolsValentin Fokin2018-08-241-1/+3
|/ | | | | | | | | | Add missing guard for header include in qmlscene and skip build of qmleasing on disabled feature. This fixes build with -no-feature-action configuration. Change-Id: I3b0f248e57495bbbd9a0250300f2e3ca82a01a72 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Use QTranslator::install(QLocale, ...) everywhereKai Koehne2018-07-181-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | QTranslator::install(QLocale, ...) indirectly uses QLocale::uiLanguages(), which is the correct way to ask the system for ui languages. This was already attempted once in commit 427646b8d7, but reverted later on in commit 05d8ffb4df, because it requires shipping .qm files for the native language. Anyhow, we're shipping empty Qt translations for English since a while, and also have been fixing our examples to do so. [ChangeLog][Important Behavior Changes] The automatic translation loading in qml, qmlscene and QQmlApplicationEngine now tries to load translations for all languages in QLocale::uiLanguages(). This might require shipping an empty translation for the source language. Task-number: QTBUG-7329 Task-number: QTBUG-41977 Task-number: QTBUG-69196 Change-Id: Ifcf45b453ee9d05c018f379cc01e192d1b0a3f56 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* init variables where they are declared when possible (clang-tidy)Shawn Rutledge2018-02-261-29/+15
| | | | | | | | clang-tidy -p compile_commands.json $file -checks='-*,modernize-use-default-member-init,readability-redundant-member-init' -config='{CheckOptions: [{key: modernize-use-default-member-init.UseAssignment, value: "1"}]}' -header-filter='qtdeclarative' -fix Change-Id: I705f3235ff129ba68b0d8dad54a083e29fcead5f Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* use nullptr consistently (clang-tidy)Shawn Rutledge2018-02-261-2/+2
| | | | | | | | | | | | | From now on we prefer nullptr instead of 0 to clarify cases where we are assigning or testing a pointer rather than a numeric zero. Also, replaced cases where 0 was passed as Qt::KeyboardModifiers with Qt::NoModifier (clang-tidy replaced them with nullptr, which waas wrong, so it was just as well to make the tests more readable rather than to revert those lines). Change-Id: I4735d35e4d9f42db5216862ce091429eadc6e65d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Make qml-debug a proper featureUlf Hermann2017-11-081-1/+1
| | | | | Change-Id: Iea33ff0200f0bbf43953fedba030edf91d0f1417 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add a way to set the default render type of text-like elementsGiuseppe D'Angelo2017-08-231-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | f3446071da8357620d0c8593a04e3b4fbba88f21 introduced a build-time way to select the default render type of text-like elements. This patch adds also a way to select it at runtime, via a setter on QQuickWindow. (QQuickWindow has been chosen as convenience, rather than adding another namespace/class to just have this setter.) Given that QT_QUICK_DEFAULT_TEXT_RENDER_TYPE was never documented, I've taken the liberty of changing the accepted values for it (to match the new enumerator names in QQuickWindow, rather than the ones in QQuickText/QQuickTextEdit/etc.). [ChangeLog][QtQuick][QQuickWindow] It is now possible to set the default render type of text-like elements globally via the QQuickWindow::setTextRenderType() function. If you were using the (undocumented) QT_QUICK_DEFAULT_TEXT_RENDER_TYPE macro when building Qt Quick for the same purpose, note that the macro value needs now to be set to the "NativeTextRendering" value, instead of "NativeRendering". Change-Id: Id4b2dc3ec823971486e445ca4173b8be848fb4e3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Adjust QMAKE_TARGET_PRODUCT, QMAKE_TARGET_DESCRIPTIONKai Koehne2017-07-281-2/+1
| | | | | | | | | | The product should be Qt5 (the default). The QMAKE_TARGET_DESCRIPTION is actually less than a description but a beautified name, that is shown e.g. in the task manager, crash reporting tool etc. Make it title case, like most Windows applications do. Change-Id: I570aee2c2016e78fdb7a93c2d7a66b70fdcb0cff Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Remove custom setting of qmake VERSION field in toolsKai Koehne2017-07-281-6/+0
| | | | | | | | qt_tool.prf sets the VERSION to MODULE_VERSION by default. Also, qmake automatically makes it a quadruple for the .rc file metadata. Change-Id: Ie2d0f2022c4416ce824a6786eef4a8c461ed70f1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* qmlscene: add an option to request core profile contextsLaszlo Agocs2017-07-061-0/+9
| | | | | | | | | | | Helps for example to launch the qtgraphicaleffects testbed with a core profile context and thus exercise that path. Change-Id: Ief436ee5221e59d8a14ad74f27583b68e61eb056 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Joni Poikelin <joni.poikelin@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
* qmlscene: Add --apptype argument, allowing to specify the application classFriedemann Kleint2017-04-121-22/+50
| | | | | | | | | Make it possible to run with QGuiApplication by passing --apptype gui in a build with widgets enabled (as is already possible with the "qml" tool). Change-Id: Ifd371edc8f456c0c2800d6fb7225230f9881dc8c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Migrate to QRegularExpressionSamuel Gaist2017-04-091-7/+8
| | | | | | | | This patch updates the code base to use QRegularExpression in the place of the deprecated QRegExp class. Change-Id: I3231ac9f7902a1cd16cd4ef5f26e6cdc05e2fa4b Reviewed-by: Robin Burchell <robin.burchell@crimson.no>