summaryrefslogtreecommitdiffstats
path: root/src/webengine/plugin
Commit message (Collapse)AuthorAgeFilesLines
* Fix 'WebEngine' ambiguity for Qt6Michal Klocek2021-04-135-1904/+0
| | | | | | | | | '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>
* Move QQuickWebEngineLoadRequest to core as a base api typeKirill Burtsev2021-03-032-4/+4
| | | | | | | | | | | 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>
* Reuse qwebenginescript in qmlMichal Klocek2020-09-241-2/+3
| | | | | | | | | | | | | | | | | 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>
* Introduce qml script collection and make webscript as basic typeMichal Klocek2020-09-221-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Move QWebEngineFullScreenRequest to coreKirill Burtsev2020-09-151-1/+2
| | | | | | Task-number: QTBUG-74585 Change-Id: I953f46d01c1e4a82ab0d75b5f955e4f346f1c941 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Rename QWebEngineDownloadItem -> QWebEngineDownloadRequestMichal Klocek2020-08-181-19/+3
| | | | | | | | | | This fits better with other QWebEngine*Requests. [ChangeLog] QWebEngineDownloadItem is now QWebEngineDownloadRequest, also in qml. Change-Id: I506e9fac746b4f23ac0936c2fbe1c7472f4fda36 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Move QWebEngineDownloadItem to QtWebEngineCoreMichal Klocek2020-08-171-10/+10
| | | | | | | | Use QWebEngineDownloadItem class in qml instead of QQuickWebEngineDonloadItem. Change-Id: I0fc9595f8675c9b082be873adead6de3df1e669d Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Move QWebEngineCertificateError to core and use it in QMLJüri Valdmann2020-08-142-5/+5
| | | | | | | | Update qml certificate error test. Task-number: QTBUG-74585 Change-Id: I9383052bd1e37160d03e3d66e8f2e4a749023736 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge all webenginecontextmenudata wrappers into one classMichal Klocek2020-08-121-5/+3
| | | | | | | | | | | | | | | | | | | | | | 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>
* Add getter/signal to get the render process PIDFlorian Bruhin2020-02-012-0/+7
| | | | | | | | | | | | 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>
* Add clear method to QQuickWebEngineHistoryJüri Valdmann2020-01-301-0/+1
| | | | | | Fixes: QTBUG-71619 Change-Id: I35c5ecbbe78da3114d30945f8ce030937e17d98e Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Update plugins.qmltypes for 5.14Kai Koehne2019-10-211-17/+348
| | | | | | | Task-number: QTBUG-78690 Change-Id: Ieeb9ffc0873b57a2642293d042ae60dd1382fdda Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* QML: Use revision 10 for import 1.10Kai Koehne2019-10-211-1/+1
| | | | | | | This makes reviewing API etc easier. Change-Id: Ib6cfa74cb130cf1085d6af24eaaa0b9cf403889b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* QML: Fix import to 1.10Kai Koehne2019-10-171-2/+1
| | | | | | | | | | New QML API in Qt 5.14 should be made available under import QtWebEngine 1.10 Change-Id: Ia421755eaa77f283d7a23b4b2b3b3ea1a491714d Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Merge remote-tracking branch 'origin/5.13' into 5.14Allan Sandfeld Jensen2019-09-241-0/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | 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
| * Fix compilation against 5.9Michal Klocek2019-07-311-0/+2
| | | | | | | | | | Change-Id: Icfe50ba5c60a6e2e588af6cdc07500013b6df9a1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Introduce findTextFinished signalPeter Varga2019-08-231-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Implement page lifecycle APIJüri Valdmann2019-05-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [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>
* | Extend the QQuickWebEngineDownloadItem Qml type with url propertyTamas Zakor2019-04-292-1/+3
| | | | | | | | | | | | | | | | Task-number: QTBUG-72996 Change-Id: I8af67d69a9a88ccbc95e37a252615dd3fd3ca0ca Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-04-051-1/+1
|\| | | | | | | Change-Id: I8f0fa53b1e202d1932008291ea786a4ed1a49a64
| * Notification API cleanupKirill Burtsev2019-04-051-1/+1
| | | | | | | | | | | | Task-number: QTBUG-74543 Change-Id: Ice5a0dbfc3485c8b7e6fa900ef427a9aed871d42 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into devAllan Sandfeld Jensen2019-03-291-0/+1
|\| | | | | | | Change-Id: Iab8e05beb7ede38bacaa35322d1f79cfc85cd470
| * Fix exporting of WebEngineSettings::pdfViewerEnabledAllan Sandfeld Jensen2019-03-211-8/+9
| | | | | | | | | | | | | | | | The new version of WebEngineSettings wasn't registered Task-number: QTBUG-74566 Change-Id: I09c184556519743b519788874aefdc5a45755694 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into devAllan Sandfeld Jensen2019-03-213-5/+89
|\| | | | | | | Change-Id: If771fabe97c4d75edc4627999f04f70ca1901060
| * Update plugins.qmltypes for Qt 5.13Kai Koehne2019-03-211-1/+3
| | | | | | | | | | Change-Id: I0456c67f1edd0c4caa6d0c0f7b643024b00ce960 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Cleanup QML client certificate selection implementationAllan Sandfeld Jensen2019-02-271-2/+2
| | | | | | | | | | | | | | | | | | Get rid of copy constructors for QObjects by making the elements objects on the heap. Change-Id: Ic9a214f01b39feb824b99d17d17fd342d431cd97 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Update plugins.qmltypes for Qt 5.13Kai Koehne2019-02-242-2/+84
| | | | | | | | | | | | Task-number: QTBUG-73484 Change-Id: I9e8fb525e7dc77b46cff654b9c4b7a52b76cd45d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Unify uncreatable type messagesMichael Brüning2019-03-071-21/+21
| | | | | | | | | | | | | | | | Replaces separate uncreatable type messages with calls to msgUncreatableType. Change-Id: I04b6cea5ba1779a0647c1d36b24dbbf3c79108fe Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Add a way to customize tooltips in WebEngineViewSzabolcs David2019-02-191-0/+3
|/ | | | | | | | | 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>
* Web Notifications APIKirill Burtsev2019-02-061-1/+2
| | | | | | | | | | | | | | 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>
* Implement touch text selection for QQuickWebEngineViewPeter Varga2019-01-311-0/+2
| | | | | | | | 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 API to set default download pathTamas Zakor2019-01-302-6/+12
| | | | | | | | | | | | | | | | | | | 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>
* Add support for client-certificate selection to QMLAllan Sandfeld Jensen2019-01-241-0/+7
| | | | | | Task-number: QTBUG-69363 Change-Id: I54d1df17d82bf2297f43762b0ba86a080bafee23 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add configure for webengine and webenginewidgetsMichal Klocek2019-01-215-106/+16
| | | | | | | | | | | | | 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>
* Merge branch '5.12' into devAllan Sandfeld Jensen2018-11-162-0/+2
|\ | | | | | | | | | | | | | | Conflicts: src/core/compositor/compositor.cpp src/core/compositor/compositor.h Change-Id: I8a4d73d728d93d95e499849f8778cc88dda2105e
| * Add missing classname to qmldirsAllan Sandfeld Jensen2018-11-132-0/+2
| | | | | | | | | | | | | | Only really needed for static builds though Change-Id: Ib196301ed2b0c4b94c7a8d86740b2a19b77e3eb5 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Make it possible to enable OCSP on LinuxAllan Sandfeld Jensen2018-10-171-0/+1
|/ | | | | | | | | | | | | 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>
* Clean up WebEngineAction APIPeter Varga2018-09-201-6/+1
| | | | | | | | | - 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>
* Update plugins.qmltypesKai Koehne2018-08-302-13/+17
| | | | | | | | | By running qmlplugindump -defaultplatform -dependencies dependencies.json -nonrelocatable QtWebEngine 1.8 >plugins.qmltypes Change-Id: I0d3bce858594bd6f6958b329c9c3a939462329bd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add QWebEngineDownloadItem page/view accessorAllan Sandfeld Jensen2018-08-021-0/+2
| | | | | | | | | | To be able to determine where a download was triggered. [ChangeLog][DownloadItem] Added a page/view accessor to tell were the download was triggered. Change-Id: I21843a545a3e0eb66f5e5fa8a50e77564f2118a7 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Introduce WebEngineAction in Quick APIValentin Fokin2018-08-022-4/+38
| | | | | | | | | | | 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>
* Add DNS prefetchingAllan Sandfeld Jensen2018-08-011-0/+1
| | | | | | | | | | | Turns out we did no have DNS prefetching. It requires an extra component. The same component can also do pre-connect, but we do not enable that, as it requires a predictive browsing backend. [ChangeLog][Settings] DnsPrefetchEnabled added, but disabled by default. Change-Id: Ieb036435b9f1a72a7be302e38e89e0c347c7176b Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Fine tune configure and clean up header includesMichal Klocek2018-06-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | 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>
* Update plugins.qmltypesKai Koehne2018-04-172-16/+34
| | | | | | Task-number: QTBUG-66905 Change-Id: I149a0d6a9b16ddc55c52200b7dce2b5e37409e9d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Shorten names of permission classesJüri Valdmann2018-04-131-8/+8
| | | | | | | | | | | Remove 'permission' from class and signal names, so e.g. QWebEngineQuotaPermissionRequest becomes QWebEngineQuotaRequest and quotaPermissionRequested becomes quotaRequested. Rename the internal controller classes to public name + "Controller". Change-Id: I247714ab0a2880adbf4ed8ee68f1b78838ae7a14 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Remove MediaNone, CanDoNone flags from QWebEngineContextMenuDataValentin Fokin2018-03-221-2/+0
| | | | | | Task-number: QTBUG-66994 Change-Id: I8e5ce23e2326fff078e11cadc70274641eeef132 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Add registration of QQuickWebEngineDownloadItem / 1.7Kai Koehne2018-03-201-0/+2
| | | | | | | | | | Explicitly register the new property added in 7219986a18d45d. Because of QTBUG-50990 this is strictly speaking not necessary at runtime, but makes sure that qmlplugindump also generates metadata about the new property. Change-Id: Idcc286aa7b25eb50d0f37cda8ee718d65a51e7f7 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Move quota and registerProtocolHandler permission classes to coreJüri Valdmann2018-03-081-4/+9
| | | | | | | | | | | | | | | | | | | | | | | - Move QWebEngineQuotaPermissionRequest and QWebEngineRegisterProtocolHandlerPermissionRequest to QtWebEngineCore. - Delete QQuickWebEngineQuotaPermissionRequest and QQuickWebEngineRegisterProtocolHandlerPermissionRequest. Miscellaneous cleanup: - Mark QWebEngineQuotaPermissionRequest constructors as internal for QDoc. - Remove superfluous Q_DECLARE_METATYPEs (implied by Q_GADGET). - Remove Q_UNREACHABLE from default constructor. For some reason QML seems to default construct an unused temporary object before throwing it away and copy constructing the actual object. This triggers Q_UNREACHABLE. Change-Id: Icf9f4e34996e4c64aec65b734bcb3bbd22b4dc51 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Add support for registerProtocolHandlerJüri Valdmann2018-02-131-0/+2
| | | | | | | | | | | | | | | | | | | Extend initialization of URLRequestContextGetterQt to create a content::ProtocolHandlerRegistry for each content::BrowserContext and add the registry's URL request interceptor to the front of the interceptor chain. Implement methods in WebContentsDelegateQt to add/remove protocol handlers to/from the ProtocolHandlerRegistry. Add permission request signal and classes for core, quick and widgets. Add widgets autotest. Add signal handlers to quicknanobrowser and simplebrowser. Task-number: QTBUG-62783 Change-Id: I808e7eb9a1cb4d7216686deed4895de14fe46310 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add EditFlags and MediaFlags to Quick and Widget APIValentin Fokin2018-02-022-6/+62
| | | | | | | | | | | | | | | - EditFlags shows the available edit actions - MediaFlags shows the status and available actions of the current media element - Update the documentations - Register ContextMenuRequest 1.1 - Update plugins.qmltypes [ChangeLog][QtWebEngine][QtWebEngineWidgets] Add EditFlags and MediaFlags to the APIs Change-Id: Ia7603696a291df5465c5e612adc2456f5f6cb479 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>