summaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
* Move the QPrinter and QtWidgets related code out of the PDFium wrapperMichael Brüning2016-11-2511-162/+62
| | | | | | | | | | | This moves the actual printing using QPrinter to the WebEngineWidgets part of the API. The printsupport module depends on the widgets module and therefore QtWebEngineCore also had a dependency to widgets. This is removed by this change. Change-Id: If6e5745709a59de18f2123b930cbe6e64390c867 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Merge remote-tracking branch 'origin/5.7' into 5.8Allan Sandfeld Jensen2016-11-258-11/+88
|\ | | | | | | | | | | | | Conflicts: src/3rdparty Change-Id: Ib9c9eca457c1c42dab948e6cb56d44b57d5da32a
| * Merge branch '5.6' into 5.7Allan Sandfeld Jensen2016-11-246-10/+77
| |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/core/api/qwebengineurlrequestinfo.cpp src/core/api/qwebengineurlrequestinfo.h src/core/core_gyp_generator.pro Change-Id: I5c78f0c86f6dcd61697148f0729d3d3a2cb2c76f
| | * ResourceType ABI/API fixupAllan Sandfeld Jensen2016-11-234-10/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Important Changes] The enum value ResourceTypeUnknown has changed value since there was a mismatch between 5.6 and 5.7+ definitions. In general any unknown ResourceType value should handled as unknown for forward compatibility, since more types are and can be added in later Qt versions. Change-Id: I0a9f8a2129d4549deeae01e199f432fbbf1bbb9e Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| | * Fix IPC message loggingPeter Varga2016-11-222-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Register Qt IPC messages for logging. The usage of content::RegisterIPCLogger function adds the content_common.content_ipc_logging.o to the link dependency. Thus it will register the Chromium Content IPC messages too. Task-number: QTBUG-57224 Change-Id: I2c45691feb22a34f6074940cc35b8a4ba7804370 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | Merge remote-tracking branch 'origin/5.7.1' into 5.7Allan Sandfeld Jensen2016-11-211-1/+8
| |\ \ | | | | | | | | | | | | Change-Id: Ifcf7423fa8d892ddad595300e33a09c7f63f5e6e
| | * | Fix crash in WebEngineContext when using WaylandAllan Sandfeld Jensen2016-10-121-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For some reason the OpenGL context wayland QPA sets has no nativeHandle, so we end up crashing in strcmp. Assume a context without nativeHandle is Wayland or other GLES2 platform and also force GLES2 when using Ozone. Change-Id: Ia3fc524f3ffbb278d86f9153ec96c7258ef86656 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * | | Pass size to URLRequestJobAllan Sandfeld Jensen2016-11-161-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If QIODevice has a size we can pass that on as expected size. This fixes media playback where Chromium does not always support streaming outside of HTTP or HTTPS. Task-number: QTBUG-57139 Change-Id: Ie8bf96b1f7f6af80fe707936055620d154c3ef2d Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
* | | | Add pkg-config test for system harfbuzz version on linuxMichael Brüning2016-11-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Older harfbuzz versions like the one bundled with Ubuntu 16.04 cause crashes of Qt WebEngine applications. Use the bundled copy although Qt was configured with -system-harfbuzz in those scenarios. Task-number: QTBUG-56895 Change-Id: I8fad6754447ba32c3630e6772ca2ae6d4fd710c1 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Add support for compiling WebEngine with Clang sanitizer optionsAlexandru Croitor2016-11-221-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change pipes the already supported Qt sanitize options to Chromium, so the Chromium build system adds the correct compiler sanitizer flags. The change also checks whether the requirements to build a sanitizer enabled Chromium are met (currently works properly on macOS with an Apple clang >= 7.3.1, and on Linux with clang + libc++). Change-Id: Ibab2d5735935ddc92226575fc0e9f5912b807329 Task-number: QTBUG-52656 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Build with Qt 5.6Allan Sandfeld Jensen2016-11-173-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Make minimal changes so QtWebEngineCore 5.8 still builds with Qt LTR. Change-Id: Iae3ae606b3457a6ca311ae174b3d2a331e9b20bc Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | | Pass correct clang prefix directory to GYPJan Kundrát2016-11-151-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the prefix was hardcoded to "/usr". Now the current environment clang path is considered instead. Change-Id: I23173bb31591dfb6df7a81a37a58502dd6b12886 Task-number: QTBUG-52656 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Add spellchecker feature to new config systemMichal Klocek2016-11-141-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I35a5c815c9f2b3ebacb5991ba6645641b17db2db Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Fix compilation warning in corePeter Varga2016-11-141-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace deprecated v8::Object::ForceSet by v8::Object::DefineOwnProperty as it is suggested by the V8 API. Change-Id: I8c49999d391149676daf42784b796fa01918874f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Make view source working with qrc URLsPeter Varga2016-11-115-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-56353 Change-Id: I9c5dc3a6ba4e6b08ecbb4e44d38a53d24010807b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Merge "Merge remote-tracking branch 'origin/5.7' into 5.8" into refs/staging/5.8Allan Sandfeld Jensen2016-11-1110-58/+91
|\ \ \ \
| * | | | Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-1110-58/+91
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/core/content_browser_client_qt.cpp src/core/content_browser_client_qt.h src/core/gl_surface_qt.cpp src/core/print_view_manager_qt.cpp src/core/web_contents_delegate_qt.cpp src/core/web_engine_context.cpp src/webengine/doc/src/qtwebengine-overview.qdoc src/webengine/doc/src/qtwebengine-platform-notes.qdoc src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp src/webenginewidgets/webenginewidgets.pro sync.profile Change-Id: I44495f4d899580c882d6b86d68d7f6b77c8e91f6
| | * | | Fix sites with optional client certificate supportAllan Sandfeld Jensen2016-11-102-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We fail to load pages that supports client certificates because we didn't implement the client certificate selection. This patch makes a small implementation that selects no certificate whenever a client certificate is requested. Task-number: QTBUG-56206 Change-Id: I95394d9664c7e8e4d03d9e63e5043da81e2672a4 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| | * | | Make Linux QPA combinations more robustAllan Sandfeld Jensen2016-11-092-24/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use resourceForIntegration to get egldisplay since not all QPA return a egldisplay for context (in particular xcb_egl). Implement EGL fallback for linux desktop builds, to make Wayland work without an X11 server present. Change-Id: Idcead42250fa00a36e50c082711f5618fd213556 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| | * | | Do not fail for wayland-eglMichal Klocek2016-11-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Client-side buffer integration can be set manually, therefore beside accepting generic wayland plugin accept also wayland-egl. Change-Id: I8269f117f81cf8bb9462bea525cb253727910bc6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | * | | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-11-043-13/+4
| | |\ \ \ | | | | |/ | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also apply a4b04e4c on src/webengine/doc/src/qtwebengine-deploying.qdoc, use the macro \macos. Conflicts: src/core/media_capture_devices_dispatcher.cpp src/webengine/doc/src/qtwebengine-deploying.qdoc src/webengine/doc/src/qtwebengine-platform-notes.qdoc Change-Id: Ia6092a56bfe23da7c06f5389718ebbc9b78ef820
| | | * | Pepper flash search-path for package adobe-flashpluginViktor Engelmann2016-11-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since version 54, the chromium distribution package does not contain the pepper flash plugin anymore. Because of this, the plugin cannot be installed using the Ubuntu package "pepperflashplugin-nonfree" anymore (because the package pulled the plugin from the chromium distribution). The plugin is also contained in the package adobe-flashplugin, which installs the file to /usr/lib/adobe-flashplugin/libpepflashplayer.so. [ChangeLog] Pepper flash is now also searched in /usr/lib/adobe-flashplugin/ Change-Id: I7c135a2eac1628b0d338bbfed07695c9578458e6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * | Allow Pepper Flash to access Media DevicesViktor Engelmann2016-10-281-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Q_UNREACHABLE caused WebEngine to block Pepper Flash from accessing Media Devices such as the WebCam (this rendered http://testwebcam.com unusable for example) Task-number: QTBUG-55017 Change-Id: I7979c9a5690173e86310f7448c78949371fbc909 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| | | * | Disable GPU when no shared OpenGL context is availableAllan Sandfeld Jensen2016-10-271-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case an OpenGL context can not be created we can try running in software compositing mode. This should have a much better chance of working as a fallback. Change-Id: Icaab24dde8f4b6c8ea4023cf36b0bb679143166f Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| | * | | Apply page margins also for PDF printing (backport from 5.8)Michael Brüning2016-10-281-28/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was left out by oversight. Task-number: QTBUG-56710 Change-Id: Ie23229396eb94b949212324fb50022763935d524 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * | | Fix hang when dragging files from file picker onto QWebEngineViewJoerg Bornemann2016-10-262-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The method WebContentsAdapter::updateDragPosition actively waits for the UpdateDragCursor message, sent by the renderer. This active wait does not work whenever we're currently in a base::MessageLoop::RunTask call, because of its internal recursion guard nestable_tasks_allowed. Add a check for nestable_tasks_allowed and bail out if we know that the active wait will fail. This fixes the hang. Ensure that the modal file picker dialog is shown outside of base::MessageLoop::RunTask. This enables drag 'n drop updates from the file picker to QWebEngineView. Task-number: QTBUG-56488 Change-Id: Ia13ada9c19e7780e12ca633ab1caeac352aca2a9 Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| | * | | Forward more load parameters in OpenURLAllan Sandfeld Jensen2016-10-141-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a number of missing load url parameters following the example of the shell and android webviews in Chromium. Change-Id: Ice27ab3efc550b8b7cfa6a5386aaf09574428a56 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| | * | | Respect command-line flags overriding our embedded defaultsAllan Sandfeld Jensen2016-10-111-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Check if the opposite flag has been given by the user before adding our own defaults. Task-number: QTBUG-56432 Change-Id: I7d6b8fed2c3e20405e3986f9afeb2193751a93f3 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| | * | | Consider multiple contents in mimeDataFromDropData conversionViktor Engelmann2016-10-111-9/+3
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | content::DropData can have multiple contents (e.g. an <img> tag has itself as .html property, but also the src="..." attribute as .url property. Therefore, we should always consider all 3 cases and not return immediately when we have found the first content. Task-number: QTBUG-55858 Change-Id: Ie13851e8edb9ada45184a19b6ccfe38839bb9923 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Fix DCHECK when dropping items onto WebEngineViewJoerg Bornemann2016-11-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Chromium 53 now requires to call RVH::FilterDropData() before DragTargetDragEnter and DragTargetDrop. This fixes the DCHECK and allows Chromium to filter the dropdata's URL (via RenderProcess::FilterURL) before proceeding. Task-number: QTBUG-56303 Change-Id: I29ad350b0b66d2ca1daae1d6d83f6e01206d1250 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
* | | | Fix drops that originate outside the WebEngineViewJoerg Bornemann2016-11-112-16/+13
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dragging things from another application onto QWebEngineView crashed. RenderViewHost::DragTargetDrop now requires a DropData object. Save the DropData object also in the case where we create it for a drag from outside. Change-Id: I8409500a4b27d06aeec02dce9856aca7e1415402 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
* | | Disable -Werror on Linux when clang is usedJan Kundrát2016-11-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Standard gcc warnings should be considered as errors, but clang warnings should not, because clang has some extra warnings. Change-Id: I298889895af7f9d4e004c3d97e5167738a8c09ad Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Only use system proxy if QNetworkProxy::useSystemConfiguration() says soKai Koehne2016-11-091-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This allows users to disable _any_ proxy globally by calling QNetworkProxy::setUseSystemConfiguration(false). Change-Id: If6f5d978316b603c53520512dac1eac57ab6c176 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | | Fix crash when trying to execute script on a detached RenderFramePeter Varga2016-11-084-3/+35
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-56661 Change-Id: I546222dde64c54955c62d2c30df79d4773b9973c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Update spellcheck api to support multiple languagesMichal Klocek2016-10-294-18/+26
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-56074 Change-Id: I2a66e91dd4ed1026e5ab2539cfd3f9094263b48c Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | | Fix missing patch from 49-based for spellcheckingMichal Klocek2016-10-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Add dictionary loading error handling, do not download dictionaries from google. Change-Id: I00ad7189f85d7eab07f7d8c6e3e9610d510971ff Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | | simplify setup of exclusive buildsOswald Buddenhagen2016-10-212-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | the simulator_and_device CONFIG flag is now gone. this also implies that we can set the debug_and_release and build_all flags based on the same condition. Change-Id: Ib16d05213e738a961c9e0b232829985b8ad64a50 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | | Fix spellchecking for macOSAlexandru Croitor2016-10-174-11/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change fixes spellchecking to work on macOS. A new WebEngine configure option is available to allow spellchecking on macOS to use either Hunspell like the other platforms, or the native spellchecker that comes with the OS. The default is to use Hunspell. Task-number: QTBUG-53135 Change-Id: I3e45b2e0d728b1bf2659c35f3d0a042b0ecd6239 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | | Change linking information for qwebengine_convert_dictMichal Klocek2016-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use convert_dict_linking.pri instead of QtWebEngineCore_linking.pri for qwebengine_convert_dict linking step. New linking information contains only required dependencies, so linker should have much less work to resolve all the symbols. The target change to executable is also required to generate convert_dict_linking.pri Task-number: QTBUG-53135 Change-Id: I1432207bd1853e762d5d8291ce61027592fd0161 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | | Doc: Fix grouping Qt WebEngine modulesLeena Miettinen2016-10-172-1/+1
| | | | | | | | | | | | | | | | | | | | | Add a page for exposed Qt WebEngine module C++ classes. Change-Id: I4fd15e9d5c5c1b8c51a836ad5a036083adaae328 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* | | Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-10-063-2/+3
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/webengine/api/qquickwebenginesettings.cpp Change-Id: Ie4abadb076c51d070cbb05f29b9ebcd9705933ad
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-041-1/+1
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty Change-Id: I49d99b5ac2cfba243eda1ea705c2a7d71b5542f6
| | * Include neon support for any -fpu=.*neon.*Donald Carr2016-09-271-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I9c571c823b6fa2411e003799f7ff8627ef6e1d5e Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | Merge "Merge remote-tracking branch 'origin/5.6' into 5.7" into refs/staging/5.7Allan Sandfeld Jensen2016-09-251-1/+1
| |\ \
| | * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-241-1/+1
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/webengine/api/qquickwebenginesettings.cpp Change-Id: Ib7e2a7558c685410c49c455218d3b9c30f32358f
| | | * Fix dangling pointer problemViktor Engelmann2016-09-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Turn the raw pointer ResourceDispatcherHostLoginDelegateQt::m_authInfo into a scoped_refptr, to prevent chromium from freeing the memory, which caused this pointer to dangle and SEGFAULT upon later usage. Task-number: QTBUG-55828 Change-Id: Ib57e89ca042a4494e2ab77ea10328495e6fc1431 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| * | | Disable local database when local storage is disabledAllan Sandfeld Jensen2016-09-251-0/+1
| |/ / | | | | | | | | | | | | | | | | | | Ties the feature switch for Indexed DB to the same as local storage. Change-Id: I9ea8992cc00097a8f7bd86236f8cd43008566d2b Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | | Generate domKey for printable charactersPeter Varga2016-10-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the key event when spacebar is pressed (for example above a checkbox). Task-number: QTBUG-56283 Change-Id: I76bcc9a66abcef3a9e5ac10cfa53d60fce4c9179 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Fix keyboard event handlingPeter Varga2016-10-041-0/+553
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set domKey and domCode property of NativeWebKeyboardEvent. Blink uses this new interface for keyboard event handling: https://codereview.chromium.org/2045603002 Task-number: QTBUG-56242 Change-Id: I33f6f17087629f5021874cacd3e75295bbd97870 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Fix building when QT_NO_OPENGL is definedAndy Nichols2016-10-026-24/+85
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-54327 Change-Id: I759598d56aa0a74b64092365b422a743fb508ac6 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>