summaryrefslogtreecommitdiffstats
path: root/src/webenginequick/ui
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Fix NO_PRIVATE_MODULE warningAlexandru Croitor2025-04-041-0/+1
| | | | | | | | | | | | | | Fixes the following warning: CMake Warning (dev) at cmake/QtModuleHelpers.cmake:1187 (message): Module WebEngineQuickDelegatesQml does not have private headers. Please add NO_PRIVATE_MODULE to its creation flags. Call Stack (most recent call first): cmake/QtScopeFinalizerHelpers.cmake:24:EVAL:1 (qt_finalize_module) src/webenginequick/ui/CMakeLists.txt:DEFERRED Change-Id: I936bba73933775f11946778799047045fc037d3b Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Do not override signals in qml delegatesMichal Klocek2024-10-314-88/+9
| | | | | | | | | | | | | | Since 36478e25 in qtdeclarative overriding signals is reported as warning and will be dropped in the future as it is not supported. Drop 'accepted' and 'rejected' signals and use signals from base component, which is the "correct" way of handling it. Remove some logic coming from qqc1. Pick-to: 6.8 Change-Id: I3eeeca4b25fb866d0c6e3da01c1513afd85904f0 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Use NO_GENERATE_CPP_EXPORTS explicitlyAlexey Edelev2024-03-251-0/+1
| | | | | | | | | | | Use NO_GENERATE_CPP_EXPORTS explicitly for modules that don't need the autogenerated exports header file. Task-number: QTBUG-90492 Change-Id: Ifb068ca6eb404fefe4587346df8c511413f372f5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Moss Heim <moss.heim@qt.io>
* Fix text formatting in JS DialogsMartin Negyokru2024-01-104-0/+4
| | | | | | | | | | | | Use plain text instead of escaped html to match other browsers behavior. Also set the text format for qml dialogs. Pick-to: 6.6 6.7 Fixes: QTBUG-119245 Task-number: QTBUG-83338 Change-Id: Icb2c9fd21f27487418835372d6afda96a6812cc3 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Replace custom ColorDialog with QtQuick ColorDialogMartin Negyokru2023-02-013-276/+295
| | | | | | | | Add fallback to custom implementation. Add subdirectories of ControlsDelegates to import path. Change-Id: I88224b267419664484cd0667456d9463d5c61bee Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Quick: Fix file selection modes in the default UI delegateSzabolcs David2023-01-152-0/+16
| | | | | | | | | | Our implementation of QML file picker was outdated. Now directory picker is a separate type of dialog and other file selection modes are set in FileDialog.fileMode property. Pick-to: 6.4 6.5 Change-Id: Icc62369539c56666e596e5ee6f1b3068a43acd81 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-08-261-1/+1
| | | | | | Task-number: QTBUG-105718 Change-Id: I2ad190e5536cdbdc8d2656e61892545d66911a02 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Use SPDX license identifiersLucie Gérard2022-07-081-38/+2
| | | | | | | | | | | Ammend 9b9d789fcb8f63a8998f1eefe44f2a1c8156c362 : some files were still missing SPDX headers Pick-to: 6.4 Task-number: QTBUG-67283 Task-number: QTBUG-104589 Change-Id: Ia4d2aae636bbdb1a99c422e3b8d3f097c3af34d6 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Add license headers to cmake filesLucie Gérard2022-07-071-0/+3
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: I118bd63694cfe2c9a413af4a38828a31727f8e86 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-2212-456/+24
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I869ffda1080e283f231eb0dc4477b260f2054d99 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Support HTML5 <datalist> elementPeter Varga2022-06-192-0/+78
| | | | | | | | | | | | | | | | | The datalist uses Chromium's autofill component to fetch and filter predefined options in the list and autocomplete the field with the selected option. Autofill component is added to build and bound to WebEngine. All the unnecessary autofill features for datalist are supposed to be disabled: payment/credit card support, password manager, save profile data, store suggestions in database etc. Custom popups for the dropdown are implemented for Widget and Quick. Scrolling in dropdown is not implemented in this change. Fixes: QTBUG-54433 Pick-to: 6.4 Change-Id: I155d02d6dbc9d88fbca4bc5f55b76c19d0ba7a9d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Use qualified imports to avoid prototype loopsMarco Bubke2022-05-093-7/+6
| | | | | | | | | | In the designer model we don't use import order to simplify the meta type system. There are only very few places where we get a prototype chain loop. In most cases qualified imports are used. Pick-to: 6.3 6.2 Change-Id: If4baac38cabb7773f58c0d326806fd6fd5612a99 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Remove the rest of qmake based configurationMichal Klocek2021-10-141-20/+0
| | | | | | | | | | The only not cover part in cmake port are: * ios builds for qtpdf * qt static dependecies for qpdf Pick-to: 6.2 Change-Id: Iefe624c35d847b4a9c3cd970192487340b1657f9 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Rewrite gn-cmake integrationMichal Klocek2021-08-291-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 missing touch-related delegates to CMakeBalazs Egedi2021-08-261-0/+2
| | | | | | | Task-number: QTBUG-93666 Pick-to: 6.2 Change-Id: Id959077f4aeb8f6e4d619d88a683b8f5f7447775 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Reintroduce File Picker controlBalazs Egedi2021-08-091-11/+5
| | | | | | | | | | - 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>
* Implement QML Color DialogBalazs Egedi2021-08-041-12/+274
| | | | | | | | | | Quick Controls 2 does not contain Color Dialog, the Labs version does not run on every OS. Task-number: QTBUG-93666 Pick-to: 6.2 Change-Id: Idfb1fd017a7f7b74c4ad135575a9727607dacac4 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Remove Quick Controls 1 UIDelegates and introduce UIDelegates testBalazs Egedi2021-07-0117-138/+281
| | | | | | | | | | | - Renamed Controls2Delegates to ControlsDelegates - Removed option to use Quick Controls 1 delegates - Added test to check if controls are shown Task-number: QTBUG-93666 Change-Id: Iccca948615309285db7fc57d14fb1cdcdef28051 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Fix 'WebEngine' ambiguity for Qt6Michal Klocek2021-04-1314-0/+899
'WebEngine' is a qml module, however name itself is ambiguous. Thefore now with Qt6 and with cmake port name the module as WebEngineQuick. Change-Id: I948672dd5d389a01c6a31ec871459164fd989c0f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>