summaryrefslogtreecommitdiffstats
path: root/src/webenginequick/api/qquickwebengineview.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Associate permissions with framesKaloyan Chehlarski23 hours1-64/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | Previously, permisions were associated with the originating WebContents, as the PermissionManager API uses those in its function calls. This is insufficient, however, as it results in iframes not receiving the correct permissions (because they were instead granted to the root frame instead. This change modifies the internals of PermissionManagerQt to use GlobalRenderFrameHostTokens, and modifies relevant functions across the codebase to pass those around instead of WebContents. Media and mouse lock permissions now also query the permission manager before issuing a request, which avoids some cases of the same request being sent multiple times in a row. As a side effect, the behavior of non-persistent permissions (as well as the behavior of ALL permissions when running in AskEveryTime mode) is standardized so that a permission is remembered as long as the associated frame is alive. Fixes: QTBUG-134637 Fixes: QTBUG-135787 Pick-to: 6.10 6.9 Change-Id: I650e3328ef3830d06206acafc3305566d3a10d86 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Fix crash if ui delegates are not deployedMichal Klocek2025-07-031-2/+6
| | | | | | | | | | | | | | | | In case delegate for touch handle can not be loaded bail out and simply return nullptr as TouchHandleDrawableQt works fine without delegate (guards against nullptr). Note all other dialog already bailout in case default delegate can not be loaded. Tested on bookworm with 6.8.3 Fixes: QTBUG-111907 Pick-to: 6.10 6.9 6.8 Change-Id: Ib509b63010888fa718f23148c06d973382cad428 Reviewed-by: Michael Brüning <[email protected]>
* Port to new Q_UNREACHABLE_RETURN()Marc Mutz2025-02-111-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator to convert sequences of Q_UNREACHABLE() + return into Q_UNREACHABLE_RETURN(), newly added to qtbase. const std::string unr = "unr", val = "val", ret = "ret"; auto makeUnreachableReturn = cat("Q_UNREACHABLE_RETURN(", ifBound(val, cat(node(val)), cat("")), ")"); auto ignoringSwitchCases = [](auto stmt) { return anyOf(stmt, switchCase(subStmt(stmt))); }; makeRule(stmt(ignoringSwitchCases(stmt(isExpandedFromMacro("Q_UNREACHABLE")).bind(unr)), nextStmt(returnStmt(optionally(hasReturnValue(expr().bind(val)))).bind(ret))), {changeTo(node(unr), cat(makeUnreachableReturn, ";")), // TODO: why is the ; lost w/o this? changeTo(node(ret), cat(""))}, cat("use ", makeUnreachableReturn)); a.k.a qt-use-unreachable-return. subStmt() and nextStmt() are non-standard matchers. Also made a manual scan to update the patch to 6.10. Pick-to: 6.9 Change-Id: Ic612e11dce9180f5e3e81b377985332e6f26bacb Reviewed-by: Ivan Solovev <[email protected]> Reviewed-by: Marc Mutz <[email protected]> Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* QuickWebenginView: Fix crash when assessing m_profileCarl Schwan2025-01-311-0/+1
| | | | | | | | | | | | | | | | | | | | | Ensure the profile is initialized before calling m_profile, otherwise this will crash. This happens with the following code: WebEngineView { userScripts { collection: [ { injectionPoint: WebEngineScript.DocumentReady, sourceCode: scriptContent, worldId: WebEngineScript.UserWorld } ] } } Pick-to: 6.9 Change-Id: I9d2d626ea51fb619b32147d8883701b40eab6c6e Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* QQuickWebEngineView: silence deprecation warningVladimir Belyavsky2024-09-171-1/+1
| | | | | | | | Silence deprecation warning "'QJSValue::QJSValue': Use fromUtf8, QStringLiteral, or QLatin1StringView" when build with -DFEATURE_webengine_printing_and_pdf=OFF Change-Id: I2f165329caf6fc8bab4ec78c828c5d4a3cb923e7 Reviewed-by: Peter Varga <[email protected]>
* Fix not working popup with qquick on eglfsMichal Klocek2024-08-281-2/+3
| | | | | | | | | | | After refactoring in 5d1ef38 we lost popups with qquick. Unfortunately we do not have tests for it as we do not run eglfs on ci. Pick-to: 6.8 6.7 Fixes: QTBUG-119908 Change-Id: Iea6cadf96dcac488898bb31132938fe8020d4d79 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Printing: Unify PDF generation among print() and printToPdf()Szabolcs David2024-08-081-1/+1
| | | | | | | | | | | | | | | | For the rasterized print() job, we have been generating the PDF data without margins and then QPrinter applied its margins when drawing to the device. Margins were the only differences between PDF generations for print() and printToPdf(). By taking the margins into account at generation time, and setting QPrinter margins to null and then restoring it after the job, we can get rid of this terrible design choice and having a unified PDF generator backend. This results a much more simpler code and opens the way for other developments. Change-Id: If2dd8932073f5112e2e29d52db624db496f59684 Reviewed-by: Michael Brüning <[email protected]>
* QWebEngineFrame: hold weak ref to adapterMoss Heim2024-07-151-3/+3
| | | | | | | | | | | This is a bit safer as it prevents crashes when the adapter/page is no longer around. This also adds a getter for the adapterClient on WebContentsAdapter. Pick-to: 6.8 Change-Id: I50690fd7bf3e5fe60568c565ce0fff20a832351f Reviewed-by: Michal Klocek <[email protected]>
* QWebEnginePermission: Post-API reviewKaloyan Chehlarski2024-07-031-50/+41
| | | | | | | | | | | | | | | This commit contains fixes for the issues found during the API review of the new permissions API. In particular: - All new enums are now scoped - Replaced isTransient with its opposite, isPersistent - Renamed Feature to PermissionType - Made origin() return a non-const QUrl - Renamed PersistentPermissionsPolicy members to be more concise - Fixed a couple of bugs in the implementation - Updated documentation Change-Id: Idf84e1c9ba3ae803ef4686e1caa7f3e6c198c87d Reviewed-by: Michal Klocek <[email protected]>
* Add QWebEnginePermission and rewrite permissions APIKaloyan Chehlarski2024-06-031-49/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the addition of permission persistence, it's now important for us to have an API for querying previously granted/denied permissions, so that they can be revoked at a later point. This change does the bulk of the work to get us there, by introducing a new type representing a single permission for a given URL/Feature pair. This type holds no information about the permission's state; it is simply an accessor object which allows its user to query the current status of the permission, grant/deny it, or reset it back to its initial state (so, delete it from storage). This provides application developers an easy way to store/modify lists of permissions without having to define their own custom types. A subsequent change will expand the API to provide a list of all permissions for a given profile. The current API (in QWebEnginePage and QQuickWebEngineView) has been marked as deprecated, but has not been disabled to ensure a smooth transition for developers. [ChangeLog][QtWebEngineCore][QWebEnginePage] Deprecated old permissions API [ChangeLog][QtWebEngineQuick][WebEngineView] Deprecated old permissions API [ChangeLog][QtWebEngineCore] Added new API for querying and modifying website permissions. [ChangeLog][QtWebEngineQuick] Added new API for querying and modifying website permissions. Pick-to: 6.8 Change-Id: I8661cdc26bbd6dcde6403d29cc083bcea1a49ccc Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add QWebEngineFrame::printToPdfMoss Heim2024-06-031-6/+8
| | | | | | | | | Provide API calls to (1) save to file (QString) and (2) get the bytes in a callback. Pick-to: 6.8 Change-Id: I0ff44a25328b99080491b8c3b36a7b632c065131 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Merge printToPdf callback systemsMoss Heim2024-05-311-8/+17
| | | | | | | | Provide a common API in WebContentsAdapterClient so it can be used easily by QWebEngineFrame. Change-Id: I9abc1214cf535c3110d54d9ecb3257000c6db5fb Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add QWebEnginePage::printRequestedByFrame signalMoss Heim2024-05-311-0/+8
| | | | | | | | | Emitted whenever a frame excluding the main frame calls JS print() function. `printRequested` is now only emitted when the main frame requests printing, instead of any frame. Change-Id: I4b65e5a164b513cc9a9692c1285470847b7a26e3 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add QWebEngineFrame::runJavaScriptMoss Heim2024-05-221-3/+3
| | | | | | | | | | | | | Run JavaScript code on a specific frame, optionally executing a callback when done. Uses the enclosing page's callback system. There are two sets of overloads, matching the API of QQuickWebEngineView and QWebEnginePage. Also adds QQuickWebEngineFrame::runJavaScript() Change-Id: I48746bd83d0f19644157548483a94637fc70c20f Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add zoomFactorChanged signal to QWebEnginePage and QQuickWebEngineViewKaloyan Chehlarski2024-05-171-1/+6
| | | | | | | | | | | | | | Added a signal that fires whenever the zoom factor for a given page changes, including both via key combinations, and when using the existing zoom API. This already existed in Quick, but was both undocumented and only half-implemented (zooming via keyboard/mouse wouldn't trigger it). Thus, the Quick documentation was changed to list it as a 6.8 addition. Fixes: QTBUG-111041 Change-Id: I91eb7c9bf0d17d99956784841c5c86640554ad1c Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Merge runJavaScript functions in QWEPage, QQWEViewMoss Heim2024-05-151-17/+15
| | | | | | | | | | | These two are identical except for the use of QJSValue to wrap a JS callback. And we would like to have a function on WebContentsAdapterClient for QWEFrame to call. So we wrap the JS callback in a std::function<> callback and merge the APIs. Change-Id: Ifc55d3748b1b3764e802e4908c474b40cc92f9cc Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add QML support for QWebEngineFrameMoss Heim2024-05-071-0/+13
| | | | | | Change-Id: I1f5843b1abba9edb3c106718abac5cd92ee961cd Reviewed-by: Ulf Hermann <[email protected]> Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Thread safe implementation of Favicon Quick APIAnu Aliyas2024-04-301-12/+2
| | | | | | | | | | Ensured thread-safe access to quick classes, by moving all interaction with these classes to UI thread. Removed thread pool and used signals and slots instead Pick-to: 6.7 6.6 Change-Id: Icd5cecf73258fd7da04f56cd5dd5cb83904b8b40 Reviewed-by: Peter Varga <[email protected]>
* Add hasPostData to QWebEngineNavigationRequestAllan Sandfeld Jensen2024-04-261-2/+2
| | | | | | | | | | [ChangeLog][QtWebEngineCore][QWebEngineNavigationRequest] hasFormData has been added to indicate navigations request (re)posting form data. Fixes: QTBUG-67613 Change-Id: I0275513a12d4591a53040c62bfce636e99926ab7 Reviewed-by: Peter Varga <[email protected]> Reviewed-by: Anu Aliyas <[email protected]>
* Add the missing _p suffix to the private header files in WebEngineQuick/WidgetsAlexey Edelev2024-04-251-3/+3
| | | | | | | Pick-to: 6.5 6.6 6.7 Change-Id: I4b64147cb70c3994ed054374c9047fe9274da777 Reviewed-by: Moss Heim <[email protected]> Reviewed-by: Michal Klocek <[email protected]>
* Add local fonts permission support to QuickWebEngineViewKaloyan Chehlarski2024-03-221-0/+6
| | | | | | | | | This change hooks up QuickWebEngineView to the newly-enabled local font access API. Task-number: QTBUG-121320 Change-Id: Ib7e093904ea8d834a2282cd265086e501cb392ff Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add granular permission for clipboard-read/writeMoss Heim2024-03-111-0/+7
| | | | | | | | | | | | | | | Previously, permissions for clipboard access could only be managed through the JavascriptCanAccessClipboard and JavascriptCanPaste settings. This change allows copy/paste to be handled the same way as notification and geolocation permissions. If both JavascriptCanAccessClipboard and JavascriptCanPaste are enabled, permissions will be granted unconditionally without a feature request being made. Fixes: QTBUG-77450 Change-Id: I383e27e244ced3d6b7988644e38d2307c6267f76 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Correctly hook up spellchecker suggestions to QMLKaloyan Chehlarski2024-03-011-1/+4
| | | | | | | | | | | | | | | Currently, spelling suggestions that would normally appear in the context menu when right-clicking a misspelled word do not work in QML applications. Instead, the context menu gets filled with empty, nonfunctional labels. This change makes sure the QQuickWebEngineAction object has valid m_text and m_enabled fields, and that QQuickWebEngineView::triggerWebAction doesn't get tripped up by the fact that there's no WebAction corresponding to text replacement. Change-Id: I208950d815ae43e0a691245698e287adf099a7b3 Reviewed-by: Michal Klocek <[email protected]>
* Fix QWebEngineDesktopMediaRequest after API review updateMartin Negyokru2024-02-241-0/+1
| | | | | | | | | | | - The request has to be copyable to make it compatible with qml - Bring back EditRole - Remove QWebEngineMediaSourceModelPrivate Pick-to: 6.7 Change-Id: I28f64947eec8f041dab6feefa3d3ba85154975c8 Reviewed-by: Allan Sandfeld Jensen <[email protected]> Reviewed-by: Qt CI Bot <[email protected]>
* Correct PrintedPageSizeId to match QPageSize::PageSizeIdMichael Brüning2024-01-241-0/+128
| | | | | | | | | | With Qt 6, QPageSize::PageSizeId enum was cleaned up and some values were reordered, but the WebEngineQuick part was not changed accordingly. Pick-to: 6.7 6.6 6.5 Fixes: QTBUG-120218 Change-Id: I7e4c419750d30a64193e68b0b217ebbccce07d87 Reviewed-by: Michal Klocek <[email protected]>
* Update QWebEngineDesktopMediaRequest based on API reviewMartin Negyokru2024-01-221-0/+1
| | | | | | | | | | | | | - Port the request's d-pointer to std::unique_ptr - Disable copy of the request - Remove QWebEngineMediaSourceModel from the header - Remove the NameRole definition - Update tests and documentation according to changes - Use forward declaration in qwebenginepage Pick-to: 6.7 Change-Id: I972b3104a0bca5367a4bb63ac183a60d00a71776 Reviewed-by: Michal Klocek <[email protected]>
* Update QWebEngineWebAuthUxRequest based on 6.7 API review commentAnu Aliyas2024-01-171-2/+2
| | | | | | | | | | | - Modified WebAuthUXState as enum class - Renamed QWebEngineWebAuthUXRequest as QWebEngineWebAuthUxRequest - Renamed QWebEngineWebAuthPINRequest as QWebEngineWebAuthPinRequest - Replaced all occurrence of UX and PIN with Ux and Pin respectively Fixes: 6.7 Change-Id: Iaf0b4c93e0dfa3508a604f7d6562c4401ff800af Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add new API for screen capturingMartin Negyokru2023-12-151-0/+9
| | | | | | | | | | | | [ChangeLog][WebEngineCore] Add QWebEnginePage::desktopMediaRequested() signal [ChangeLog][WebEngineQuick] Add QQuickWebEngineView::desktopMediaRequested() signal Pick-to: 6.7 Fixes: QTBUG-112142 Task-number: QTBUG-70077 Change-Id: I4bfad88732b45fb68b77f7617440bcb50b248a11 Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Fix for tst_qmltests crashAnu Aliyas2023-11-091-0/+2
| | | | | | | | | - As per current the implementation, if the parent Qucikitems has foucs, calling setParentItem(nullptr) on it's children might lead to crash. Task-number: QTBUG-118750 Change-Id: I540e46658a21c14bb26f8f316fdd520f7b1a4742 Reviewed-by: Michael Brüning <[email protected]>
* Provide the correct type information for WebEngineViewAnu Aliyas2023-10-131-1/+1
| | | | | | | | | | | | -Duplicate entries in the QML type file are created when exporting the type as a value and its enums within a namespace. Resolved this by introducing a derived class, and using it for exporting the Enums. - Added namespace resolution to avoid type ambiguity Fixes: QTBUG-117031 Pick-to: 6.6 Change-Id: Ieea4492238843c3c781c8d9602ddc89207b61137 Reviewed-by: Michael Brüning <[email protected]>
* QQuickWebEngineView: move using declarations outside of QT_DEPRECATED_SINCE ↵Ivan Solovev2023-08-211-3/+2
| | | | | | | | | | | block Because they are also used in the code which is not guarded by the deprecation checks. Pick-to: 6.6 6.5 Change-Id: I42383ba0f11b08df5602bfa9e0d8d816d2b96be7 Reviewed-by: Michal Klocek <[email protected]>
* Support FIDO2 user verificationAnu Aliyas2023-07-121-0/+7
| | | | | | | | | | | - Implemented AuthenticatorRequestClientDelegateQt support to handle authenticator requests. - Added FIDO user verification and resident credential support Fixes: QTBUG-90938 Fixes: QTBUG-90941 Change-Id: I6367791e1e9e8aaac27c376408377f838832f426 Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Michael Brüning <[email protected]>
* Reduce repetitive translated texts of QQuickWebEngineView/QWebEnginePage actionsFriedemann Kleint2023-06-301-61/+2
| | | | | | | | | | With the action enums in sync, a helper for function returning the translated texts for the enum values can be introduced. Pick-to: 6.6 Change-Id: I1584f0a4d3fd55d0308dbb914777346ba9d0e285 Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Michal Klocek <[email protected]>
* Sync WebAction enums of QQuickWebEngineView/QWebEnginePageFriedemann Kleint2023-06-281-0/+4
| | | | | | | Pick-to: 6.6 Change-Id: Ibe750d541dba458f2278632355bcaf864fdc845a Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Michael Brüning <[email protected]>
* Add QWebEnginePage::devToolsId()Benjamin Terrier2023-05-311-0/+6
| | | | | | | | [ChangeLog][WebEngineCore] Add QWebEnginePage::devToolsId() [ChangeLog][WebEngineView] Add devToolsId property Change-Id: I16e8a27d595b010239557c2a3af2d3b39976cd46 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Test for presence of local frame in runJavaScriptAllan Sandfeld Jensen2023-05-161-1/+5
| | | | | | | | | It can be missing if we are in the process of shutting down. Pick-to: 6.5 6.2 Fixes: QTBUG-113400 Change-Id: Ib494e479db08d51825c15f54354037c265ba96b0 Reviewed-by: Michael Brüning <[email protected]>
* Add WebEngineView::save() convenience APIAnu Aliyas2023-04-201-0/+7
| | | | | | | | | | Add the convenience method QQuickWebEngineView::save for saving pages without the need to explicitly handle download requests. Task-number: QTBUG-56093 Change-Id: I67909fdca6472d1ea9b32e0f89c1ab90219bca3b Reviewed-by: Leena Miettinen <[email protected]> Reviewed-by: Michal Klocek <[email protected]>
* Support LTR and RTL text directions in input fieldsSzabolcs David2023-02-151-0/+12
| | | | | | | | | | Implement WebActions to temporarily change text direction directly from context menu - like Chrome does. They only work for the selected input field. Omit the "default" option since it is always grayed out in Chrome. Task-number: QTWB-67 Change-Id: I4bacbd82c6bd7261ac465eec9da3776613f98074 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Add WebChannelQuick dependencyMichal Klocek2023-02-151-1/+1
| | | | | | | Reflect latest changes to qtwebchannel. Change-Id: I10bc1690dc32ce1bb61ed9dabc7f31a44d2fdf7e Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Fix build with -no-accessibilityPeter Varga2023-01-091-1/+6
| | | | | | Pick-to: 6.5 Change-Id: I7128608467e4d0ce1b04efa9b82a98f78942d4db Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Remove unused properties from QQuickWebEngineViewPrivatePeter Varga2023-01-091-1/+0
| | | | | | Pick-to: 6.5 Change-Id: I368d53e250cd06908db2c2dfb12d6227f835f136 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Deprecate Quota Permission Request APIPeter Varga2022-12-081-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | Requesting host quota is no longer supported by Chromium. navigator.webkitPersistentStorage has became an alias for navigator.webkitTemporaryStorage after the Chromium 106 update. Requesting quota for temporary storage is needless because the allocation is automatic and storage can't be requested beyond the maximum limit. The logic of the persistent storage will be entirely removed in the next Chromium update so just deprecate the API and remove the corresponding implementations. [ChangeLog][QtWebEngineCore] Deprecate QWebEnginePage::quotaRequested() signal and QWebEngineQuotaRequest class. The signal is not emmitted anymore. [ChangeLog][QtWebEngineQuick] Deprecate QWebEngineView.quoataRequested() signal. The signal is not emitted anymore. Task-number: QTBUG-56354 Change-Id: Ie397598c416d9e811270ba56a97f8984948277f7 Reviewed-by: Szabolcs David <[email protected]> Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Port from container::count() and length() to size() - V4Marc Mutz2022-10-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: I3e6fef8eca212da0c4f0b464545ba96183b4476f Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Fix logic in bindViewAndDelegateItemMartin Negyokru2022-10-071-3/+9
| | | | | | | | | | | Updating adapterClient is required to Bind correctly. Bring back old logic from 6.3. Fixes: QTBUG-105953 Pick-to: 6.4 Change-Id: I8845948db379c24902df0dd2dad96982a1455531 Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Use SPDX license identifiersLucie Gérard2022-06-221-38/+2
| | | | | | | | | | | 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: I869ffda1080e283f231eb0dc4477b260f2054d99 Reviewed-by: Jörg Bornemann <[email protected]>
* Cleanup item delegate logicAllan Sandfeld Jensen2022-06-221-39/+35
| | | | | | | | | Remove two indirect values we can calculate without tracking, and clean up naming in webenginequick. Pick-to: 6.4 Change-Id: Ibfab7013f314b428dca707036fe5f027558dff72 Reviewed-by: Peter Varga <[email protected]>
* Support HTML5 <datalist> elementPeter Varga2022-06-191-0/+14
| | | | | | | | | | | | | | | | | The datalist uses Chromium's autofill component to fetch and filter predefined options in the list and autocomplete the field with the selected option. Autofill component is added to build and bound to WebEngine. All the unnecessary autofill features for datalist are supposed to be disabled: payment/credit card support, password manager, save profile data, store suggestions in database etc. Custom popups for the dropdown are implemented for Widget and Quick. Scrolling in dropdown is not implemented in this change. Fixes: QTBUG-54433 Pick-to: 6.4 Change-Id: I155d02d6dbc9d88fbca4bc5f55b76c19d0ba7a9d Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Switch from QT_NO macros to feature checksAllan Sandfeld Jensen2022-06-101-2/+2
| | | | | | | | | | | This is safer by ensuring we are checking for a feature that is defined. For some reason, the openssl feature is a private feature, so we need to include the private header to access it. Pick-to: 6.4 Change-Id: Idf7f3baba33e5188f206f5be1b8a0bfd75e79d03 Reviewed-by: Marc Mutz <[email protected]>
* Create a RWHV delegate in coreAllan Sandfeld Jensen2022-06-091-81/+65
| | | | | | | | | | This is adapting the Quick code for shared use with widgets, and allows us to use it from QWebEnginePage. Pick-to: 6.4 Fixes: QTBUG-96377 Change-Id: I3f09c1a949eff86d80fbe6c513dc66e3f9f2f611 Reviewed-by: Michal Klocek <[email protected]>
* Include moc filesAllan Sandfeld Jensen2022-05-311-0/+1
| | | | | | | | Faster to build and gives smaller binaries Fixes: QTBUG-103291 Change-Id: Iab52995e03c13a4c5b185750028c449a19d98d93 Reviewed-by: Marc Mutz <[email protected]>