summaryrefslogtreecommitdiffstats
path: root/src/Authoring/Studio/Palettes/Timeline
Commit message (Collapse)AuthorAgeFilesLines
* Switch to qt3dstudio/ogl-runtime submodulePasi Keränen2019-06-1041-5676/+0
| | | | | | | | Module config change so that ogl-runtime builds from submodule. Task-number: QT3DS-3600 Change-Id: Ib22fda6aed1cf9336f15b79256b5f9db8774159f Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>
* Correct RowTree::rowType() for materialsMahmoud Badri2019-05-242-6/+0
| | | | | | | | | | | | RowTree::rowType() retuned OBJTYPE_MATERIAL for all types of materials. now it is fixed. Also code that uses it is updated. Additionally it is renamed to objectType() which is more matching with its purpose. Change-Id: Idaccc206ab053dbfad11a06469d60bd3adc73ad7 Reviewed-by: Janne Kangas <janne.kangas@qt.io> Reviewed-by: Jari Karppinen <jari.karppinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Some CString to QString conversionsMahmoud Badri2019-05-231-1/+1
| | | | | | | | | plus some tweaks. Change-Id: I714c9fea4afcfd3f15380c2e74c11fba515ae107 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Some Doc class clean ups (non exhaustive)Mahmoud Badri2019-05-181-1/+1
| | | | | | Change-Id: I98554bdb805df0e2418f44f8c9d6e0040b160f8b Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Fix wrong timeline rows placement after a Layer copy/pasteMahmoud Badri2019-05-162-63/+29
| | | | | | | | | | | | - Material container is part of the scene graph but not the timeline. This caused wrong index to be sent from the graph to the timeline when an object is added. Fixed by keeping the material container in the timeline but hiding it. - Few relevant clean ups and removing useless code. Task-number: QT3DS-3406 Change-Id: I9ed8da3db4d935269650c00fc5b0a92349cf6fa3 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Support alpha channel initial workMahmoud Badri2019-05-022-13/+16
| | | | | | | | | | | In this initial work, all (almost) color properties are converted into a new type (float4) to support an alpha channel. Alpha channel option is shown in the color dialog for Layer and Scene background properties only. The following is remaining: - Scene background alpha doesn't work in the editor (works in the viewer RT1) Task-number: QT3DS-3128 Change-Id: Ib5540ebc8e2ff68709473451e4a92bf66ddb8ad2 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Disallow modifying default material by dragging things on itMiikka Heikkinen2019-04-022-0/+7
| | | | | | | | Task-number: QT3DS-3245 Change-Id: I0ef73c495522311527fce221fb996bdcd953353e Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Change timeline comment datatype to QStringMahmoud Badri2019-03-295-14/+13
| | | | | Change-Id: Idf27515b2e0589e228ac4fd048168281ad2246bb Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix master slide item grouping issuesv2.3.0-rc2Miikka Heikkinen2019-03-262-0/+9
| | | | | | | | | | | | Disallow grouping mixed non-master and master items. If master items are grouped, the resulting group is a master group. Disallow dragging master items under non-master items in some edge cases that still allowed it. Change-Id: Id4e18405526fb5b0f9ed17bc29e758101a19875e Fixes: QT3DS-3224 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* TimeEditDlg, DurationEditDlg fixesMahmoud Badri2019-02-261-2/+0
| | | | | | | | | | | | - Removed faulty white lines in the bottom and right sides of the dialogs. - Fixed an issue with auto focus change between text inputs in the TimeEditDlg. - Cleaned the DurationEditDlg to be similar to TimeEditDlg. Change-Id: I894f1d29cc219409e11617ed87a718848fb5a61a Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Timeline clean upsMahmoud Badri2019-01-172-56/+0
| | | | | | | | | | | | - Unify the timeline time unit to be long (milliseconds), to save the back and forth conversion between seconds/mills. Note that some parts of the code still use float, but that is out of the scope. - Remove a useless interface (ITimelineKeyframesInterface). - Remove unused code plus some tweaks here and there. Task-number: QT3DS-2850 Change-Id: Iff8e245826d6030fd5ddf3a962b4c274cef464fe Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix issues with material renamingJere Tuliniemi2018-11-301-1/+4
| | | | | | | | | | | | | | | Disable basic material renaming by removing the name property from the inspector, disabling rename from the timeline context menu and disabling double clicking of the basic material in the timeline. Refresh the inspector after rename to fix reverting to previous value. Force a reference update after a rename by emitting assetNameChanged. Task-number: QT3DS-2774 Change-Id: I4c1658ee8a4f206db90c46878e75cc0bb690956b Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Unify time bar vs. timebar textsTomi Korpipaa2018-11-131-1/+2
| | | | | | Task-number: QT3DS-2663 Change-Id: I7c799a3809acafa08bff00f7fb8af6ebbaa21e81 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Prevent "MaterialContainer" as a user-entered nameJere Tuliniemi2018-11-081-0/+16
| | | | | | | | | This name is only disabled for immediate children of the Scene object. Task-number: QT3DS-2108 Change-Id: Id57be2f9f8a78ac1ca21ebcc2199cfcaae8851ee Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
* Add Make Animatable to ref material timeline menuJere Tuliniemi2018-10-192-0/+18
| | | | | | | | | | This button automatically changes the reference material to a standard or custom material with the same properties to allow animating it. Task-number: QT3DS-2307 Change-Id: Ia3874c05b7d920c6c901455fb2b0230a559a9e2e Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Make time and duration edit dialog showing asynchronousMiikka Heikkinen2018-10-191-5/+5
| | | | | | | | | | | | These dialogs are shown in response to double click on the timeline. Showing a modal dialog in middle of mouse click handling is apparently not fine, so changed the showing to asynchronous. Task-number: QT3DS-2528 Change-Id: Ib5a9058afa205419845bfd115cc9eabedf10410c Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Change many CStrings to QStringMahmoud Badri2018-10-105-18/+18
| | | | | | | | | | | | | | - A lot of CString, CFilePath, and Qt3DSFile occureneces and their relevant code has been removed to save the costy back and forth conversion between CString and QString. - Renovated several classes as part of the process (Preferences classes, recent items, build configuration, probably few more) - Assorted tweaks here and there Task-number: QT3DS-1899 Task-number: QT3DS-2455 Change-Id: Ibbf4c3b7ab0b9fe6e19d8aed822fa29d43b99086 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Correct loading initial presentationMahmoud Badri2018-10-041-3/+0
| | | | | | | | | Also removed some unused code and minor tweaks. Task-number: QT3DS-2447 Change-Id: I9405879dd2b04df6bdfd6147fbab3e2ede11d4ef Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Change pasting logicMiikka Heikkinen2018-09-261-1/+1
| | | | | | | | | Paste should paste as a sibling of the selected object rather than as a child, if possible. Task-number: QT3DS-2352 Change-Id: I2275a1e36feb239980a5c391ecd061acc3ccf0e1 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Remove hierarchies from Referenced material dialogMahmoud Badri2018-09-261-4/+0
| | | | | | | | | | | | The select reference material dialog now only shows a compact list of existing scene materials (Standard and custom). The material's object name is also shown between parenthesis. - Small tweaks for the property linking, inspector combo box style. - Arrow on image and mesh comboboxes switch direction upon click Task-number: QT3DS-2312 Change-Id: Id9613bc7bf8b32c48be900247a0fd6aa646003ff Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix switch-cases not handling all possible valuesPasi Keränen2018-09-111-0/+2
| | | | | | | | | | Add default handling for switch cases missing it and remove the switch case related warning suppression with clang builds. Task-number: QT3DS-2243 Change-Id: Ib87d51468bbfa00284c6849363751ccb056f7eb7 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Merge branch 'master' into wip/refmaterialMiikka Heikkinen2018-08-303-0/+26
|\ | | | | | | Change-Id: I7a48e08645eb6817f1027ad9e0f9143cb11617c2
| * Visualize in-use sub-presentations on the timeline rowsMahmoud Badri2018-08-223-0/+26
| | | | | | | | | | | | | | | | | | | | | | The left-most part of a timeline row is colored for rows that have a sub-presentation in-use. If a collapsed row has a descendant with a sub-presentation, it is highlighted in a different shade of the main color. Task-number: QT3DS-2100 Change-Id: Id26fb554050e5df8c635e71266ae52665d0ad836 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* | Add a new material file formatJere Tuliniemi2018-08-271-0/+2
|/ | | | | | | | | | | | | | | | A file format with extension ".matdata" now holds material values for standard and custom materials. A hidden object is created for each layer. The hidden objects contain all the material nodes that are created from the .matdata files. The objects in the scene can refer to these hidden materials or use the previous ways provided by the editor. This commit also enables editing the original material properties from the referenced material. By default inserted object also have referenced materials including imported models. Task-number: QT3DS-2108 Change-Id: I09e97b2e14f81f66e60ec8a4d0c585f9135d7d3b Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Prohibit setting duplicate or empty object name in inspectorMiikka Heikkinen2018-08-091-8/+2
| | | | | | | | | | Changing object name from inspector now does standard automatic rename in case the parent object already has a child with the new name. Task-number: QT3DS-2050 Change-Id: Iba33d0528f7e13db83ae4db2c068042e842d65e5 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Implement "Add Layer" selection in timeline tree context menuJanne Kangas2018-08-012-0/+19
| | | | | | | | | | | | Context menu for Scene element allows adding layer (in addition to button at the timeline widget bottom. Task-ID: QT3DS-1992 Change-Id: Iaf3f02cc346dffee741c306162295768aa947719 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Enable object visibility control with Boolean DatainputJanne Kangas2018-07-315-0/+23
| | | | | | | | | | | | | Add "Visible" toggle to inspector panel with associated datainput selector, to allow choosing boolean type datainput as controller for "eyeball" property. Visibility control is indicated in both timeline and inspector panel. Change-Id: Id419c416323d0c71437599203dd9aab63df0134b Task-Id: QT3DS-2009 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Minor code cleanupMiikka Heikkinen2018-07-052-39/+1
| | | | | | | | | | Remove unnecessary IDataModelListener usage from Qt3DSDMTimelineItemBinding. Change-Id: Ie33b128ba28a1e8664c94239cbd489e6f4b32b3d Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Add support for grouping and ungrouping selected itemsMiikka Heikkinen2018-06-292-1/+27
| | | | | | | | | | | | Ctrl-G will group 2 or more selected items under a newly created group item. Same shortcut when an single group is selected will move the group's children up one level and delete the group. Task-number: QT3DS-1283 Change-Id: Ife0fa6f0c35a4d37f7e76c7233e79c9f38d98a02 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Consolidate stdafx headers into Qt3DSCommonPrecompile.hMiikka Heikkinen2018-06-1217-113/+29
| | | | | | | | | Task-number: QT3DS-256 Change-Id: I1ab44e93bf505f68690114f2a2c5f1a012e02af1 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Clean up old controlsMiikka Heikkinen2018-06-012-1/+2
| | | | | | | | | | Remove unused controls from Authoring/Studio/Controls and some ancillary files elsewhere. Task-number: QT3DS-1828 Change-Id: I6461112a02cc24ef0c169b3a99de26b034065040 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Remove old timeline codeMiikka Heikkinen2018-05-3182-10790/+13
| | | | | | | | | | | | Remove unused files and unused functionality from remaining files. Moved some still used functionality to better places. It is likely that a lot of unnecessary code still remains. Task-number: QT3DS-1828 Change-Id: I199f67e7d34acbc4d707b75502a4b54e0f9a7d02 Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Make moving rows asynchronousMiikka Heikkinen2018-05-252-37/+15
| | | | | | | | | | | | | | | | | | | | This is the simplest way to ensure row indices stay in sync with asset graph indices in cases where multiple children are added to indices beyond the current child count (e.g. undoing a multiselection delete/move). This change also makes multiselection moves quite a bit more efficient, though in release builds the effect is barely noticeable. Also optimized a frequently used function getBindingForHandle to first look for the binding using the m_handlesMap as pretty much every time, except when called from onAssetCreated, the handle can be found from m_handlesMap. Task-number: QT3DS-1758 Change-Id: Ie95aef5f5f54c794db6a5d9c7515314b3182b65e Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Remove obsolete WidgetControlControlListenerTomi Korpipaa2018-05-224-9/+0
| | | | | | | Task-number: QT3DS-361 Change-Id: Ia07296afbda8ea8c70ff6019b0da6dac1234edd7 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
* Fix crash when unlinking a property from master slideMahmoud Ali2018-05-211-9/+10
| | | | | | | | | Also master slide properties labels are in green now Task-number: QT3DS-1676 Change-Id: I1eaa3b7494a27342747cd2d0d548eb5e73c38fb6 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Handle name property update for objectsMiikka Heikkinen2018-05-151-0/+4
| | | | | | | Task-number: QT3DS-1654 Change-Id: Iaced4bd5dd8e1b1333d3df3b83b09ea79caa9d5f Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Rename object if drag-move target parent has object with same nameMiikka Heikkinen2018-05-151-1/+2
| | | | | | | | Task-number: QT3DS-1549 Change-Id: Ic249473bcb5d3c4cc9b06958b47e9a0bb3e5de2d Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Implement timeline onChildRemovedKaj Grönholm2018-05-141-1/+0
| | | | | | | | | Fixes material duplication when changed as previous material is removed. Also fix bar color after delete -> undo. Task-number: QT3DS-1631 Change-Id: I7d49586138edbdbfad2f9770ffb498d36af40da9 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Revert alias duplicateTomi Korpipaa2018-05-141-2/+3
| | | | | | | | Also prevent user from adding Aliases via the Basic objects palette. Task-number: QT3DS-1649 Change-Id: Ie3c7d8fee3f5fb875f78ee000956443295cb973b Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Optimize iterating through child objectsMiikka Heikkinen2018-05-147-79/+134
| | | | | | | | | | | | | | | GetAssetChildrenInTimeParent was getting called unnecessarily much, as it was called every time GetChildrenCount or GetChild was called. According to profiling it was responsible for vast majority of the time spent when changing a slide. Optimized various loops that iterate through object's children to only call this function once. Task-number: QT3DS-1601 Change-Id: Ia006acb76bd818c390a36f6fe9f1656660974c0e Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Prevent alias duplicating LayersTomi Korpipaa2018-05-111-1/+1
| | | | | | Task-number: QT3DS-1604 Change-Id: I5c7b5bd888b25e3e6c2a74a0558561c4c383be10 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix crash when adding objects to master slideMiikka Heikkinen2018-05-111-1/+5
| | | | | | | | | | | | When the current slide has less objects than some other slide, which is always the case with master slide, adding objects could cause array index go out of bound in index conversion stage. Task-number: QT3DS-1580 Change-Id: I4513f04fca990892b6f9aab38b28461c526415dd Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io>
* Fix adding objects under master slide objects in more than one slideMiikka Heikkinen2018-05-092-0/+37
| | | | | | | | | | Asset graph indexes are global and not directly usable in local time contexts. Added a conversion function to fix the index. Task-number: QT3DS-1586 Change-Id: Ia9f28074018a3fa414fb357d4584ec4a8b6875cb Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Only expand the root scene by defaultMiikka Heikkinen2018-05-081-0/+1
| | | | | | | | | | | Also, expansion statuses of various objects are remembered between slide changes. Task-number: QT3DS-1573 Change-Id: Ie2164612b747e7eb3d6f87223976e60217373620 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Replace Ctrl+D duplicate with aliasTomi Korpipaa2018-05-041-1/+1
| | | | | | | | Replace deep copy duplicate with alias duplicate. Task-number: QT3DS-1525 Change-Id: I98eeaf3003e2f6ebc6206b52a85ed8a44363dcd8 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Support multi-selecting timeline rowsKaj Grönholm2018-05-035-47/+1
| | | | | | | | | | | | | Allow (de)selecting multiple rows by keeping Ctrl/Command key down. Support deleting multiple rows and changing multiple row bar colors. Moved behavior from bindings into timeline side as bindings API was designed to change only single bar color with or without undo. Task-number: QT3DS-1454 Change-Id: I6a68fdef38aa6939526e66eed39eb5c33129616c Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Rewrite the logic for adding/removing/moving rowsMahmoud Ali2018-04-302-0/+19
| | | | | | | | | | This fixes several issues and improve the timeline performance. Task-number: QT3DS-1496 Task-number: QT3DS-1493 Task-number: QT3DS-1476 Change-Id: I1e838d0107317abd6dc7267a8eb82fa56e076390 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Support custom timebar colorsKaj Grönholm2018-04-271-25/+4
| | | | | | | | | | | Support setting custom bar color. Switch using colors from StudioPreferences. Selected bar highlighted with overlay like in current timeline. Task-number: QT3DS-1442 Change-Id: I4673f4776c7d7048bf573f40aa237258b011e9d2 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Merge remote-tracking branch 'origin/master' into wip/timelineMiikka Heikkinen2018-04-231-19/+16
|\ | | | | | | Change-Id: I58176ea495831aee6eb35b9057bdecb6f3a6e1fe
| * Force object name to unique on name changeJanne Kangas2018-04-191-19/+16
| | | | | | | | | | | | | | | | | | | | Do not ask for user confirmation, just show a notification that the name was made unique. Allowing non-unique object names breaks Aliases and other elementpath references. Change-Id: Id35c6bb42c0a1c9982343005af7d5f218401cdda Task-Id: QT3DS-1463 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>