| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
With C++ api we can now drop QQuick dependency
from QWebView tests.
Rewrite the test so it does not use QQuickWebView.
Change-Id: I92f4f43c39a0987908e2e97358a620cd9dfcb7b9
Reviewed-by: Moss Heim <moss.heim@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The API follows what we have in WebEngine, with an optional
std::function callback. No world ID argument is provided, however;
most of the backends don't support the concept.
The new function is not exposed to QML, since we cannot expose
std::function arguments. Instead, the existing QML API is kept,
and calls to it simply redirect to the C++ implementation.
Also removes runJavaScriptPrivate() from QWebView, and its related
implementation details in the plugins.
Task-number: QTBUG-131837
Change-Id: Idc1e492916e17caa3f061c0b2738b3c735837cf8
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
Move LoadStatus enum from QWebView class to
QWebLoadRequest class.
Small adjustments to fix compile issues.
Task-number: QTBUG-131837
Change-Id: I79b6a48b0426b177133502f75fb34af9d2120e46
Reviewed-by: Moss Heim <moss.heim@qt.io>
|
| |
|
|
|
|
|
| |
This class just removes _p suffix and fixes include headers.
Change-Id: I4cc819631f9f8f969264da99f0e32b8b56735704
Reviewed-by: Moss Heim <moss.heim@qt.io>
|
| |
|
|
|
|
|
|
|
| |
Move QWebViewSettings out of qwebview_p.h and make
it public.
Task-number: QTBUG-131837
Change-Id: I233ec3a5a3a2cb2441f05292a4d8c246d26f9eed
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In case we want create to QWebView directly
(so no QQuickWebView), webengine backend should create
QQuickView (subclass of QQuickWindow) instead on QQuickWindow,
which will take care of creating QQmlEngine to display
the "WebView" quick item.
Use LoadFromModule() call to create WebEngineView.
Remove WebViewFactory workaround and run webview tests
without QQuickWebView to test new setup.
Note QWebEnginePrivate class most likely should
be split up into to two classes to make it nicer
and avoid branching in logic, so this should be
revisited after c++ API merge.
Change-Id: Id240efc794528cdbccd92751a370fef722b04703
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
So far we emitted signals on qabstractwebview and then
reemited it later from qwebview to quickwebview.
Make emit directly from qwebview.
Note this patch changes the expected progress to 100 for
failed load. As this code was removed from
QWebView::onLoadingChanged.
if (loadRequest.m_status == QWebView::LoadFailedStatus)
m_progress = 0;
Note on windows plugin the loading progress is just boolean,
moreover if it 'not loading' the load progress is 100, which
would now give wrong value on first initialization (100),
therefore add m_progress as workaround.
Task-number: QTBUG-131837
Change-Id: I9cd003be3185ad956d35bbdbcf01a0349421a1d4
Reviewed-by: Moss Heim <moss.heim@qt.io>
|
| |
|
|
|
|
| |
Task-number: QTBUG-131837
Change-Id: If86e9f707abcc0ef5916ea4c938fe59f6f270a7c
Reviewed-by: Moss Heim <moss.heim@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Skip percent encodig in case of setHtml call with baseUrl
with non data scheme. See for reference:
https://developer.android.com/reference/android/webkit/WebView#
loadDataWithBaseURL(java.lang.String,%20java.lang.String,
%20java.lang.String,%20java.lang.String,%20java.lang.String)
Add test case to cover the issue, note this skips the
webenigne backend as it requires qmlengine to function.
This will be cleaned up in follow up patches.
Note the base url setting is not supported on "webview2".
Fixes: QTBUG-136082
Fixes: QTBUG-134723
Pick-to: 6.10 6.9 6.8
Change-Id: I6891ec9271fcf3ee78048a6b040d39b818087fa4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
This is the result of running util/normalize on the code base. The
following manual edits were needed:
(none)
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I42c969bfbc39e39ea6617ae7f6b585f35265bdd4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Do not rely on compile time flags, as we can run the test
with backend selected during runtime.
Introduce WebViewFactory to hide the fact that webview
tests uses quick apis. This should be all clean up when
c++ api are introduced.
Pick-to: 6.10
Change-Id: Ib630e828e6277061b84c1fe528c2d497ba4d0b4e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
|
|
|
| |
Make configuration more verbose. Advertise
also other backends.
Pick-to: 6.10
Change-Id: I6bfac38d1e1f88c7850ced9410477ad0de071055
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Qt webview tests expect the api calls to be synchronous, but some of
webview2 api calls are async. This changes their behavior to be
synchronous.
other fixes:
fixed stopEnabledAfterLoadStarted test to rely on webview
being async.
fixed some null pointer issues
changed m_initData to class member
Pick-to: 6.10
Task-number: QTBUG-75747
Change-Id: I979f1635cf049a90be3c8b134f61f5d6f594d971
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In practice this have been the case for anyone not installing
QtWebEngine and the platform issue that we had, and that required
special initialization set-up, hasn't been an issue and that code has
been removed from 6.5 and newer
(see: 5f15afaaf07586006b1731cadcb061fa23c71aef). With this change we'll
use the native back-end by default on macOS.
[ChangeLog][macOS] macOS will now use the native WebView backend by
default, meaning QtWebEngine is no longer required on macOS.
Change-Id: Iebcefddf93432c5184d495d286bdead679e423de
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As referenced in android docs:
https://developer.android.com/reference/android/webkit/WebView
loaded HTML data has to be base64 encoded or use
url encoding.
To keep things aligned with webengine backend use
percent encoding, however "base64" would also give
correct result (unfortunately webengine assumes
percent encoding).
Fixes: QTBUG-129303
Pick-to: 6.8
Change-Id: Ided7ef12324d5b4854240700e5de7183069ad34a
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix handling of loadingChanged as this should come from
WebViewClient observer. This fixes flaky tests,
as they assumed 2 signals coming, but in reality
3 were emitted. In case 3rd did not come in time
test would pass.
Adjust the title test to match how it works on android.
Fix load result logic, as error assumes no load success signal
emitted and has to be one of
* LoadStartedStatus,
* LoadStoppedStatus,
* LoadSucceededStatus,
* LoadFailedStatus
Fixes: QTBUG-102712
Fixes: QTBUG-108752
Pick-to: 6.8
Change-Id: Ie3c729fa854ad1e6270a8276c1f2428af6c2614e
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
| |
Pick-to: 6.8
Change-Id: Id2d7a03c979f8506791ed673c498d21b0485a96f
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
|
|
| |
The title isn't changed immediately, so do QTRY_COMPARE
Pick-to: 6.8 6.7 6.5
Change-Id: I565ed9fadabdc491599b1d390c4ded6232857420
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
According to QUIP-18 [1], all test files should be
LicenseRef-Qt-Commercial OR GPL-3.0-only
[1]: https://contribute.qt-project.org/quips/18
Pick-to: 6.7
Task-number: QTBUG-121787
Change-Id: I90dc70a85a6699858ca8f6c6b48bb4e125a22da7
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
|
| |
|
|
|
|
|
|
| |
There's no public header to test. This repo provides a QML component.
Task-number: QTBUG-84884
Change-Id: I88c17a8839c431eb2e6bcfaa11b90d7953c2ceb6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
|
|
|
|
|
| |
Task-number: QTBUG-114495
Pick-to: 6.6 6.5 6.5.2
Change-Id: Ic32814a8e2672dd3835083dc2e8c0abebb9f168b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
| |
Task-number: QTBUG-109083
Change-Id: I9b596120f61e561755df23a51b406eeb6132a6b0
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Test mentioned in the title failed on Android 12 CI
Reason likely in qrc handling, root cause to be found
Task-number: QTBUG-108752
Change-Id: I74bc3810fbb8cd6e02e03445f023648523a91148
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Adds API and implementation for changing the settings of the WebView.
[ChangeLog][General] Added settings API to make it possible to
modify some of the WebView's built-in functionality.
Task-number: QTBUG-97487
Task-number: QTBUG-98549
Change-Id: Ia121175ec08c96f56fd2148b02dccbc963fff244
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a semantic patch using ClangTidyTransformator as in
qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8, but extended to
handle typedefs and accesses through pointers, too:
const std::string o = "object";
auto hasTypeIgnoringPointer = [](auto type) { return anyOf(hasType(type), hasType(pointsTo(type))); };
auto derivedFromAnyOfClasses = [&](ArrayRef<StringRef> classes) {
auto exprOfDeclaredType = [&](auto decl) {
return expr(hasTypeIgnoringPointer(hasUnqualifiedDesugaredType(recordType(hasDeclaration(decl))))).bind(o);
};
return exprOfDeclaredType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes))));
};
auto renameMethod = [&] (ArrayRef<StringRef> classes,
StringRef from, StringRef to) {
return makeRule(cxxMemberCallExpr(on(derivedFromAnyOfClasses(classes)),
callee(cxxMethodDecl(hasName(from), parameterCountIs(0)))),
changeTo(cat(access(o, cat(to)), "()")),
cat("use '", to, "' instead of '", from, "'"));
};
renameMethod(<classes>, "count", "size");
renameMethod(<classes>, "length", "size");
a.k.a qt-port-to-std-compatible-api V4 with config Scope: 'Container'.
Change-Id: I1f5e98760b107ca15264cbdf03ff5a48b21d99cc
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
|
| |
Task-number: QTBUG-105718
Change-Id: I824b873d98c922af8a4a290dcd797a2135d1147f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
|
| |
|
|
|
| |
Change-Id: I1fa562ad27ea027dcdbde3b3e8c640acda5d3291
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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: Iff8b50e402d070ba5fa2562fef50b7d7d3743cb4
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
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: I0f719de9e6e1fd4a7c50a247831e5a768e08df14
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
The cookie API that was added in 317e13cb2d97 missed the registration
and implementation for the native java functions needed for notifying
when a cookie got added/removed.
Fixes: QTBUG-102801
Pick-to: 6.3
Change-Id: I7594f75abba17b6ff1843d5349af085f90aae9b1
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
Skip a crashing test and ignore some failures to allow enalbing other
tests in CI.
Task-number: QTBUG-102712
Task-number: QTBUG-102801
Pick-to: 6.2 6.3
Change-Id: Ic5946ada21589e4b92b8da909fd099033553bbb8
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit 034a3f23a2b2f670287bd4daec3b2fe5df4a3006.
Reason for revert: Fixed 90f6047638ceab8944b4fefab1196f38ac579b67
Task-number: QTBUG-101520
Change-Id: Ibb0e27c04dba4ec56a8abd77cc70d800b25c91c0
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit e3cfec593c0090d835f876a1d303fedb498953fc.
Reason for revert: Fixed 90f6047638ceab8944b4fefab1196f38ac579b67
Task-number: QTBUG-101487
Change-Id: If3d93eb8531b545bc4d6ce0378f27f9314429e68
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- multipleWebViewWindows on qnx
- reload on qnx
- loadNonexistentFileUrl on qnx
- titleUpdate on qnx
- changeUserAgent on qnx
- loadProgress on qnx
- stop on qnx
- backAndForward on qnx
- removeFromCanvas on qnx
- loadEmptyPageViewVisible on qnx
- stopEnabledAfterLoadStarted on qnx
- multipleWebViews on qnx
- loadEmptyPageViewHidden on qnx
- setAndDeleteCookies on qnx
- showWebView on qnx
Pick-to: 6.2
Pick-to: 6.3
Task-number: QTBUG-101520
Change-Id: Icc95ce78e5bf57d988704ce84711a2e1be75e97b
Reviewed-by: CI Insignificant Platforms Monitor Bot <ci_insignificant_platforms_monitor_bot@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- loadRequest on qnx
- load on qnx
- setAndDeleteCookie on qnx
- loadHtml on qnx
- runJavaScript on qnx
Pick-to: 6.2
Pick-to: 6.3
Task-number: QTBUG-101487
Change-Id: I05080c7e5f611c2a93c4d08946536e0eb4670eeb
Reviewed-by: CI Insignificant Platforms Monitor Bot <ci_insignificant_platforms_monitor_bot@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Remove usages of outdated LGPL3 header that references
LICENSES.LGPLv3 instead of LICENSES.LGPL3. Use BSD instead in the
examples, updated LGPL otherwise.
Also remove the now unreferenced LICENSE.LGPLv3, LICENSE.GPLv2
files, and instead the newly referenced files instead.
Pick-to: 6.2 6.3
Change-Id: I01e1325ee2c7a147e095c08b370b88ded9a8daff
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
|
| |
|
|
|
|
|
|
|
| |
Setting and deleting cookies, changes for android, darwin and webengine plugins
Pick-to: 6.3
Task-number: QTBUG-96204
Change-Id: I4f79d34384e490b70a1e9f89196dd113733d5fe1
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Needed for subsequent change that will check and error out if the
version is lower than 3.16. We do that to ensure all policies
introduced by CMake up to version 3.16 have their behavior set to
NEW.
Pick-to: 6.2
Task-number: QTBUG-95018
Change-Id: Idede6a2b4d6215dc7d6b42ccd6e772be7ed94caf
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
Move quick sources to sepatrate qml module so new
qml registration system can be used. This drops
dependency of QWebView module on Quick.
Pick-to: 6.2
Change-Id: I10adb5e898ae2ffe4a46f37d759983047ea89483
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
|
|
|
|
|
| |
Change-Id: I376ba7f2b32afb5e668e92be7a38a59164ec956b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
(cherry picked from commit e81774fc6bbf39ba9e186a1220d1f57dcdb51ad2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
|
|
|
|
|
|
|
|
|
| |
Allocate the QQuickWebView after the engine, so it is destroyed before
its hosting engine is.
Fixes: QTBUG-94376
Change-Id: Icfb69505fe68b274acff321f636d77d3f016c1d4
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
(cherry picked from commit 0231b0840267a1b1de04275c04c9de726946c5f5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
|
|
|
|
| |
Pick-to: 6.2
Change-Id: I04c6f3f6bdfadcddac6d79440d6e292241bc50cd
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In case of mac arm64 and universal builds, where there is
currently no webengine, unit tests run with darwin plugin,
which has following issues:
* tst_QWebView::loadRequest()
it seems that after failure load, progress stops at 100
when darwin plugin is used
* tst_QQuickWebView::titleUpdate, titleChanged signal
does not get emitted when there is no title for darwin plugin,
webengine seems to still emit signal for that(QTBUG-94151)
Add compile time workarounds.
Task-number: QTBUG-88620
Task-number: QTBUG-94151
Change-Id: Ie76977de59ec55d23ddd6d472337acf90cbd4ccf
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
|
|
|
| |
Update dependencies to latest shas. Fix compilation issues.
Task-number: QTBUG-88620
Change-Id: I0c82431e6ffd142302cce12e6ee74d2139e1e42f
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adopt test to run also with webengine plugin, so
webview can be tested also on dektop.
* use QUrl::fromLocalFile for file urls
* QWebEngineWebView expects QQuickWebView as parent
in case of webenigne plugin, adjust tests and QWebView
accessor to qquickwebview
* disable error page for webenigne plugin, so tests
have same results as for other plugins
This patch is a part of cmake port effort.
Change-Id: I502bfdc5b6bce8950176d3b20ac35b1e10269393
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
|
|
|
| |
Deals with:
"Warning: Using function expressions as statements in scripts
is not compliant with the ECMAScript specification."
Change-Id: I1d71cd25bc255dbbae93359368c9ccaafd8161fd
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Since httpUserAgent can be set as a property then it should account for
the fact that init() has not yet been called. So ensure that the
httpUserAgent is set on the profile created when init() is called.
Fixes: QTBUG-82778
Change-Id: I072676e719eedcb0fbc8024f3e902fd1b7073a3e
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
|
|
|
|
|
|
| |
Our minimum deployment target is now macOS 10.10 and iOS 8.0 in Qt 5.9,
so the WKWebView backend will always be used instead.
Change-Id: Ifd24948954cc273fee458c212b1801dc4a5aca45
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the need for the awkward type re-registering and renaming
that was done in the Qml plugin, to support QtWebEngine.
Among other issues, the main motivation for this change is to unify the
implementations, and make it possible to run the auto tests that
interfaces directly with the QQuickWebView class. Having an actual
backend for Qt WebEngine means we can get rid of the, non-functional,
default implementation as well.
Change-Id: Ia93611ed2755c92207ca86ba3890ac4c2c4d72e9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The top-level project files were missing; it was therefore not possible
to build the tests from the tests or auto folder.
Note: The tests are adapted for the platforms were we have a native
WebView implementation, so on desktop (backed by QtWebEngine),
no tests will be run.
Change-Id: Ied3c5e562c0e58dbe75661f3d9b959a56af73b8c
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
|