summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets/api/qwebenginepage.h
Commit message (Collapse)AuthorAgeFilesLines
* Move QWebEnginePage to coreMichal Klocek2020-11-241-404/+0
| | | | | | | | | [ChangeLog] QWebEnginePage is in QtWebEngineCore Task-number: QTBUG-74585 Change-Id: Id326c89c868e9e7d53488bbd12cb321e1a0b79b7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Move QWebEngineHistory to coreMichal Klocek2020-11-241-0/+4
| | | | | | | | | | | Keep debug stream operators in page for now, since QWebEngineHsitory is accessible from page only. [ChangeLog] QWebEngineHistory is in QtWebEngineCore Task-number: QTBUG-74585 Change-Id: I5dfc13a0d59ac87f18fe4905ebcfd4a9ec5ad3a1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Drop dependency on QWebEngineView in pageMichal Klocek2020-11-241-1/+1
| | | | | | | Introduce temporarily PageView interface and DummyDelegate. Change-Id: I3a3d57435c98b31a15fb6d777045e141d007486f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Move page's view and widget bindings to viewMichal Klocek2020-11-201-1/+3
| | | | | Change-Id: Ia60a1b864bb173bfd12a94ac4791477a88ea0842 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove qwebengineview setter from qwebenginepageMichal Klocek2020-11-201-3/+0
| | | | | Change-Id: Ifaac7287d24e38e04e217cae65f6e5294e8bdd9e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Move client certificate selection to coreMichal Klocek2020-11-201-1/+1
| | | | | | | | [ChangeLog] QWebEngineClientCertificateSelection is in QtWebEngineCore Task-number: QTBUG-74585 Change-Id: I35aab40a15b4c29bdc8c291fe7920158140e70b2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Drop dependency on page in profileMichal Klocek2020-11-181-0/+2
| | | | | Change-Id: Idbec1657522272c895dc1822e83e0d9592c33343 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devAllan Sandfeld Jensen2020-09-071-1/+1
|\ | | | | | | | | | | | | | | | | | | 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
| * Fix suggest-override warningsAllan Sandfeld Jensen2020-08-181-1/+1
| | | | | | | | | | | | | | Also violates modern Qt code style Change-Id: Ibb12b6db18bbd2669377abe1d25034ed69a86389 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Remove QT_NO_SSL checksMichal Klocek2020-08-281-3/+0
| | | | | | | | | | | | | | They are not longer needed. Change-Id: I15967d3b4ffcb5c64ec64aedcf55069ccb7697b1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Improve QWebEngineCertificateError apiMichal Klocek2020-08-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * remove const ref from QWebEngineCertificateError Q_GADGET is a value type, QWebEngineCertificateError is pass as const reference from api. This is not so useful since, in qml this will be anyway copied and for c++ this is not useful since reject, ignore, defer methods are all const. Therefore simply pass it by value. * make consistent naming defer(), acceptCertificate(), rejectCertificate() * remove properties 'differed', 'answered' which are use internally, user knows if he calls functions. * error.errorDescription -> error.description() * error.error() -> error.type() [ChangeLog] In QWebEngineCertificateError use acceptCertificate() instead of ignoreCertificiateError() Change-Id: I9ffa500a0a455d98445b066252dd283872740731 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Rename QWebEngineDownloadItem -> QWebEngineDownloadRequestMichal Klocek2020-08-181-3/+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-1/+1
| | | | | | | | | | | | | | | | Use QWebEngineDownloadItem class in qml instead of QQuickWebEngineDonloadItem. Change-Id: I0fc9595f8675c9b082be873adead6de3df1e669d Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Unify certificate error handlingMichal Klocek2020-08-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Before we move the certificate error to core, unify error handling between qml and widgets. [ChangeLog] WebPage::certificateError does not return bool it is enough to call defer, ignoreCertificateError() or rejectCertificate(). Change-Id: I14be40f1ab6b4cbded550260d66152f51cf47de2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge all webenginecontextmenudata wrappers into one classMichal Klocek2020-08-121-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Move QMenu handling from page to viewMichal Klocek2020-08-121-6/+0
|/ | | | | | | | [ChangeLog] createStandardContextMenu is moved from QWebEnginePage to QWebEngineView Change-Id: I08a7a1f7e55ca7396547006523cdec250a3ad117 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add getter/signal to get the render process PIDFlorian Bruhin2020-02-011-0/+3
| | | | | | | | | | | | 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>
* 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/+24
| | | | | | | | | | | | | | | | | [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>
* Add navigation type for redirectsAllan Sandfeld Jensen2019-05-101-1/+2
| | | | | | Fixes: QTBUG-74490 Change-Id: Ia8de7dbec717021f367133cebb8c118e333388e4 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Web Notifications APIKirill Burtsev2019-02-061-2/+0
| | | | | | | | | | | | | | 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>
* Move QWebEngineUrlRequestInterceptor::intercept to ui threadMichal Klocek2019-02-041-1/+1
| | | | | | | | | | | | | | | | | | | Currently interceptor sufferers thread safety issues, when custom profiles are deleted, interceptor is set to be nullptr, however it can be still referenced in IO thread. Since profile was split to ui and io part, where io part can outlive the ui part, this can boost thread safety issues. Since QWebEngineUrlRequestInterceptor is living on ui thread simplify the logic move intercept call to ui thread. This fixes the issue of referencing interceptor in io thread. Add new method to install interceptor setUrlRequestInterceptor, and deprecate old one. Update interceptor install method name on page to match the profile one. Task-number: QTBUG-69844 Change-Id: I5dd2b6b734fd91906cccc6c1408ffbe7b1b4250c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.12' into 5.13Allan Sandfeld Jensen2019-02-011-2/+0
|\ | | | | | | Change-Id: I2889e49fe9f71bfc996689feb0f350e09569f611
| * Remove QWebFrame commentsKai Koehne2019-01-301-2/+0
| | | | | | | | | | Change-Id: I82855788542dc7b659eb8d83565b6f32d89d0ea5 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devAllan Sandfeld Jensen2018-11-051-1/+1
|\| | | | | | | | | | | | | | | | | Conflicts: src/core/render_widget_host_view_qt.cpp src/core/web_contents_adapter_client.h src/webenginewidgets/api/qwebenginepage_p.h Change-Id: Ibd011c40839c09469218ac4c71a13d0a0b1c9778
| * Allow client certificates without opensslAllan Sandfeld Jensen2018-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | We don't use OpenSSL, but only depended on it because QtNetwork didn't define QSslCertificate without an SSL backend. I changed that in QtNetwork 5.12, so we only rely on a QtNetwork SSL backend with older Qt versions. Task-number: QTBUG-54877 Change-Id: I16f3077235f5c48610597868608ef2e5ca2efa99 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Add setRequestInterceptor to QWebEnginePageAllan Sandfeld Jensen2018-10-171-0/+3
|/ | | | | | | | | | | | Makes it possible to make page specific intercepts, and is at the same time safer by running in the UI-thread. [ChangeLog][QtWebEngineWidgets][QWebEnginePage] Added setRequestInterceptor, similar to the same call on profile except it operates on a per-page basis and on the UI-thread. Change-Id: Id5a7173156c25d0f030f00b6ef314d283c7c8cdd Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Correct cert to certificateAllan Sandfeld Jensen2018-09-121-3/+3
| | | | | Change-Id: I7534aa6cd0c2a95403ad997095d5de76216f228e Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Add printRequest()Michal Klocek2018-08-091-0/+1
| | | | | | | | | | | | | 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>
* Fix build with '-no-feature-action' configurationValentin Fokin2018-07-181-0/+2
| | | | | | Task-number: QTBUG-56117 Change-Id: Ia097db769d0914f989860048db4ba628737f39c7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Enable client certificate storeAllan Sandfeld Jensen2018-07-081-1/+6
| | | | | | | | | | | | 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>
* Shorten names of permission classesJüri Valdmann2018-04-131-4/+4
| | | | | | | | | | | 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>
* Use Q_DECLARE_OPERATOR_FOR_FLAGS in public APIKai Koehne2018-04-131-0/+1
| | | | | | | | | | This allows writing something like FindFlags x = FindBackWard | FindCaseSensitively Change-Id: I88f8465dd64482ad871530fbb6d6351895fe6a3a Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Doc: Fix doc generation for some QWebEnginePage functionsLeena Miettinen2018-03-081-24/+2
| | | | | | | | | Remove #ifdef Q_QDOC defines and fix the command signatures in \fn commands or remove the commands, where possible. Task-number: QTBUG-66709 Change-Id: Ic591b53f0d52c7c938d8651cd6610f31af0cc540 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>
* Make default context menus look more like chrome's oneValentin Fokin2018-02-021-0/+2
| | | | | | | | | | | | | | - Implement EditFlags in ContextMenuData - Unify Quick and Widget default context menus - Add workaround for QTBUG-65044 - Update the SimpleBrowser example and its documentation [ChangeLog][QtWebEngine][QtWebEngineWidgets] Unify Quick and Widget default context menus Task-number: QTBUG-62414 Change-Id: I16a380f9f17e160497dfb8ac9c172341eb28c6c8 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Introduce devtools frontendAllan Sandfeld Jensen2017-12-061-0/+5
| | | | | | | | | | Makes it possible to use devtools without using the remote-debugger Task-number: QTBUG-47899 Task-number: QTBUG-50725 Task-number: QTBUG-50766 Change-Id: Id32e13f773372d9917599ebbb64ab4af61bbf1d8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Support Quota Management APISzabolcs David2017-09-131-0/+2
| | | | | | | | | | | | | | | Expose navigator.webkitPersistentStorage.requestQuota() calls to the API layer as a permission API. It allows the users to accept these requests and specify a quota for persistent storage. https://developer.chrome.com/apps/offline_storage#managing_quota [ChangeLog] navigator.webkitPersistentStorage.requestQuota() calls were rejected by default and now they will emit signal quotaPermissionRequested in both WebEngineView and QWebEnginePage. Task-number: QTBUG-56354 Change-Id: Id192577ffb403694d3051414744ded89bbfd2aa8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add method for triggering downloadsFlorian Bruhin2017-07-191-0/+1
| | | | | | | | | | | | | The method download(const QUrl &url, const QString &suggestedFileName) already exists in WebContentsAdapter. It is now accessible through a corresponding method in QWebEnginePage. [ChangeLog][QtWebEngineWidgets][QWebEnginePage] New QWebEnginePage::download() method to start custom downloads for a web page. Task-number: QTBUG-55944 Change-Id: I185ec69c1668b377a129bc9fc09963278e52de1e Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Cleanup support for desktop captureJüri Valdmann2017-07-171-1/+3
| | | | | | | | | - Use feature permissions system instead of hard-coded dialog. - Add QML test for getUserMedia() and extend existing widgets test. Task-number: QTBUG-60832 Change-Id: I533bed5021b3b0ee199b8abc6ddbd516cbd14ff6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.9' into devAllan Sandfeld Jensen2017-07-051-8/+0
|\ | | | | | | Change-Id: Ida702fd5fa05a32d6cd7fc737aa061da74b675a0
| * Always compile QWebEnginePage::printJüri Valdmann2017-06-261-8/+0
| | | | | | | | | | | | | | | | | | | | | | - Remove two out of five layers of ifdefs around and inside this method. - Now always compiled but will yield an error if printing is disabled. - Remove printing-related ifdefs from demobrowser. Task-number: QTBUG-61510 Change-Id: I79781189d3d3fb62db0a2216b2b989e3fa1d1f86 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Rolf Eike Beer <eb@emlix.com>
* | Add several QtWebKit WebActionsViktor Engelmann2017-04-031-0/+16
|/ | | | | | | | | | | | | | | Add WebActions ToggleBold, ToggleItalic, ToggleUnderline, ToggleStrikethrough, AlignLeft, AlignCenter, AlignRight, AlignJustified, Indent, Outdent, InsertOrderedList and InsertUnorderedList. All use the javascript document.execCommand with parameters according to https://developer.mozilla.org/de/docs/Web/API/Document/execCommand Task-number: QTBUG-59221 Change-Id: Ife18d660fefa2073351c5ad959611ec47b680dc6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Include Q_ENUM on QObject interface classesAleix Pol2017-03-271-0/+8
| | | | | | | | | | Adds useful metadata [ChangeLog][General] Use Q_ENUM on QtWebEngineWidgets interfaces Change-Id: Iac30298666b560f1ec62adde980d4eff25b49736 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove erroneous CONSTANT attributes from the public widgets APIAlexandru Croitor2017-03-071-4/+4
| | | | | | | | Even though the touched properties don't have Q_PROPERY modifieds or changed signals, the values can still be changed by internal code. Change-Id: Idb235dde0466f819b9c78835a8d7ad36092d2623 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add print and pdf feature to new configure systemMichal Klocek2017-01-161-1/+6
| | | | | | | | | | | | Currently printing and pdf are bounded together. Make compilation optional by adding it as a feature. Fix formatting of embedded_linux.pri Task-number: QTBUG-57731 Task-number: QTBUG-58108 Change-Id: I53a2baea656df0a5b6139365ed06385c9ebc5830 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add methods to issue various types of HTTP requestsViktor Engelmann2017-01-111-1/+2
| | | | | | | | | | | | | Added class QWebEngineHttpRequest, which describes a GET or POST HTTP Request. Also added overloads of method "load" to QWebEngineView, QWebEnginePage and WebContentsAdapter, which issue such a request. These can be used for example to simulate form-submissions. Task-number: QTBUG-53314 Task-number: QTBUG-53372 Change-Id: I85ac8cdd3d1557905b35e3172b922aba356d1c41 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Emit a new signal when printing to a PDF file finishesMichael Brüning2017-01-101-0/+2
| | | | | | | | | | | | | | | [ChangeLog][Important Changes] Printing to a PDF file will now emit signal the signal pdfPrintingFinished in both QQuickWebEngineView and QWebEnginePage. The boolean passed with the signal to indicate if the printing and saving of the PDF was successful. The path of the created file is also passed to enable the user to map the signal to a print request. Task-number: QTBUG-56677 Change-Id: Ifab5a20b048f33a8cd872165bd4d453b01708037 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* QML: Add FINAL, CONST to Q_PROPERTY declarationsViktor Engelmann2016-12-191-4/+4
| | | | | | | | | Add FINAL and CONST declarations for every Q_PROPERTY where it is appropriate. This speeds up the execution in QML. Task-number: QTBUG-55912 Change-Id: I67d2223d87aee6bdc639fe6087e3364201f2b1c6 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Remove viewSource and canViewSource APIs and use WebAction insteadPeter Varga2016-10-011-3/+0
| | | | | | | Task-number: QTBUG-56092 Change-Id: I026a0d153269a71e4e44f0fd30ef5ca054edd0e7 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>