<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/qt5/qtwebengine.git/src/webenginequick/ui, branch dev</title>
<subtitle>code.qt.io: qt/qtwebengine.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/'/>
<entry>
<title>Replace custom ColorDialog with QtQuick ColorDialog</title>
<updated>2023-02-01T16:10:14+00:00</updated>
<author>
<name>Martin Negyokru</name>
<email>negyokru@inf.u-szeged.hu</email>
</author>
<published>2022-06-07T12:52:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=459b93b12c6d896ac1ff85ebe143b3176e3c4ffc'/>
<id>459b93b12c6d896ac1ff85ebe143b3176e3c4ffc</id>
<content type='text'>
Add fallback to custom implementation.
Add subdirectories of ControlsDelegates to import path.

Change-Id: I88224b267419664484cd0667456d9463d5c61bee
Reviewed-by: Peter Varga &lt;pvarga@inf.u-szeged.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add fallback to custom implementation.
Add subdirectories of ControlsDelegates to import path.

Change-Id: I88224b267419664484cd0667456d9463d5c61bee
Reviewed-by: Peter Varga &lt;pvarga@inf.u-szeged.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Quick: Fix file selection modes in the default UI delegate</title>
<updated>2023-01-15T20:33:52+00:00</updated>
<author>
<name>Szabolcs David</name>
<email>davidsz@inf.u-szeged.hu</email>
</author>
<published>2022-12-20T15:12:22+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=35d4b0b1d1c723e32d589b3dfddfe96eaa8e5568'/>
<id>35d4b0b1d1c723e32d589b3dfddfe96eaa8e5568</id>
<content type='text'>
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 &lt;allan.jensen@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;allan.jensen@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Change the license of all CMakeLists.txt and *.cmake files to BSD</title>
<updated>2022-08-26T17:12:20+00:00</updated>
<author>
<name>Lucie Gérard</name>
<email>lucie.gerard@qt.io</email>
</author>
<published>2022-08-22T14:02:03+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=10da225a6aff1ac900b653a1bfb0bee47b362e9c'/>
<id>10da225a6aff1ac900b653a1bfb0bee47b362e9c</id>
<content type='text'>
Task-number: QTBUG-105718
Change-Id: I2ad190e5536cdbdc8d2656e61892545d66911a02
Reviewed-by: Jörg Bornemann &lt;joerg.bornemann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Task-number: QTBUG-105718
Change-Id: I2ad190e5536cdbdc8d2656e61892545d66911a02
Reviewed-by: Jörg Bornemann &lt;joerg.bornemann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Use SPDX license identifiers</title>
<updated>2022-07-08T12:59:23+00:00</updated>
<author>
<name>Lucie Gérard</name>
<email>lucie.gerard@qt.io</email>
</author>
<published>2022-06-29T12:22:28+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=e74ccbf41d2cce734175579a58d36eb7f223319c'/>
<id>e74ccbf41d2cce734175579a58d36eb7f223319c</id>
<content type='text'>
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 &lt;joerg.bornemann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;joerg.bornemann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add license headers to cmake files</title>
<updated>2022-07-07T12:36:06+00:00</updated>
<author>
<name>Lucie Gérard</name>
<email>lucie.gerard@qt.io</email>
</author>
<published>2022-07-06T08:58:17+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=8efa3dbeaceed5ae7485296e2ae5ed6b7effdaaf'/>
<id>8efa3dbeaceed5ae7485296e2ae5ed6b7effdaaf</id>
<content type='text'>
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 &lt;joerg.bornemann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;joerg.bornemann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Use SPDX license identifiers</title>
<updated>2022-06-22T18:54:30+00:00</updated>
<author>
<name>Lucie Gérard</name>
<email>lucie.gerard@qt.io</email>
</author>
<published>2022-06-09T13:57:02+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=9b9d789fcb8f63a8998f1eefe44f2a1c8156c362'/>
<id>9b9d789fcb8f63a8998f1eefe44f2a1c8156c362</id>
<content type='text'>
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 &lt;joerg.bornemann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;joerg.bornemann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Support HTML5 &lt;datalist&gt; element</title>
<updated>2022-06-19T01:08:06+00:00</updated>
<author>
<name>Peter Varga</name>
<email>pvarga@inf.u-szeged.hu</email>
</author>
<published>2021-06-14T14:20:26+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=19c6b0a22f20a33c8c1fd4bdea29468fa8b4e10e'/>
<id>19c6b0a22f20a33c8c1fd4bdea29468fa8b4e10e</id>
<content type='text'>
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 &lt;allan.jensen@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;allan.jensen@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Use qualified imports to avoid prototype loops</title>
<updated>2022-05-09T19:59:46+00:00</updated>
<author>
<name>Marco Bubke</name>
<email>marco.bubke@qt.io</email>
</author>
<published>2022-05-04T15:19:40+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=ede8dbb5c31266a340f1ea2cfc59541876e80e0c'/>
<id>ede8dbb5c31266a340f1ea2cfc59541876e80e0c</id>
<content type='text'>
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 &lt;michal.klocek@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;michal.klocek@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove the rest of qmake based configuration</title>
<updated>2021-10-13T22:05:53+00:00</updated>
<author>
<name>Michal Klocek</name>
<email>michal.klocek@qt.io</email>
</author>
<published>2021-09-02T06:01:36+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=d155f3da5d6e8ad08fab040d8f748d3bbdb69039'/>
<id>d155f3da5d6e8ad08fab040d8f748d3bbdb69039</id>
<content type='text'>
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 &lt;michael.bruning@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;michael.bruning@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Rewrite gn-cmake integration</title>
<updated>2021-08-29T13:54:21+00:00</updated>
<author>
<name>Michal Klocek</name>
<email>michal.klocek@qt.io</email>
</author>
<published>2021-08-20T08:33:57+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/qt5/qtwebengine.git/commit/?id=bd75c51f2a7f7384d3303e86764211cb3e32f03d'/>
<id>bd75c51f2a7f7384d3303e86764211cb3e32f03d</id>
<content type='text'>
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 &lt;allan.jensen@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;allan.jensen@qt.io&gt;
</pre>
</div>
</content>
</entry>
</feed>
