summaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
...
* Use generator expression to get moc pathMichal Klocek2021-08-311-6/+1
| | | | | | | | | | | | | | | | | | We used IMPORTED_LOCATION for getting moc path, however this will not work in case of top level builds, since moc is not "imported", we can not use LOCATION due to https://cmake.org/cmake/help/latest/policy/CMP0026.html Use generator expression to set the moc path for gn. Clean up RSP_PREFIX leftover from previous gn version. Note QtPdf does not even need moc setup since we just need pdfium library. Pick-to: 6.2 Task-number: QTBUG-95590 Change-Id: Ief3dca96f65e198e9693293316b1a90007c56355 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix crash when clicking on a link in PDFSzabolcs David2021-08-301-1/+1
| | | | | | | | | Do not try to use WebContentsDelegate of a guest WebContents. Task-number: QTBUG-95269 Change-Id: If7bbd25bcac26c30a4ff1bee3f732ba01215ec4b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 7f4a6ff45743cecbfe0dd14ef29afd0874a2ed39)
* Add workaround for not working linking with bfd linkerMichal Klocek2021-08-291-0/+3
| | | | | | | | | | | | | | | | | Removal of external project removed also workaround for coin bug, which is still not fixed. Add linker launcher in case maximum number of open files is below 4096 on linux for WebEngineCore target. This launches bash script wrapper which sets ulimit. This is poor man workaround and requires cmake 3.21 to work. Task-number: COIN-699 Task-number: QTBUG-95590 Pick-to: 6.2 Change-Id: Ib9d0c4ced988d4692746e51f3abbe63ff5085836 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix installation paths of resources and localesMichal Klocek2021-08-291-2/+2
| | | | | | | Fixes: QTBUG-95231 Pick-to: 6.2 Change-Id: I9aa2c42f97b903d17a709767f26b0b4dde4db8b5 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Rewrite gn-cmake integrationMichal Klocek2021-08-293-142/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous gn-cmake integration was driven towards having the complete cmake build tree which included gn build artifacts. These were marked as IMPORTED in cmake build files, this way cmake "knew" all object files and static libs coming from gn. To achieve that we needed to run the cmake configure twice. First to feed gn with the build information from cmake and then the second run to import all the build information to cmake based on gn run. As a side effect of this the first run cmake was creating incomplete targets, so we could use generator expressions to gather all the data needed for gn run. The second run of cmake was able to create fully initialized targets. We used 'external project' to run cmake the second time. This approach worked well when doing "module" builds and having two targets, one in the main project and one in external was not an issue. Moreover, this approach could be integrated nicely since CI does only "module" builds. Unfortunately "top level" builds are implemented to import all qt targets into one build tree. This created issue for qtwebengine since fully initialized targets were 'hidden' by 'external project' and including half baked (dummy) targets from the main project resulted in bunch of issues related to the dependency tracking and build race conditions. Also using 'external project' complicated installation rules and in the end installation worked differently than in other modules. With current approach we use response files, so we hide all build artifacts coming from gn and feed cmake with those response files. This way we run the cmake configure once and we create all the targets once. Using rsp files hacks linker options in cmake, so this approach is sub-optimal, however allows to have working "top level" builds. It is worth mentioning here that the final module linking has to take place with cmake's part of build since doing one static lib in gn is not possible due to the toolchain limitation (msvc is not able to process static libs over 4Gb and has no support for thin archives, so only a shared lib is doable at time of writing) Following changes are made: * remove 'external project' for qtwebengine target, we keep it however for ninja ,gn and a host project * call gn from cmake in a scripting mode during build and not configure run, this way BUILD.gn is assembled as a build step so after generator expressions are executed * BUILD.gn is assembled now from 4 files: - root template BUILD.root.gn.in - compiler data gn_config_c.cmake, gn_config_cxx.cmake - sources data gn_cofnig_target.cmake * since we use gn wrapper script use gn.args file to pass arguments instead of a command line, so this file can be now easily modified when running gn and ninja 'manually' * since a script mode does not support handling of properties with TARGET as such, use the DIRECTORY scope in some of our functions which handle GN_TARGET * use qt_build_repo() in main CMakeFile and remove all coin and top level build hacks * remove 'external project' for examples and tests, this is no longer required as all qt targets are not hidden by external project * remove leftovers from gn feedback call used for GN_TARGET * improve installation rules, WebEgineCore target is not by default installed during build, therefore we need to copy resources and translations to root so tests and examples still can be built without a module being installed first * adjust GN lookup paths, we look for gn in main configure and during scripting mode when gn is executed Fixes: QTBUG-94349 Fixes: QTBUG-94709 Fixes: QTBUG-94922 Fixes: QTBUG-94997 Fixes: QTBUG-95051 Fixes: QTBUG-95152 Fixes: QTBUG-95158 Fixes: QTBUG-95972 Task-number: QTBUG-95231 Task-number: QTBUG-95590 Pick-to: 6.2 Change-Id: I5e7a34287ee59d904103fe310fc7c6a36a8dfbc9 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add 'amazing' windows linker workaround for rsp filesMichal Klocek2021-08-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This should be part of previous patch, however it deserved separate commit message with explanation. On windows cmake generates ninja rules with cmake wrapper for linker in form of: cmake.exe -E vs_link_dll vs_link_dll internal command unfortunately expands all rsp files passed to liker before calling it (it looks for '@') and also swaps the order. This ends in bogus linker call. Make a workaround based on: https://github.com/Kitware/CMake/blob/master/Source/cmcmd.cxx#L2102 Use response files prefixed with 'CMakeFiles' so internal command of cmake will skip the processing. Since rsp files must now start with filename and not with filepath we also need to copy them to directory where we call the linker. Task-number: QTBUG-95590 Pick-to: 6.2 Change-Id: I8e96ebf3a9ac7c7d751db6682ce37f38880be793 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Use rsp files directly from gnMichal Klocek2021-08-293-13/+11
| | | | | | | | | | | | | | | | | | Do not use gn created cmake files since this requires cmake configuration step, which currently ends up in duplicated targets in main and qtwebengine external project. Use response files instead, so we can remove duplicated targets in follow up patches. This approach unfortunately has downside of cmake not being aware of gn build artifacts and hacks directly linker command. For universal builds remove not needed rsp template, since we can now use rsp files directly generated by gn. Task-number: QTBUG-95590 Pick-to: 6.2 Change-Id: I83282ba68fa171cada7236d0587be27122315dec Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove unneeded extension -> file access privilegeAllan Sandfeld Jensen2021-08-261-5/+1
| | | | | | | | | | It was hacked in before we got guest views working for the pdf viewer, but should no longer be needed. Pick-to: 6.2 Change-Id: I3085c1ba591c600942e488751ada12473c6454d0 Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Update documented versionAllan Sandfeld Jensen2021-08-261-1/+1
| | | | | | | Pick-to: 6.2 Fixes: QTBUG-94408 Change-Id: I0aab0377878b7ba75e43ec329e7a9d1b02ab2021 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Doc: Fix remaining documentation warningsTopi Reinio2021-08-261-1/+1
| | | | | | | | | | | * WebEngineCertificateError::ignoreCertificateError() was renamed to acceptCertificate(). * Use correct \instantiates class for WebEngineNewWindowRequest. Pick-to: 6.2 Task-number: QTBUG-95860 Change-Id: I42cc4a8939625b432cb4c6f68b26423b6dc3fa7d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Doc: Remove unsupported customFiltersKai Köhne2021-08-251-4/+0
| | | | | | Task-number: QTBUG-95987 Change-Id: Ie762a1e45cf0e84951cf7c91bf2144f38ad55dd1 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Fix devtools internal reattachAllan Sandfeld Jensen2021-08-241-1/+3
| | | | | | | | | We were replacing the devtools with a new one instead of reattaching. Pick-to: 6.2 Change-Id: I7729b2e1fcc2946d8d5d67acbf026a06e8cbdc06 Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Balazs Egedi <egedib@inf.u-szeged.hu>
* Doc: Fix documentation warnings for Qt WebEngineTopi Reinio2021-08-232-7/+3
| | | | | | | Pick-to: 6.2 Task-number: QTBUG-95860 Change-Id: I5b1fd6a6e5f172724fcfbde1a791b342a7e1ff92 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Remove TODO commentAllan Sandfeld Jensen2021-08-201-2/+0
| | | | | | | | | The default settings make less sense now that we do not have the old default profile. Pick-to: 6.2 Change-Id: I9022bbe905eb06944646cd1b9813b48970c62ad7 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Move the rest of the super module documentation to core moduleAllan Sandfeld Jensen2021-08-199-0/+1829
| | | | | | | | Previously parts were moved, but these were left behind in the quick module. Pick-to: 6.2 Change-Id: Icef469e14d073170ec5b2296048874d2b7439385 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Add QtWebEngine Qt6 migration guide to list of migration guidesAndreas Buhr2021-08-191-0/+1
| | | | | | | | Pick-to: 6.2 Task-number: QTBUG-94933 Change-Id: I92690535f839ef92e7464fa09f994fcd4f53d7e5 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Rename quick's 'newViewRequested' to 'newWindowRequested'Kirill Burtsev2021-08-181-14/+14
| | | | | | | | Match new api within the page API. Pick-to: 6.2 Change-Id: Ib2af2f5270f368813cecab8f1c6b7366d3b7172f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Document changes in qt6Allan Sandfeld Jensen2021-08-181-0/+147
| | | | | | | | Pick-to: 6.2 Fixes: QTBUG-94933 Change-Id: I8777b8136afad0e93c0762433471476840802ba6 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Clean up coding style in API header filesAllan Sandfeld Jensen2021-08-1830-53/+83
| | | | | | Pick-to: 6.2 Change-Id: Ifa5892415a1e0b8ce9b6bfa10719aba618e3b799 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Update documentation notes for build with WebEngine modulesKirill Burtsev2021-08-175-5/+23
| | | | | | | | | | Add cmake usage snippets for module's libraries. Remove quick version from code snippets. Fix minor documentation warnings. Fixes: QTBUG-94937 Pick-to: 6.2 Change-Id: I2e5c8616ceeab495f604e135bb2aa2261c50c68d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Refactor gn targetMichal Klocek2021-08-172-110/+54
| | | | | | | | | | | | | | | | | | | | Currently we get hangs on ci, to investigate the issue go through current cmake code and: * remove all dummy ninja targets * remove implicit dependencies * build dir in form of buildDir/config/arch * separate ninja call for sandbox * separate ninja call for covert_dict * clean up universal build * change handling of rsp files, so they are generated during build and not configure time * refactor functions so universal build can be easily used by follow up qtpdf patch Pick-to: 6.2 Change-Id: Id4a6c61b87fe76832232035fddf212b57051d0ec Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Replace discouraged Q_MOVABLE_TYPE by Q_RELOCATABLE_TYPEAndreas Buhr2021-08-122-2/+2
| | | | | | | | | | | | | | Q_MOVABLE_TYPE was conceived before C++ had move semantics. Now, with move semantics, its name is misleading. Q_RELOCATABLE_TYPE was introduced as a synonym to Q_MOVABLE_TYPE. Usage of Q_MOVABLE_TYPE is discouraged now. This patch replaces all usages of Q_MOVABLE_TYPE by Q_RELOCATABLE_TYPE in qtwebengine. As the two are synonymous, this patch should have no impact on users. Pick-to: 6.2 Task-number: QTBUG-86829 Change-Id: I6cf26bb24c4d68cc3da85193cf6f8e63daeaa9d7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove local-access-allowed from qrcAllan Sandfeld Jensen2021-08-121-1/+0
| | | | | | Pick-to: 6.2 Change-Id: I120f4e4e167d621efb6c13f5d16cc13134540352 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Ensure certificate error callback call for all typesKirill Burtsev2021-08-101-2/+4
| | | | | | | | | | | | Amends a2a9ea11f9. Actually reject certificate when it's considered to be fatal. Adapt tests for possible regression but checking if load really failed (due to missing internet access) or was just halted by missing callback call internaly. Pick-to: 6.2 Change-Id: I656525c353ce410f7bda8c55227a29fcd617bfdd Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Remove QWebEngineCallbackAllan Sandfeld Jensen2021-08-109-465/+37
| | | | | | | | | Was no longer used in exposed APIs Pick-to: 6.2 Fixes: QTBUG-74588 Change-Id: Iaf4943983655fc79e67df28f5cd4c4961b360579 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Return printToPdf to QWebEnginePageAllan Sandfeld Jensen2021-08-093-2/+113
| | | | | | | | | It doesn't use QPrinter and can be done using QtGui classes only. Pick-to: 6.2 Change-Id: I0e14563c1bb5e93d9803bb1a807f702b1a2a5315 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Reintroduce File Picker controlBalazs Egedi2021-08-092-0/+7
| | | | | | | | | | - Using FileDialog from QuickDialogs2 - Enabled the UIDelegates test Task-number: QTBUG-93666 Pick-to: 6.2 Change-Id: I8438a2498e864bc93abf26f2527d7883ac26ca9b Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix wrong CHROMIUM_VERSION with cmakePeter Varga2021-08-061-1/+4
| | | | | | | Fixes: QTBUG-95614 Pick-to: 6.2 Change-Id: I78b011400c10c28c5de15ea12f684b7e1766af37 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix missing xkbcommon include on openSUSEMichal Klocek2021-08-061-0/+8
| | | | | | | | | | | We include xkb_key_code_converter.h when compiling ozone_platform_qt.cpp Fixes: QTBUG-95473 Pick-to: 6.2 Change-Id: I45f8dbdd3bcd7934d376256ec08560a8327a8e70 Reviewed-by: Christophe Giboudeaux <christophe@krop.fr> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* QtWebEngineProcess: fix installationLi Xinwei2021-07-291-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 09e5da6ac44c01ae0de34b789c42da515e82f07c, we pass "NO_INSTALL" to qt_internal_add_executable(), so we have to handle some installation issues manually. Use qt_get_cmake_configurations() instead of get_install_config(). Because get_install_config() only returns the first config in a multi-config build, this causes the debug executable not installed. We can install the debug executable to ${INSTALL_LIBEXECDIR}/Debug, like other executables, to avoid conflict with the release executable. But this will make installation codes very complex. So I propose to restore Qt5's behavior for it , add a "d" suffix to the debug executable and install both executables to ${INSTALL_LIBEXECDIR}. This can also avoid breaking windeployqt's logic of finding the debug executable of QtWebEngineProcess. Also adjust the output directory property to place executables under the correct directory. The release executable should be placed under ${QT_BUILD_DIR}/bin rather than ${QT_BUILD_DIR}/bin/Release. Given that the debug executable now has a "d" suffix, it can also be placed under the same directory. And install PDB files manually because QtWebEngineProcessd.pdb should be installed to ${INSTALL_LIBEXECDIR}, but qt_internal_install_pdb_files() will install it to ${INSTALL_LIBEXECDIR}/Debug. Pick-to: 6.2 Change-Id: I38b5e8d9ed939b88de86ab5722dd56777442ed03 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* QWebEngineNavigationRequest: Prospective fix for clang parsersFriedemann Kleint2021-07-251-1/+1
| | | | | | | | | | | | | | | | | | | The clang parser in Qt for Python and likely qdoc choke at QT_DEPREQT_DEPRECATEDCATED Q_ENUM: QtWebEngineCore/qwebenginenavigationrequest.h:85:19: error: expected member name or ';' after declaration specifiers Properly deprecating the enum would be done by specifying QT_DEPRECATED behind the enum keyword, but that causes deprecation warnings for the setter and getters ( action()/setAction()). Since they are deprecated, too, just remove the deprecation from the enumeration. Amends 13254e7950a032ebbeb11b1cf54b850c8326fb30, Pick-to: 6.2 Change-Id: I3ecf9b52abc0b5a6e503097b7a1d20c69a1c5f93 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Apparently we build fine with node.js 10.19 on UbuntuAllan Sandfeld Jensen2021-07-251-1/+1
| | | | | | | | Fixes confusing configure output Pick-to: 6.2 Change-Id: I17812524e3452d3b271a677d3877d1365ccfc38f Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Disable kAllowContentInitiatedDataUrlNavigationsAllan Sandfeld Jensen2021-07-231-5/+0
| | | | | | | | | | | | | | | It is bound to disappear from Chromium sooner or later, and is more secure turned off. [ChangeLog] Page content may no longer navigate to data-urls, if this is needed we recommend using custom-url schemes instead or force old behavior using --enable-features=AllowContentInitiatedDataUrlNavigations, though the feature switch may be removed in any later update. Pick-to: 6.2 Change-Id: I9398f54bcb49dce90afa049b2a2f4acf6f9810f7 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Add support for macOS universal buildsAllan Sandfeld Jensen2021-07-221-396/+437
| | | | | | Pick-to: 6.2 Change-Id: I416036a925167204cf5121108922911bce854352 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix crash in UI thread after deletion of profile io data on IO threadKirill Burtsev2021-07-221-5/+7
| | | | | | | | | | | | | Access happen if io data was removed in io thread by posted task earlier than shutdown call. Ammends a5e627160c ==853575==ERROR: AddressSanitizer: heap-use-after-free on address ... READ of size 1 at 0x6120001946c0 thread T0 #0 QtWebEngineCore::ProfileIODataQt::shutdownOnUIThread() profile_io_data_qt.cpp:109:9 #1 QtWebEngineCore::ProfileQt::~ProfileQt() profile_qt.cpp:117:22 Pick-to: 6.2 Change-Id: Ia5b7710553e80cbb95bde0855093d31a60781c2b Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Add QWebEngineNewWindowRequest::openIn(QWebEnginePage *)Allan Sandfeld Jensen2021-07-213-5/+22
| | | | | | | | Makes for a nicer API Pick-to: 6.2 Change-Id: I15e72d526e9cf6cf9ca8bd3e24f5dd7e7b2e9fa5 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Silence GCC warnings in corePeter Varga2021-07-212-0/+17
| | | | | | Pick-to: 6.2 Change-Id: I0aabf0d5baec8ba0a4a127d4c5dccf013d775ea2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* WebEngineNavigationRequest: add accept/reject and deprecate setActionKirill Burtsev2021-07-218-55/+67
| | | | | | | | | | | | Match naming with others and use accept/reject methods to handle request. Also, allow to use request object after call scope in QML. [ChangeLog][QWebEngineQuick][WebEngineNavigationRequest] setAction(action) is deprecated in favor of new accept/reject methods Pick-to: 6.2 Change-Id: I83252370e2e83017008f6951f98b7ecad119e232 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove duplicated 'downloadProgress' in favor of separate signalsKirill Burtsev2021-07-212-16/+0
| | | | | | Pick-to: 6.2 Change-Id: Ib825d63c89e591e740b206f43c3eadbf32319daa Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* QWebEngineProfile: hide notificationPresenter method back from apiKirill Burtsev2021-07-211-1/+3
| | | | | | Pick-to: 6.2 Change-Id: Ic9468cd078502fd5412da2374a2c814366dcf320 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Remove two feature disablementsAllan Sandfeld Jensen2021-07-211-8/+0
| | | | | | | | Assuming they work now. Pick-to: 6.2 Change-Id: I98623dbee34cd2749999c43a596decceecd1fd5b Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Remove IPC message loggingPeter Varga2021-07-2110-62/+3
| | | | | | | | | Doesn't seem to be useful, chromium community doesn't maintain it anymore. Pick-to: 6.2 Change-Id: I24071d6319c258f2d88f3bde5c38dd9fddeec9a8 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Refactor cmake buildMichal Klocek2021-07-204-288/+32
| | | | | | | | | | Add macros to share common cmake code blocks with QtPdf. Reconsider later to do proper scoping and change those to functions if make sense. Pick-to: 6.2 Change-Id: I500acdba1415feab373a012dcf9a9ddedf33cfac Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Cleanup gni filesMichal Klocek2021-07-204-511/+63
| | | | | | | | | | | | | We use now BUILD.gn template which we configure from cmake, therefore source and resource gni files are no longer in use and are outdated. Remove them. Remove also qtwebenigne.gni which did not really encapsulate anything. Pick-to: 6.2 Change-Id: I847d27be24a08ea03da93464d086c0be8b5f8e4b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix assertion in getCurrentKeyboardLayout()Szabolcs David2021-07-201-0/+3
| | | | | | | | | | | | | FATAL:xkb_keyboard_layout_engine.cc(640)] Keymap file failed to load: hu-us If there are multiple layouts provided (eg. "hu,us") and there is no layout variant, we appended the second layout as a variant (eg. "hu-us"). This happens because strtok() caches the pointer of the next token from its previous call and uses that when processing a null string. Pick-to: 6.2 Change-Id: Ic1d8bd14f95bda65a9fba82c1df45af306c4445b Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Get rid of Quick's TestSupport APIPeter Varga2021-07-207-27/+0
| | | | | | | | | | | - Moved TestInputContext and TestInputEvent APIs to tst_qmltests. - Removed loadVisuallyCommitted and use Item.grabToImage to check if page is rendered. - Removed windowCloseRejected signal and use a hidden callback instead. Pick-to: 6.2 Change-Id: Ica6e4c6017426e0171d738a6a59afa557c786698 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Add arm optimization flags to cmake buildMichal Klocek2021-07-162-5/+45
| | | | | | Change-Id: Ibab4630fd226f46f58d08c603436dc2c378212ec (cherry picked from commit b1a6adf731828b1f68f51480eeb21dd9e7d3ba1e) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add cross compilation support to cmake buildsMichal Klocek2021-07-164-45/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add arm cross-compile basic support. CMake does not support host builds. However we do host build with gn and changing that would require an extra effort to keep all necessary changes with Chromium upstream. Therefore let gn to perform the host build for required tools and just feed gn with all the build data. Add new build steps: * install gn into QT_HOST_PATH/libexec. * run hostBuild project to get native architecture and compiler * call PkgConfigHost to pass pkg-config paths to gn * create wrapper script for host pkg-config to escape yocto shell pkg config exports This change also splits gn toolchain into 3 toolchains host,target,v8 Now hostBuild provides host and v8 toolchain in case of cross compile. The build optimizations will follow in another patch. Fix not existing 'boot2qt' condition and enables more test on QEMU. Note this is tested only with yocto based images. Task-number: QTBUG-91760 Change-Id: Ic2bea12229acc71fbd36a848e9ed4fed7e14b485 (cherry picked from commit 3a962d8a2d3b70639a195fe5fd442f6c653bbe8f) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Bump copyrightsAllan Sandfeld Jensen2021-07-1415-15/+15
| | | | | | Pick-to: 6.2 Change-Id: I8eb8bfba45abb340816b8c2072cca4486c1f37ab Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Remove one more redundant function definitionAllan Sandfeld Jensen2021-07-143-17/+8
| | | | | | Pick-to: 6.2 Change-Id: I45bb1ab74fd15cae9c84262f3887c2ebbef23c3b Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>