| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
'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>
|
|\
| |
| |
| | |
Change-Id: I0dd7c64669f4b130047a4a3836f62f7ee5b5f8d9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On wayland with weston the popup quickwindow should have
parent otherwise it gets into 'mad' mode and jumps
around the screen.
This also fixes similar issue on some embedded x11 setups.
Adding parent brakes positioning of popups, but the
fix is done in followup patch.
This patch also has a regression, closing application
during opened comobox will cause crash, however before this
patch application simply did not remove render process or
"hanged" on exit. This issue is also handled in follow up
patches.
Change-Id: I876b9a5b58a731eee95f30a52a3c2705730631da
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Prepare it to be used in widgets api for load status change. Turn it into
simple value type which is allowed to be copied, stored and spied upon.
[ChangeLog] Move WebEngineLoadRequest as a basic type into QtWebEngineCore
Task-number: QTBUG-74585
Change-Id: Ie182da02a539a89323b8bbec07f1daa700309e70
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Idee0142b0e33fdf8ca663f1ef1bcd8b932985043
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
|\|
| |
| |
| |
| |
| | |
Including update to 87-based
Change-Id: I36b6054e00de97ab055d0bc800cff08d0408fac6
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In qml when on platforms without windowing system
we need to send show notification.
Note this was not required with old compositor, since
it was hooked up differently than viz.
Task-number: QTBUG-86034
Change-Id: I3ecdc033802d59c15637bc0e48961cd7748b1c6b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\|
| |
| |
| |
| |
| | |
Last commits before 87 update.
Change-Id: Id156b0199a8fd354c946cfe604ae8541ba554658
|
| |
| |
| |
| |
| | |
Change-Id: Idb41daa68709c769330527a713689241ac073359
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This drops dependency on view delegate implementations
in web contents adapter client.
Change-Id: I73a0dda0a790b7afe3fa774b53db9aa263d48ef9
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
This is required to decouple 'view' logic from page.
Change-Id: I84ef8cf729ef87d9339cae3f1bb1f0c709035ccf
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I8bfb805661aa0d2bc2c66dbbb5843b2e551aa64d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Reuse core class and adopt api:
* add missing setUrlSource to c++ class
* fix typing for setRunsOnSubFrames
* remove all invokable from setters in qml,
we use properties for that anyway.
* remove invokable toString , since we have debug
stream operator in c++
[ChangeLog] In qml websetttings.runOnSubframes is now
websettings.runsOnSubFrames
Change-Id: Iba822a7aa6a59940484c972726d710a1b66cb20d
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In widget apis webenginescripts are value types and are managed
by webenginescriptcollection. Introduce same concept in qml and
make qquickwebenginescript a value type and reuse core userscript
as private implementation. Rewrite webenginscript list handling.
This patch is half baked since it does not include docs and tests
for new api, however aim is to move script classes to core and reuse
those in qml land. Therefore, new class introduced here is going to
be removed in follow up patches, so all the missing parts will be added
later. A new way of managing scripts in qml is as follows:
* using collection with javascript dictionaries
var script = { name: "FOO"
sourceUrl: Qt.resolvedUrl("foo.js"),
injectionPoint: WebEngineScript.DocumentReady }
webEngineView.userScripts.collection = [ script1, script2 ];
* using collection with webscript basic type
var script = WebEngine.script()
script.name = "FOO"
webEngineView.userScripts.collection = [ script ];
* using fine grain user script collection api with basic type
var script = WebEngine.script()
script.name = "FOO"
webEngineView.userScripts.insert(script)
Of course new api can be extended and we can provide more convince
overloads.
Note the main motivation here is to enable reuse webenginescript object
created in c++ land, which is now passed as value in follow up
patches.
This changes reuses private apis of qml and will most likely require
further changes when QTBUG-82443 is completed.
[ChangeLog] WebEngineScript is a basic value type in qml, it is no
longer declarative way of creating it, instead use WebEngine.script()
Change-Id: I6a0ac3607e4522ccaefcec0a7d2986577d7e7024
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-74585
Change-Id: I953f46d01c1e4a82ab0d75b5f955e4f346f1c941
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Drop duplicated enums. Use qwebenginesettings as private
for qquickwebenginesettings. This can most likely
be more optimized when profile is moved to core.
Change-Id: I04bdc6c5a35556bf6d38a273cefeeee9d2a0a310
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
src/core/compositor/display_gl_output_surface_qsg.cpp
src/core/web_engine_context.cpp
tests/auto/quick/quick.pro
Change-Id: Iaf03434696788c89f5d3b524969513a89cb0a235
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is the case when the WebEngineNewViewRequest.openIn()
is not called on newViewRequested().
For example, when opening the view source from context
menu in quick minimal example.
Fixes: QTBUG-85494
Change-Id: I7c1ae53684361de459b2f268e471904e632821b0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ifdffc556278fa5d133da1896600a71248662e9fa
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Removes certificateErrorControllerPrivate,
moves error handling logic to core.
Change-Id: I050f73f1e37eb9ae39ad471fe1673d2b6140cf89
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Update qml certificate error test.
Task-number: QTBUG-74585
Change-Id: I9383052bd1e37160d03e3d66e8f2e4a749023736
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Replace
QString::fromUtf16({const ushort * -> const char16_t})
QMap::{unite -> insert}
Q{Hover,DragEnter,DragMove,Drop}Event::{posF() -> position()}
Q{Hover,DragEnter,DragMove,Drop}Event::{pos() -> position().toPoint()}
Q{DragEnter,Drop}Event::{mouseButtons -> buttons}
Q{DragEnter,Drop}Event::{keyboardModifiers -> modifiers}
QMouseEvent::{localPos -> position}
QMouseEvent::{windowPos -> scenePosition}
QMouseEvent::{screenPos -> globalPosition}
These should all be just renames without any change in behavior (save
for some floating point conversions). The one remaining issue concerns
the deprecation of binary JSON in qtbase, which is recommended to be
replaced with CBOR.
Change-Id: I8f3b533242fe9a58c08c2b09ff5d0bdbbfa6dd17
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before previous change unfilteredLink(private) was returned as
linkUrl(public), however linkUrl(private) was also used,
therefore when merging context menu data classes functions
were refactored to unfilteredLink and filteredLink to prevent
braking the logic, now fix the public api as it was before.
Change-Id: I84e0444b32aa344ed0401b58b5a8144a6fb58441
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Introduce new class qwebenginecontextmenurequest in core which merges:
* qquickwebenginecontextmenurequest
* qwebenginecontextmenudata
* implictly shared webenginecontextdata
Unfortunately new class has to be QObject, since we want to reuse it qml.
Q_GADGET can be used only as a value type, however we need to know if
request is accepted or not in qml, therefore it must be passed
as pointer. Since we use QObject now, class is no longer implicitly
shared, however we only allocate request once and reuse the object for
every new request (it is still copied in qml just to keep it aligned
with other request handlers)
[ChangleLog] QWebEngineContextMenuRequest is replacement for
QWebEngineContextMenuData
Change-Id: Ib387ec2065361a4bacc20675ca7352ab75a0e436
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Replace Display{Producer,Consumer,FrameSink} with the new classes
Compositor and Compositor::Observer.
The Compositor subclasses are implemented by the OutputSurfaces,
replacing DisplayProducer in this role. Unlike DisplayProducer, the
new classes do not use QtQuick scenegraph types, but rather give
access to the software QImage or OpenGL texture directly.
The connection to the "other half" is simplified by replacing
DisplayConsumer with Compositor::Observer, which is no longer
implemented by RenderWidgetHostViewQt, but directly by its delegates
in the quick and widgets libraries. RenderWidgetHostViewQt now only
provides the delegate with a Compositor::Id which is used to connect
the corresponding Compositor and Observer.
The delegates are responsible for generating QtQuick scenegraph nodes
from the information provided by the Compositor subclasses.
Behavior with software and old OpenGL scenegraph backends is
unchanged: both continue to work. As for the RHI scenegraph backend,
the code here is correct but nonetheless not working: changes are
needed in qtbase to make RHI use the global share context for its
OpenGL context.
Fixes: QTBUG-78682
Change-Id: I837da8860a18ec366ed33f6ecc44c147245e1101
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is required to remove the ; from the macro with Qt 6.
Task-number: QTBUG-82978
Change-Id: Id948c173695923a1ea83a2098bafc10cfd4dc22b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I40d9ae90a4ea82c6242f5d0a1665af3856ad2f0b
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-83476
Change-Id: I63ad9801e3e97f7fdac959600c69c04d0105be1f
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
|\ \ |
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/pdf/quick/qquickpdfselection_p.h
Change-Id: I6eec37a01347c2d47cbfc1114326dfc6b58719ff
|
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes: QTBUG-83732
Change-Id: Ie07a1ecf87b214436ab7cea07003ddd5aeaedda3
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change fixes several issues:
- Accepting mouse lock permission from modal dialog was not working on
Linux. XCB needs some time to activate the parent window after accepting
the dialog and we expected to have immediate active focus.
- Implementation of RenderWidgetHostViewBase::IsMouseLocked() was
missing.
- Fixed event.movementX/movementY by disabling ConsolidatedMovementXY
feature. Calculate movement properties in WebEngine instead of blink.
Task-number: QTBUG-83294
Change-Id: Ic03d05c1026a113cf5e8d22544fc508d9f285876
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Instead of using QSharedPointer's reference count to communicate
adoption/non-adoption, change adoptNewWindow to return a adapter pointer, with
null meaning non-adoption. Then change QWebEnginePage's implementation to reuse
already existing adapters if possible, restoring previous behavior of
OpenURLFromTab when createWindow returns this.
Task-number: QTBUG-80596
Change-Id: I8ee7c31e4294aabd3207c504cba67d6171c66cb0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|/ /
| |
| |
| |
| |
| | |
Task-number: QTBUG-82994
Change-Id: Ie06c326e045f4ed1e73a203f24eab054d64661f4
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure.pri
src/pdf/api/qpdfpagerenderer.h
Change-Id: I7e68277080e29238bbfe8511539ea75b2db89489
|
| |
| |
| |
| |
| |
| |
| | |
Will make it easier to expands with more features in the future
Change-Id: Ic7c1aca23a543c95a4873471c918f74606be2053
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
|/
|
|
|
| |
Change-Id: I0d52e4f6684425cb15319760e0001bdb13846997
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
tests/auto/quick/qquickwebengineview/BLACKLIST
Change-Id: I365daa73d2eb422ac916c32b86c5ad0d3c32086d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The RenderWidgetHostViewQtDelegate(Widget|Quick)Accessible interfaces
are forwarding their queries to the WebEngineView. In case of widget,
the view also forwards the query to the page.
The accessible interfaces may outlive the view and page. The interfaces
are not supposed to be used after the destruction of the underlying
objects. Thus, set the RenderWidgetHostViewQtDelegate and WebEngineView
accessible interfaces invalid if the corresponding pointers are null.
Also fix querying the root accessible interface of the web page when
the render frame host is not available.
This fixes crash when
QT_LOGGING_RULES="qt.accessibility.cache.debug=true"
is set and logger tries to pretty-print QAccessibleInterfaces during
destruction.
Task-number: QTBUG-78284
Change-Id: If18af0605061fcd82d019d0042dbf1c9d3a910be
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Blacklisted one test requiring an update of qt5.git.
Conflicts:
.qmake.conf
Change-Id: I75e55a1c5f8840cde55ddb60d632287b2affadeb
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Same as the widget fix:
ffdf7ece Fix widget accessibility on macOS
This patch depends on a focusChild() fix in qtdeclarative:
6420ad91d3 Fix QAccessibleQuickWindow::focusChild() to return focused descendant
Task-number: QTBUG-78284
Task-number: QTBUG-81539
Change-Id: If0da937d2c778a158ce02e1433b28ca0888692d8
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
| |
This can useful for e.g. implementing something like the "Task manager" in
Chromium or otherwise interacting with the render process (e.g. to kill it for
some reason while debugging).
[ChangeLog] Add a renderProcessPid() getter to (Q)WebEnginePage which allows
getting the process ID of the underlying render process.
Change-Id: Id5d59be9b6bd46ffc3a6aa480cb5ff7bd3b8aa31
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Due security changes to prevent url spoofing, our implementation
is getting extra invalidate url requests. Unfortunately, this breaks our
url handling, which now gets lots of new back and fort url changed signals and
make several unit test failures. After tedious investigation of Chromium
omnibox handing and trying out different approaches, it seems that
only sensible solution is to follow Chromium logic and make
NavigationStateChanged to update 'ui' in asynchronous matter.
This change tries not break any tests and simplify url handling.
The only side effect of this change is that WebEnginePage::setContent will
get extra 'url' signal of initial 'urlData' and later 'baseUrl' change
is emitted.
Fix one of qml tests which did not expect to have url on LoadStartedStatus.
Task-number: QTBUG-63388
Task-number: QTBUG-48995
Change-Id: Id347f4325c036e16bfae7bf2f694905e0f21f8d7
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
| |
The linkText hasn't had the alt attribute for a long time, so instead
add direct support for contextual title and alt text.
Change-Id: I88e1c43374d855da7fb0d1ca42c0eb474012f0f2
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
config.tests/glibc/glibc.cpp
src/3rdparty
src/core/configure.json
src/core/profile_io_data_qt.cpp
src/webengine/configure.json
src/webenginewidgets/api/qwebenginepage.cpp
tests/auto/widgets/qwebenginepage/BLACKLIST
Change-Id: I3e1781048c3cb09bfbf7427dfc5dd1fec11a2b97
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/3rdparty
Change-Id: Ib1202bcce587f9614013105c6a836344c1727cb7
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
On certificate validation error page load is just halted
meaning that no progress or load result are reported and
no default error page for certificate errors is shown.
Even though documentation states that 'By default,
an invalid certificate will be automatically rejected' and
that aligns with default implementation of certificateError
method within Page and non-deferred errors in quick View,
page or view silently stays in an intermediate state
for non-overridable errors. Fix this inconsistent behavior
by automatically rejecting certificate for every invalid case
(non-overridable error, not deferred or not implemented
overridable method).
Change-Id: Id1cee2ee5cc45bdcb5f262a6c99c84274e6ca374
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If adapter is initialized use always active url.
Fixes: QTBUG-77977
Change-Id: Ie8d4ec7d7c703322cef50d26931cce2b130dcf34
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is a replacement for the callbacks. Also introduces
QWebEngineFindTextResult class what is common for the Quick and Widget
APIs. This makes possible to provide extra information about the match,
eg. the number of matches and the index of the currently highlighted match.
[ChangeLog][QtWebEngine][WebEngineView] Introduces findTextFinished
signal and FindTextResult type to provide extra information about the
result of a text search.
[ChangeLog][QtWebEngineWidgets][QWebEnginePage] Introduces
findTextFinished signal and QWebEngineFindTextResult class to provide
extra information about the result of a text search.
Task-number: QTBUG-50420
Change-Id: Icb9737d2f596e6bc0fc5733144eeeaf2a77aab02
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
|