| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Move most of the findText logic to the QtWebEngineCore::FindTextHelper
class. This change also separates findText callbacks in the new class
for getting rid of the request ID conversion and make it easier to
remove them in Qt6.
Task-number: QTBUG-50420
Change-Id: I348cedd0f90a49f9b360165c46319aeed2c236c0
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Idad08244e0c749a9f70f5eb9f8cd236039b941b3
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes: QTBUG-76666
Change-Id: I74b9a26cd7be9a830f4eecd36db69777412ab316
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|\ \ \
| |/ /
| | |
| | | |
Change-Id: I806417dd7a6d2594a86ee49feedc4ad9ee48add2
|
| |\ \
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
src/3rdparty
src/core/configure.json
src/core/profile_io_data_qt.cpp
tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
Change-Id: Ie8ae4aa03881a0733ff497fff46e3f7040735650
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-75505
Change-Id: Ia1329ff554a86e307aa7995e9af1665ea6c5e64c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-76491
Change-Id: I19762b1d04fd7225963ac4e0e90cac6ca01256f7
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[ChangeLog][QtWebEngine][WebEngineView] WebEngineView now supports lifecycle
states that can be used for reducing CPU and memory consumption of invisible
views.
[ChangeLog][QtWebEngineWidgets][QWebEnginePage] QWebEnginePage now supports
lifecycle states that can be used for reducing CPU and memory consumption of
invisible pages.
Fixes: QTBUG-74166
Fixes: QTBUG-55079
Change-Id: I7d70c85dc995bd17c9fe91385a8e2750dbc0a627
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|\ \ \
| |/ /
| | |
| | | |
Change-Id: Idd02779e2910a792d50bb703ab92cd4da47f45fc
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Transform between global coordinates have the relative position to
the window transforms and coordinates where they are not.
Note, the content of the popup is not transformed yet.
Task-number: QTBUG-73244
Change-Id: I74b75771e8b60b409ab82c6238308b2497c435ef
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
|\ \ \
| |/ /
| | |
| | | |
Change-Id: Iab8e05beb7ede38bacaa35322d1f79cfc85cd470
|
| |\ \
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
src/3rdparty
src/core/render_widget_host_view_qt.cpp
src/core/web_contents_view_qt.h
src/core/web_engine_context.cpp
Change-Id: I17f3a4814e88a5680dc61a6d734c171ccba00e8c
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Follow the other implementation and pass TakeFocus to WebContents
Delegate, and hook to our UI from there. Also fixes use of Blur instead
of LostFocus, which means we now render unfocused more correctly.
Change-Id: I34a1882489bc68b9ff36ed5139af0ee8a3a95b79
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\ \ \
| |/ /
| | |
| | | |
Change-Id: If771fabe97c4d75edc4627999f04f70ca1901060
|
| |\ \
| | |/
| | |
| | | |
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>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
Implement a tooltipRequested signal and a corresponding request class to
expose tooltip information to the users.
Task-number: QTBUG-59290
Change-Id: I4e31773c62a65d6f340aaa74237cb0076252cd5b
Reviewed-by: Michal Klocek <michal.klocek@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>
|
| |
| |
| |
| |
| |
| |
| | |
It's always 1.
Change-Id: I1c3d5bc3080da90379f03b6d0819c5656334751e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@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>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-69363
Change-Id: I54d1df17d82bf2297f43762b0ba86a080bafee23
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add possibility to build without widgets or qml support.
Move module related options to webengine's subconfigure.
Make proper dependencies between qml_module and qml_plugins.
Cleanup headers.
Fixes: QTBUG-68956
Task-number: QTBUG-70784
Change-Id: I4605d98b0d2c83c99af37e2186b5fbf10f8a6049
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@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
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a WebEngineAction is tied to a UI element and a context menu request
modifies its enabled state, the users get a warning:
'Binding loop detected for property "enabled"'
Avoid triggering the action's notifier signal when the default context
menu is being built.
Change-Id: Ie23087f0b879399cf1cb88c44a42cd0be537a750
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Freedesktop.org has provided an icon naming specification to
standardize access to system themes in various desktop
environments. Add standard names where it is possible and
remove non-standard ones.
https://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
Change-Id: Ib0ea2364eb45e05bad6a521b8af7263283893198
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
| |
Fixes: QTBUG-71513
Change-Id: If3dfa048cfce57a1f10fa7bde3e7892e00fc8fa9
Reviewed-by: Michal Klocek <michal.klocek@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>
|
|
|
|
|
|
|
|
|
| |
- Rename iconText to iconName
- Remove unused QQuickWebEngineAction::toggled signal
- Remove argument of QQuickWebEngineAction::enabledChanged signal
Change-Id: I37172c096003eea58e567753265abd91679dacf1
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We have currently two levels of initialization for WebEngineView:
the profile initialization and the adapter initialization.
The adapter initialization is delayed to first navigation request
to pick the right initial site instance and avoid creating dummy/blank
WebContents, which in turn would start unnecessary render process.
Profile initialization is delayed to make sure we avoid unnecessary
default profile creations. Created profiles use filestorage. Unfortunately
qml will call QQuickItem::componentComplete() only when the root element
is completed and the bindings can be already in use by that time.
Profile initialization has to take place before adapter initialization.
Construct adapter together with WebEngineView, but create and initialize
profile before adapter initialization.
Go through WebEngineView and fix emitting signals based on adapter
initialization. Most of the signals are emitted on initializationFinished().
Task-number: QTBUG-70248
Change-Id: I2acd8bff761c692a360733cbf537de53e1295695
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
WebEngineView supports getting the http status code (error code) for
failed loading requests only. This patch lets the user access the
status code for successfully loaded pages as well.
Change-Id: Ib8dbdfe94eed4d62e731c736c13f60ebd62a23fa
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|
|
|
|
|
|
| |
Amends c4cded3fd5ba64.
Change-Id: Ie0e01440e071ca01c6677a793ce0cc5f3f640ec7
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
| |
Do lazy initialization for WebEngineProfile on WebEngineView.
Fix unnecessary creation on default profile on destruction.
Task-number: QTBUG-66068
Change-Id: I9a5889387ac64f0dc718a9e105c8d498aed47a43
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
configure.json
examples/webenginewidgets/markdowneditor/resources/3rdparty/marked.js
examples/webenginewidgets/markdowneditor/resources/3rdparty/qt_attribution.json
examples/webenginewidgets/markdowneditor/resources/markdowneditor.qrc
mkspecs/features/platform.prf
src/3rdparty
src/core/media_capture_devices_dispatcher.cpp
src/core/net/url_request_context_getter_qt.cpp
src/core/net/url_request_context_getter_qt.h
src/core/web_contents_adapter.cpp
Change-Id: I467133ba455b1f85f6bb61793794c31cb1094541
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-69231
Change-Id: I35b503dae7e2d90b26b6e61a4c7c260e45df2b62
Reviewed-by: Filipe Azevedo <filipe.azevedo@kdab.com>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Add webengine-webchannel feature.
Change-Id: I600572180f8169aafe79cf0408527cc087d9a007
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds printRequested() signal for web content. This signal
is emitted on javascript window.print().
This change updates also qt printview manager implementation,
fixes a corner case and warnings about ipc unconsumed attachments.
Task-number: QTBUG-69237
Task-number: QTBUG-53745
Change-Id: I0c47b732e27e929ac6db237fb562b7d5f9b959c2
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also implement QQuickWebEngineView::action() method similar to the Widget API
to access the WebEngineActions.
[ChangeLog][QtWebEngine] Introduce WebEngineAction in Quick API
Task-number: QTBUG-56117
Change-Id: I758cd4703db4c111c1ed9187e091d4c845486c46
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-69360
Change-Id: Ia17ce79a8221aa339c72763a984bf1958935ef96
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Follow change of BrowserContextQt to ProfileQt.
Fix wrong naming usage of browserContext instead
of browserContextAdapter.
Change-Id: I75fdac685d9bffd44f0144921d3e87305d6d44c9
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Creates the default client cerficate store for the platform and when
given a choice of client certificates forwards to the choice to
the application.
Only a Widgets API for now.
Task-number: QTBUG-54877
Change-Id: Ie15152398d5769579fa0c07e3e3035c2374e9940
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changes 6c319ce and af313cb splited BrowserContextQt
into ProfileQt and ProfileIODataQt. Finalize the
change and rename leftover browserContext references
to follow the initial change.
Change-Id: I845142b1edb67ec4b94439be1e6cfc841dd3f55c
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously configure was generating two config headers
qtwebengine-config.h and qtwebengine-config_p.h, however
those headers were never installed or included as dependency
in Makefiles. Moreover, due to the name clash all features
were included into qt_lib_webengine_*.pri which is
QtWebEngine QML module.
Move configure to core so all features belong now to
qt_lib_webenginecore*.pri. Fix global includes to include
qtwebenginecore-config*.h.
Drop all DEFINES and use QT_CONFIG instead.
Cleanup all evil looking includes in headers for webengine and
webenginewidgets.
Change-Id: Iddbc8bf4487d9a5f0c19a71a9569535083507756
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ibf016b795ff98fddfa29fb5dc63924a2d2159d71
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|\ \
| |/
| |
| | |
refs/staging/dev
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The drag creates raster window, which on eglfs platform
can be problematic. In case of running qml based
browser without backing store, this will try to create a
backing store during drag event, which will abort on eglfs.
Therefore avoid the drag in qml in case the platform does
not support multiple windows.
This patch has the side effect of disabling drag even
when qml runs with backing store, i.e. using QQuickWidget and
therefore creating another raster window is not an issue.
[ChangeLog][Behavior Changes] Drag&Drop is now disabled for
QML based applications, when platform does not support
multiple top-level windows (like EGLFS).
Task-number: QTBUG-57516
Change-Id: I0c2685ba90914fe1f7168c79744c55e07e589488
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
BrowserContextAdapter is living and accessed only in UI thread,
remove QSharedPointer usage and change QWebengineProfile to use
QPointer. Prevent BrowserContextAdapter outliving WebEngineContext
by setting globalObject as a parent to track WebEngineContext
destruction.
This commits tries to simplify the life cycle handling
of browser context, it removes profile shutdown
methods and QWebEngineBrowserContext, which was used
to track profile destruction.
Task-number: QTBUG-62147
Change-Id: I79f2c38a123cd053e3a59f4900afbdc759a396fe
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In widgets we document that web contents can not out live browser
context ie. WebEngineProfile can not be deleted before WebEnginePage
which uses it.
In qml we can not be sure the order in which objects are garbage
collected. We used shared pointers to keep order of destruction.
Unfortunately shared pointers do not work well with corner cases,
and we added more and more code to deal with that (shutdown methods
+ qpointers wrapping qsharedpointers). In order to remove growing
complexity remove usage of shared pointers to keep strict deletion order.
Remove shared pointer from WebContentsAdapter and simply track the WebContents,
that is used by the given BrowserContext. Force deletion of webcontents first.
Change-Id: I05f886a0094d971b03f9a35e12c4b4672f0fe4ce
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|