| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recent change in qtdeclarative 42d411e2e8 causes a focus out event
being delivered in case of popups to "root" item of quickwidget.
This is not expected as events are forwarded to parent "view" and
loosing a focus will hint Blink to trigger a pop up close request.
As a communication with a render process is asynchronous this
creates several race conditions in our tests and the Blink's popup
close request can close unexpectedly windows creating dangling pointers.
Moreover, the focus in never gained back leaving the Blink's logic in
a limbo state.
Simply ignore a focus out event in case of popups.
Fixes: QTBUG-99215
Pick-to: 6.3 6.2 6.2.3
Change-Id: I5ca6eda227101d4f19f15735e41f066cfd8ccea0
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seems accessing accessibility from qt post routines ends
badly since caches are gone already.
Add closingDown() function to web context, which is similar to
QCoreApplication::closingDown(), however return true on
post routine.
Guard delete accessibility calls.
Note the widget part is not necessary, but added for completeness,
since only qml can release profiles due to garbage collection.
Fixes: QTBUG-90904
Pick-to: 6.2 6.2.2 5.15
Change-Id: Ic0e7115cd17eb58f3d58f70fefbc197dfb7a6493
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tooltips should disappear when chromium requests it and it is done by an
explicit call of QToolTip::hideText() (see QTBUG-64933).
This, however would also hide a custom "global" tooltip because the
custom tooltip event notifies QWebEngineView to remove its own tooltip
to avoid more than one in a window. The QWebEngineView's tooltip handler
was override and it resulted custom tooltips to hide themselves.
As a fix, remove the custom tooltip handler from QWebEngineView and hide
tooltips only if requested by Chromium.
Fixes: QTBUG-97897
Pick-to: 6.2
Change-Id: I976e49218ec975b10e2f155096f6aec124270fdc
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: Ic1c25724ea2d6c2241ab2665703380002efae8c3
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
|
|
|
|
|
|
|
| |
Fix webengine directory path in project files and comments
Pick-to: 6.2 6.2.0
Change-Id: I06ed9ee41111e7135fa9feb152ad2a5eb2262b76
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
By mistake opengl was marked as required library, but
should be just optional.
Fix compilation issues.
This should enable build on yet another coin node.
Pick-to: 6.2
Change-Id: Id87404928e6b042d902fcfe0a7fed99a6806456f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
| |
Fixes: QTBUG-95668
Pick-to: 6.2
Change-Id: If3613043bfad00871b847c57a3e0961a67cec89b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: Ifa5892415a1e0b8ce9b6bfa10719aba618e3b799
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
Make it a static getter in QWebEngineView
Pick-to: 6.2
Fixes: QTBUG-95331
Change-Id: I552f0047343abd909c5cd521a7a7a01d62896b00
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I622ff55c1c9b6f9d4818228c75543c3deffa37be
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I16f27054871f63526946101e07cb0dcf4aa3b390
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I11d3f61d1c916e6696a1cbf85bb0e0457fe52188
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I58e2dc2443bca75b0d315694c9f6503251a7be02
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
API and documentation changes since 5.15 caused multiple warnings from
QDoc; this change addresses most of them. Some warnings indicate
missing documentation, those issues still remain.
Pick-to: 6.2
Change-Id: I96be38b7daac37a7e35c149b4b3ec3f18c4415c9
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I2d9cf4fffda1ad614388844781ac4fece15dde0d
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I2660e60665542681bc9b0a479ce7fd9d93b896ae
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: Iad93680dd0811086c481d9bf8adb298f663bdfa4
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
| |
Give messages a context and use placeholders for arguments.
Pick-to: 6.2
Change-Id: Ib07f74f6c9f0024c2851b3e4f2093f980115244d
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
| |
Pick-to: 6.2
Task-number: QTBUG-73497
Change-Id: I0a66c4f1767c54b0bcc9f9a3b61e29c43ec20177
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I5b0c1c7ef0966c3cff79184aa0733b59208d6890
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I35a4857d873559403d0574a69c59b4fd1e9a952f
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
We can only have one printer active at a time anyway.
At the same time restore some lost documentation.
Pick-to: 6.2
Task-number: QTBUG-63235
Change-Id: I454ef3fb038712c832e73c661120fbbe77b3a90c
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: Ifd7acf49b22be1532ba98371982af4b14f08e6fc
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Leaving further API modification for later
Pick-to: 6.2
Task-number: QTBUG-63235
Change-Id: I75367ee5d4ce071abaeed361d2dc27c64fb6dd8a
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
|
|
|
|
| |
[ChangeLog][QWebEngineCore][QWebEngineHistory] New methods to access
navigation history as a model through new class QWebEngineHistoryModel.
[ChangeLog][QWebEngineQuick] QQuickWebEngineHistory is merged into QWebEngineHistory.
Task-number: QTBUG-74585
Change-Id: I9f9a73bbaf3954282dfc220cfc2c4cb08a37fb73
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
Prevent linkage of core to widgets by moving printing API from
QWebEnginePage to View and using QPagedPaintDevice (the QtGui ancestor
of QPrinter) where it's needed.
Change-Id: I6ea96edb495b0dcaaa584bbe72632fda025c18d3
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ports QQuickWebEngineNewViewRequest to QtWebEngineCore.
[ChangeLog][QtWebEngineQuick][WebEngineView]
WebEngineView::NewViewRequested is now handled with
WebEngineView::acceptAsNewView() instead of with
WebEngineNewViewRequest::openIn().
Task-number: QTBUG-74587
Change-Id: I9b27128948076e13f2c228458e1e7491df12153d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
| |
FileSelectUploadFolder value is added.
Change-Id: Ie69782234bcbf3460d2999ac08ee9f88dea190c7
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Include WebChannel,Positioning cmake packages into WebEngineQuick
and WebEngineWidgets. WebEngineCore depends on it so this should
be pick up automatically, but in the case of clean build and due to
how things work in cmake this is required otherwise linker
genex will complain.
Change-Id: I54fe8ffdb824e1fd0c0dcdfbbb43b1bcf06411bb
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-74587
Change-Id: I9955a4c70b339523b5e9e9d6dffe928e61fbab90
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
| |
Fix errors from the 'clean headers' task on coin.
Change-Id: I058697e726228800c0fd3220b1d40ac154efb47c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
Fix some library dependencies and make proper header includes
in core.
Task-number: QTBUG-91760
Change-Id: I415361dd42ef2cc39716ce3f5f56e6e8556ac4c8
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
examples/webenginewidgets/printme/printhandler.cpp
src/3rdparty
src/core/api/qwebenginepage_p.h
src/core/content_browser_client_qt.h
src/core/web_contents_adapter_client.h
src/core/web_contents_delegate_qt.cpp
src/core/web_contents_delegate_qt.h
src/webenginequick/api/qquickwebengineview_p_p.h
tests/auto/quick/qmltests/data/tst_download.qml
tests/auto/quick/qmltests/data/tst_viewSoure.qml
tests/auto/widgets/loadsignals/tst_loadsignals.cpp
tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp
Change-Id: I9c1819ec15e13d4f8e244defe860e26274b5d4be
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change tries to match how chromium treats one single load. Before
the pair of loadStarted/loadFinished methods for api classes was called
on delegate's DidStartNavigation/DidFinishNavigation, which might be many
within one single logical load. This is true for multiple usecases (like
multiple redirects on load, immediate form submit on DOM load, page's
subresource load, or just an error page load on failure). Tracking these
methods and deciding when to emit signals based on states are error-prone
and complicates logic for no benefits. Also it somewhat lies about when
real load is done, which is only started and finished on outer methods
DidStartLoading/DidStopLoading, which are conveniently called only once
for all mentioned usecases. So, this change uses these methods to issue
signals for load start/finish, and only makes exception for error page,
which is needed for quick's private test support.
Fixes: QTBUG-65223
Fixes: QTBUG-76802
Fixes: QTBUG-87089
Fixes: QTBUG-90342
Fixes: QTBUG-91773
Fixes: QTBUG-92063
Change-Id: I9cc99b639030fedd8cf6a9dc04d0869d6be6357d
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-76802
Change-Id: I38cd148706c0479ffbad1e0d2877adc1cad9038d
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When printing with the default resolution of QPrinter, rasterized images
of pages are just too small to produce sharp result. Documentation of
QPrinter also mentions that the default ScreenResolution should
only be used for drafts.
Change-Id: I5fe93f7985d16b1126cf2bbcb9b4a4ddbdfd21f2
Task-number: QTBUG-92185
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I938b593deef66c782f5b0998948c0a7b2c32f656
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I0dd7c64669f4b130047a4a3836f62f7ee5b5f8d9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the QWebEnginePage changed on a QWebEngineView, all signal connec-
tions between the view and the previous page were removed as well, even
those that the user connected themself.
To prevent unexpected behavior, only disconnect the signals that the
view connected to automatically and leave the rest of the connections
intact when the page on the view is changed.
Fixes: QTBUG-90509
Change-Id: Icac3e3be0b598dec8107e8fffdf7f25dd88a4b71
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Idee0142b0e33fdf8ca663f1ef1bcd8b932985043
|
| |
| |
| |
| |
| |
| |
| | |
Also removes another private dependency
Change-Id: Ie0a671c66f9aa49e7001c44e69bf94e11ab058a5
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For triggering an error page 3 conditions should be fulfilled:
- main frame navigation
- the page's document is empty
- the HTTP status code indicates an error
This fix adds check for the empty document and sends loadFinished signal
without expecting an error page if the document is not empty.
Fixes: QTBUG-90517
Change-Id: I6463d75fb5e682932feca64b0f059f9aa475795c
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I7e0ebecdbb68cfff0b574c966f3fa80d28680e1c
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| | |
Change-Id: I33c1af7c431055d95e0fb540246765cce684de15
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Load with client or server http error results in successful navigation,
which leads to 'true' loadFinished result, and subsequent chromium's error
page load and display with second set of loadStarted/loadFinished signals.
This effectively ignores QWebEngineSettings::ErrorPageEnabled. Fixing it
requires submodule change to ask embedder if error pages should also be
suppressed for http errors.
Also update chromium for required change, which pulls in the following changes:
* e71010069b4 Fix embedded builds with printing enabled
* f5a93d251cc Allow the embedder to suppress an error page for http errors
Change-Id: I731678575439a6dad90dfb89e79b0083c63b49c2
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Ignore url loading if the request is not from a data
url and the Q(Quick)WebEngineNewViewRequest.openIn() is not
called on newViewRequested().
Set the missing Q(Quick)WebEngineNewViewRequest::requestedUrl
property.
Fixes: QTBUG-87378
Change-Id: Idddc9cf075db68dcf5825b3e746d16419d02cfa0
Reviewed-by: Tamas Zakor <ztamas@inf.u-szeged.hu>
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|