| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: I1dd136df7004b11e2f38a2ec4e82a6fa81627479
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently users might forget to delete webcontent client before
profile adapter. This might be nasty if users are not aware of default
profile. Instead of asserting badly in chromium, clean up and release
chromium resources.
This avoids the crash, but might leak memory if users never deletes
page.
Task-number: QTBUG-74021
Change-Id: I66f466f169d12f7ee08866d505260dca47800bb0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure all \brief descriptions start with an upper-case letter and end with a .
Also start descriptions of \class with the name of the class or struct.
Change-Id: Ifd2656201f9c1dff092085508a5423ce516e2d3f
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Explain what happens when the HTML has no proper <title> defined and clarify the
meaning of 'by default': it refers to the state before load()/setUrl()/etc.
Fixes: QTBUG-71799
Change-Id: Ib2669007573b3ea53e205d9228237bae392f6f78
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In the Widgets API, download items are children of the profile and are
destroyed when the parent profile destroys its children. The download
item's destructor can therefore not access the profile, as it would
cause a heap-use-after-free crashes. On quick side turn ongoing downloads
cleanup to match widgets one.
Fixes: QTBUG-73839
Change-Id: Iabb379e91187e3e68ebcd4693fec35883b72b1f2
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-73839
Change-Id: Ieebaa802bdfe0c410618e4213a9bedbbae9d0f61
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Move the client certificate store from being global to being tied
to individual profiles.
Change-Id: Ib21ae14c501b7d0612b84ae7535120291aeeada2
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Based on review feedback
Change-Id: Ide40d4fd563ea682eaa2cc457d857445adea85cd
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't access nullpointer.
Also don't print developer warnings to end-users.
Change-Id: I273101dd581a335464ff2dbae5095bc99e455649
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog] Introduces a setting to control if the internal PDF viewer
is enabled. By default, PDF documents will now be opened in the viewer
instead of being downloaded.
Change-Id: I78b3b3702ae3be3da58c9635720ba861db3de661
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently selectionChanged is emitted from a Chromium task, meaning our
MessagePump is blocked and, even with a nested QEventLoop, it's not possible to
for Chromium code to make any progress during the handling of this signal.
Fixes: QTBUG-73876
Change-Id: I45135238cffa81fb0db74ddfd53037c7f1b94348
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I0822fb8a10945a252cfd1aacaf0b6d9902cc8831
|
| |
| |
| |
| |
| |
| |
| |
| | |
Warn about callbacks on QWebEnginePage destruction.
Task-number: QTBUG-72816
Change-Id: I8dbc297a8f364bc237b0672a63325af8da197e01
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |\
| | |
| | |
| | | |
Change-Id: I4315127d8a329bcb65e6853d4f3625b6dbc55560
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For QQuickWidget::show does not work correctly
if widget was not hidden.
Fixes: QTBUG-72299
Change-Id: I12fba8c18cbf3f847d30de8b057a50e6d9917fde
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Replace separate notifications from delegate with one combined notification and
change detection. Store view rect, window rect and screen info in RWHVQ to
ensure the properties are in a consistent state.
Change-Id: Icef8a17e72882f56db249f5553b6cf554e1f91dc
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Implements API for end-user notifications.
Co-authored by Allan Sandfeld Jensen
[ChangeLog][Profile] Support for Web Notifications API
for end-user notifications through QWebEngineNotification
Task-number: QTBUG-50995
Fixes: QTBUG-51191
Change-Id: Icebaaa05275a713e801f1f8ecdaaec725fa264c8
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
src/core/content_browser_client_qt.cpp
src/core/content_browser_client_qt.h
Change-Id: I3da791a82dab56fd7535ba1e4c0ab1d9ca74f547
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It's always 1.
Change-Id: I1c3d5bc3080da90379f03b6d0819c5656334751e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Currently interceptor sufferers thread safety issues, when
custom profiles are deleted, interceptor is set to be nullptr,
however it can be still referenced in IO thread. Since
profile was split to ui and io part, where io part can outlive
the ui part, this can boost thread safety issues.
Since QWebEngineUrlRequestInterceptor is living on ui thread
simplify the logic move intercept call to ui thread.
This fixes the issue of referencing interceptor in io thread.
Add new method to install interceptor setUrlRequestInterceptor,
and deprecate old one. Update interceptor install method name
on page to match the profile one.
Task-number: QTBUG-69844
Change-Id: I5dd2b6b734fd91906cccc6c1408ffbe7b1b4250c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\ \ \ \
| |/ / /
|/| / /
| |/ / |
Change-Id: I2889e49fe9f71bfc996689feb0f350e09569f611
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I82855788542dc7b659eb8d83565b6f32d89d0ea5
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Touch handle and touch selection menu are not implemented for widget.
Task-number: QTBUG-59999
Change-Id: Ia492e58b83d3ad38cdf6877d468724c399f34367
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add functions and property to set the default download
location in QWebEngineProfile and QQuickWebEngineProfile.
Also add new test for check uniquifying download filename.
Update plugins.qmltypes to 1.9
[ChangeLog][Profile][QtWebEngine][QtWebEngineWidgets]
Add functions and property to set the default download
location in QWebEngineProfile and QQuickWebEngineProfile.
Task-number: QTBUG-66262
Task-number: QTBUG-72176
Change-Id: I7fa93b66c326766b176aec24d453dd75602b91de
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\| |
| | |
| | |
| | | |
Change-Id: Ib374079ded76e43d4b72f725bbf16fe353ef827e
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We were never removing internal download item.
[ChangeLog][Behavioral Changes] Deleting a download item will
now also cancel it if it is still in progress.
Change-Id: I2fab497d7acf7ca6ca17f4a61e106b1c18bfb333
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
src/core/net/network_delegate_qt.cpp
src/core/profile_io_data_qt.cpp
src/core/web_engine_context.h
tests/auto/core/qwebengineurlrequestinterceptor/tst_qwebengineurlrequestinterceptor.cpp
Change-Id: Id98e3f52f548ceb5b68abd80aedd6ae59db72cc0
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QToolTip does wrap aggressively if HTML text is shown, which <p>...</p>
enforces. Anyhow, this is not the default behavior for most browsers.
This reverts part of b43774a9b89ed9.
Fixes: QTBUG-72021
Change-Id: Iea0480c51f7c35c466bf3064423b2a81ee5b926c
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-68561
Change-Id: I4284725bc64f78dc4df39d88885d6a463c8efa62
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/core/compositor/delegated_frame_node.cpp
src/core/profile_adapter.cpp
src/core/profile_io_data_qt.cpp
src/webengine/api/qquickwebengineprofile.cpp
src/webenginewidgets/api/qwebengineprofile.cpp
Change-Id: I35ec8480e758bbcb6c5942a5401cb1b6dbdcc428
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The change improves the documentation of QWebEngineUrlSchemeHandler to
notify the requirement of registering a custom scheme before installing
a custom scheme handler.
Also start showing warnings when
QWebEngineProfile::installUrlSchemeHandler() is called before a scheme
is registered. Also show warnings when installing the handler using
QML.
Task-number: QTBUG-72079
Change-Id: If249592ea43fe2f9ad587a6ff4e8c9dedcc5d3d3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Do the update after the input properties are changed in
RenderWidgetHostViewQt. Moreover, always update on input
state changes, like cursor position, surrounding text and
text selection (see QInputMethod::update() docs).
Task-number: QTBUG-70158
Task-number: QTBUG-71995
Change-Id: I9d5c6e299826fbe66f5285b648013ef79aabed9b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Add some useful information.
Change-Id: I39290c8dfc6c4a1d87c6b24fe6c48cab93f805db
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Printing operations were blocking the UI thread, so applications
were irresponsive when printing in large size or high resolution.
Introduce a new worker for the painting logic and use shared pointers
to carry the data around and avoid copying PDF data between threads.
Task-number: QTBUG-68561
Change-Id: I30633380b75acd14f1a1df87985c99540168a9f1
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/core/compositor/compositor.cpp
src/core/compositor/compositor.h
Change-Id: I8a4d73d728d93d95e499849f8778cc88dda2105e
|
| |\
| | |
| | |
| | | |
Change-Id: I05a9474efe6b00cc18ad6e33e19a1eb1cbbe8afe
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We apparently can't not rely on getting a QEvent::ParentAboutToChange
event before every QEvent::ParentChange event.
Change-Id: Ie55b51f8c75623bc4f1a943367fb0070078df55b
Fixes: QTBUG-71565
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |/
| |
| |
| |
| |
| |
| | |
Means we can get screenshots in devtools.
Change-Id: I7b50d6ac5a54d236573bcf5f58ae872bd50dccad
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Given the changes that implement GPU compositing on the UI thread (and
thus only a single thread accesses all OpenGL contexts) it is now
possible to enable GPU compositing to work together with ANGLE, which
did not work before due to ANGLE being thread-unsafe.
This requires a couple of things:
- Enable GPU compositing via kInProcessGPU switch when using ANGLE
- A small fix in GLContextHelper::getEGLDisplay() to return a
correct "egldisplay "handle
- Improved logic when to pass the kDisableES3GLContext switch
depending on which OpenGL ES version is requested (2 or 3)
- Adjustments in RenderWidgetHostViewQtDelegateWidget() to set up a
correct surface format which matches the shared
context OpenGL ES major version
- A recent enough version of ANGLE (due to bugs calling
glTexImage2D with an unsupported internal texture format for
GL_DEPTH_COMPONENT, from inside
gpu::gles2::IsWebGLDrawBuffersSupported)
By default if no special QSurfaceFormat is set as the default
surface format, using ANGLE will create an OpenGL ES 2 context,
and will thus provide support only for WebGL 1.
To enable OpenGL ES 3 / WebGL 2 support, make sure to set a
default QSurfaceFormat with major version set to 3, and enable
ANGLE either via QT_OPENGL=angle or
QGuiApplication::setAttribute(Qt::AA_UseOpenGLES).
The default surface format must be set before the Q*App instance
is created.
Manual test "webgl" added.
Task-number: QTBUG-53908
Task-number: QTBUG-55604
Task-number: QTBUG-69236
Change-Id: Ic31dfdff1ca22d4689db5cf64126d7d12790aa76
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/core/render_widget_host_view_qt.cpp
src/core/web_contents_adapter_client.h
src/webenginewidgets/api/qwebenginepage_p.h
Change-Id: Ibd011c40839c09469218ac4c71a13d0a0b1c9778
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For restoring history a new WebContents is needed to be created.
Make it visible if the old WebContents was.
Task-number: QTBUG-71400
Change-Id: Ica10545e11413eb4da553f4976f9bf0c20125846
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Chromium creates "speculative" frames (RenderFrameHost and company) for pending
cross-process navigations (and maybe other navigations too). For example, a
redirect from http://qt.io to https://qt.io will trigger this, as described in
the bug report.
These speculative frames are loading in the background and only shown once they
are officially ready (as decided by the RenderFrameHostManager and signaled to
WebContentsObserver::RenderViewHostChanged). At least, this is how it's supposed
to work and how it works in Chrome. In WebEngine, however, we actually show
these speculative frames as soon as they are created and before they are ready.
This runs into the problem that the if the speculative frame is dropped (instead
of committed), then Chromium will not ask us to re-show the old frame (since it
hasn't actually asked to us to show the new frame, it naturally assumes we are
still showing the old one).
Fixes: QTBUG-68727
Change-Id: I9d53035ce60e3a002d5412d4473d940a32644b5d
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On the Quick side, navigation actions were dependent on the context menu.
They were only updated when requesting a new context menu and this is
obviously wrong if an action is tied to a button or another type of UI
element.
Change-Id: I5f14b019b66215f16d027fb57d76f052b1604365
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We don't use OpenSSL, but only depended on it because QtNetwork didn't
define QSslCertificate without an SSL backend.
I changed that in QtNetwork 5.12, so we only rely on a QtNetwork SSL
backend with older Qt versions.
Task-number: QTBUG-54877
Change-Id: I16f3077235f5c48610597868608ef2e5ca2efa99
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Implementation of the url scheme handler API in QWebEngineProfile and
QQuickWebEngineProfile is exactly identical, so move it to the ProfileAdapter
instead.
Change-Id: I01baf1c4e5b3c393675adefb0470def90b8b2813
Task-number: QTBUG-71215
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Makes it possible to make page specific intercepts, and is at the same
time safer by running in the UI-thread.
[ChangeLog][QtWebEngineWidgets][QWebEnginePage] Added
setRequestInterceptor, similar to the same call on profile except
it operates on a per-page basis and on the UI-thread.
Change-Id: Id5a7173156c25d0f030f00b6ef314d283c7c8cdd
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
The code follows Chromium and also set a CertNetFetcher on both Linux
and macOS, but it appears to be currently unused.
[ChangeLog][QWebEngineProfile] A profile can now be designated to
download OCSP records and thus enable OCSP verification on Linux.
Task-number: QTBUG-58059
Task-number: QTBUG-71164
Change-Id: I84fd34d4351cb7aa4417ce4058f97bad4b8d0cd4
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-70496
Change-Id: I393001986714cd39dee2ac4fae8433cde1383ef8
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|
|
|
|
|
|
|
| |
Get rid of old QSG type names, and also remove redundant setupTiledNode
call.
Change-Id: Ifbd83f6bdc0e029eb52899b20562ef6606f5562b
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
QWebEngineView now also emits url, title, icon and selection
changes on setPage in the save way when url changes. Before,
those updates were only forwarded from current page.
Fixes: QTBUG-69300
Change-Id: If827205094423bc00064a123ddb143b6002d2e7c
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|