aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmlworkerscript/qquickworkerscript_p.h
Commit message (Collapse)AuthorAgeFilesLines
* CRA review: mark workerscript subfolderFabian Kosmale2025-09-161-0/+1
| | | | | | | | | | | | | | - Mark the global heades as insignificant, they don't contain any logic. - Mark qv4serialize as critical: String data that might get passed to a worker script might come from an untrusted context, and thus the serialization process needs some basic care. - Evertything else gets the default significant marker to indicate that it has been reviewed. Pick-to: 6.10 6.9 6.8 Fixes: QTBUG-136209 Change-Id: Ib820d551f687cbd41f0306d39552e55e8642a2b3 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QtQml: Allow remote JavaScript files in WorkerScriptUlf Hermann2025-06-171-3/+5
| | | | | | Fixes: QTBUG-19407 Change-Id: I482689396db82332e50c41e6404d58376f4dc118 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QtQml: Add a wrapper builtin for QQmlV4Function*Ulf Hermann2024-04-121-2/+1
| | | | | | | | | This way qmltyperegistrar can recognize it and refrain from warning about it. Task-number: QTBUG-101143 Change-Id: I598140e7e90dbd3e27a78c26eff3d46f0fd3e989 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Remove the use of Q_QMLWORKERSCRIPT_PRIVATE_EXPORTAlexey Edelev2024-01-091-1/+1
| | | | | | Task-number: QTBUG-117983 Change-Id: I80c13c1b85124a5020297f53badff4534befd47b Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Remove all QML_DECLARE_TYPE from src and toolsUlf Hermann2023-11-181-2/+0
| | | | | | | | They are generally not useful for anything. Change-Id: I12e959ce9338e6eb7465633496c7921fa09a3fe8 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-111-38/+2
| | | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix life cycle methods for some QML-exposed typesUlf Hermann2021-07-141-0/+1
| | | | | | | | | Follow the rule of 5: Drop empty dtors, and add Q_DISABLE_COPY_MOVE where we do need an explicit dtor. Change-Id: Icbb9d87e1087c69b1cf1f18062a496c148935783 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* Privately export all QML-exposed typesUlf Hermann2021-07-131-1/+1
| | | | | | | | We need to be able to access them from C++. Pick-to: 6.2 Change-Id: I2b7b823cbb36866240d194e877a3dd49f5d2f350 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-03-091-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/compiler/qqmlirbuilder_p.h src/qml/qml/qqmlpropertycachecreator_p.h src/qmltyperegistrar/qmltypesclassdescription.cpp src/qmltyperegistrar/qmltypesclassdescription.h src/qmltyperegistrar/qmltypescreator.cpp src/quick/items/qquicktext_p.h src/quick/util/qquickvaluetypes_p.h Change-Id: Ic209741592e7b85820bf3845722023a190ebc1c5
| * Revision properties and methods added in 5.15Ulf Hermann2020-02-271-2/+2
| | | | | | | | | | Change-Id: I00e3f9535e819d9d0d547c9d3cf50be469cf9339 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* | Add major version to all Q_REVISIONsUlf Hermann2020-02-191-0/+1
|/ | | | | Change-Id: Id72fbe10c16de61bd847773d0055d83cfe03f63c Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Synthetically reference type registration functionsUlf Hermann2020-02-041-1/+1
| | | | | | | | | | | | | | | | | | | | | Add unused volatile pointers to the type registration functions in each import plugin. We need to do this in order to prevent the linker from optimizing the registration away. There are two ways for this to happen: When linking statically, the linker will examine the referenced symbols on a per-object base and leave out all unreferenced objects. When linking dynamically, the linker may do the same on a per-library base and drop any unreferenced libraries from the dependencies. Forcing a reference to the type registration function prevents both. The volatile technique allows us to remove the previous qCDebug() hack. Having an unused volatile auto variable should only result in a single memory read as runtime overhead. The qCDebug() technique would generate a read and a block of mostly dead code (as no one would ever use that logging category). Fixes: QTBUG-81622 Change-Id: I255667276dfd355b19baa17b1aad3db406bf1954 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Force models and workerscript plugins to link their librariesUlf Hermann2020-01-301-1/+2
| | | | | | | | | | | | | Some linkers can determine that we don't use any symbols from the QtQmlModels and QtQmlWorkerScript libraries in the respective plugins and avoid to link the libraries into the plugins. That means, when loading the plugins, the types are not registered. We avoid that by adding a debug message that accesses a symbol of the library to each plugin. Change-Id: I3d946259df96382a3751eaafa12cbdd3d830c139 Fixes: QTBUG-81721 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* src/qmlworkerscript: Add ready property to WorkerScriptMaximilian Goldstein2019-12-061-0/+5
| | | | | | | | | | | Previously it was impossible to determine whether a WorkerScript has been fully initialized. This commit introduces a ready property that allows outside Components to determine whether it is safe to send signals. Fixes: QTBUG-80413 Change-Id: I2a1892b5e759e317de791e71d79fbb0cbd320dd3 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Specify parameters of type registration in class declarationsUlf Hermann2019-09-261-0/+1
| | | | | | | | | | | | | | | | | | | | | Using this technique we can automatically register all necessary revisions and minor versions of a type, using the metaobject system. This greatly reduces the potential for mistakes and resulting incompatibilities between versions of imports. We assume that for each type we need to register all revisions of its super types and its attached type, and that the revisions match. That is, if you import version X of type A, you will also get version X of its attached type and of any super types. As we previously didn't take these dependencies into account when manually registering the types, a number of extra revisions are now registered for some types. Potentially, we can now generate the qmltypes files at compile time, using moc. Change-Id: I7abb8a5c39f5e63ad1a0cb41a783f2c91909491b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Move workerscript to its own moduleUlf Hermann2019-05-061-0/+123
Change-Id: I778cfe842ddf1c600a837d8f2061a338887eed95 Reviewed-by: Lars Knoll <lars.knoll@qt.io>