summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets/api
Commit message (Collapse)AuthorAgeFilesLines
* Support Quota Management APISzabolcs David2017-09-135-0/+191
| | | | | | | | | | | | | | | 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 https to list of internal schemesViktor Engelmann2017-08-301-1/+2
| | | | | | | | | | | | | Since https is an internal scheme, it should be in this list of internal schems. This also prevents custom custom QWebEngineUrlSchemeHandlers to register "https". Although it is debatable whether this is necessary, https should be held to at least the same security standards as http, which is also in that list. Task-number: QTBUG-56894 Change-Id: I83d0130541fe3b5831bf29d429bad89a8fc5408c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove support for building with Qt versions < 5.8.0Allan Sandfeld Jensen2017-08-043-25/+0
| | | | | Change-Id: I2f2ba754111e198298b7d1a595343fcd773e05e5 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Reorder documentation for QtWebEngine dictionary discoveryFlorian Bruhin2017-08-041-28/+2
| | | | | | | | | | This also adds documentation for QTWEBENGINE_DICTIONARY_PATH from my previous change. Change-Id: I85cd7476c095d5427e2db3a909449838a2362b81 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Add HideScrollbars settingPeter Varga2017-08-022-1/+4
| | | | | | | [ChangeLog][Settings] Added setting to hide scrollbars. Change-Id: I17695bb54a460621358345d303302b93eb342696 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add method for triggering downloadsFlorian Bruhin2017-07-193-1/+21
| | | | | | | | | | | | | 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-172-38/+65
| | | | | | | | | - 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 devKai Koehne2017-07-111-0/+2
|\ | | | | | | Change-Id: Idffd0c603f7925b8b9b037ce2d63cb13e964c20e
| * Call stopFinding, when navigating awayViktor Engelmann2017-07-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | When one searches for text on one page and then navigates away, results for the search-term are also highlighted on the new page. To stop this from happening, we now call adapter->stopFinding() when we navigate away from a page. Task-number: QTBUG-61506 Change-Id: I09e064d7788b12eae0a67c01e4f5872d94924617 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devAllan Sandfeld Jensen2017-07-054-26/+9
|\| | | | | | | Change-Id: Ida702fd5fa05a32d6cd7fc737aa061da74b675a0
| * Always compile QWebEnginePage::printJüri Valdmann2017-06-262-16/+2
| | | | | | | | | | | | | | | | | | | | | | - 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>
| * Fix crash when accessibility is disabledAllan Sandfeld Jensen2017-06-232-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | With the no-accessibility feature moved to qtgui-config, we don't always include it where web_content_apapter_client.h is included, which gives it an inconsistent binary layout. Solve it by making the optional method always defined as it doesn't rely on anything from accessibility. Task-number: QTBUG-61200 Change-Id: I65f34ab2b6763f3166b945e700994bd8d019a835 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Fix cancellation of UploadFolder dialogsSzabolcs David2017-06-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | Remove the extra "/" element from the list of results and pass an empty file list to the backend. Task-number: QTBUG-61186 Change-Id: Ib2c577c15502e8d1506948e9683921ed211b9c48 Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Doc: Mark globalSettings() obsolete in QWebEngineSettingsLeena Miettinen2017-06-091-3/+3
| | | | | | | | | | | | | | | | | | Replace references to global settings with references to the profile that the page belongs to. Task-number: QTBUG-57349 Change-Id: I19a2bf999608f2d4f7b565ea50bac1cbf9690c46 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * Store Target URL in WebContentsDelegateQt::WebContentsCreatedViktor Engelmann2017-05-302-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When opening a new window, for example by using the JavaScript method window.open('...'), the requested url is not stored in the content::WebContents object we get in WebContentsDelegateQt::createWindow (at this point, it should at least be stored as pending request in the WebContents' NavigationController, but it is not). Because of this, the QQuickWebEngineNewViewRequest object in QQuickWebEngineViewPrivate::adoptNewWindow never contained the url. We have access to the target url in WebContentsDelegateQt::WebContentsCreated, so now we store it there in a new property m_initialTargetUrl, from where WebContentsDelegateQt::createWindow takes it and passes it to WebContentsAdapter::adoptNewWindow as a new parameter. [ChangeLog][WebEngine] Fix WebEngineNewViewRequest::requestedUrl being empty when opening window from JavaScript Task-number: QTBUG-57675 Change-Id: I7e2c7866899baade17ce2517e6be8b2b2709699e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Don't disable local storage for offTheRecord profilesFlorian Bruhin2017-06-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Chromium has local storage enabled in icognito windows, and simply doesn't persist it to disk. QtWebEngine seems to do the same when local storage is enabled in an off-the-record profile, so there's no reason to disable it by default. This also matches the behavior in Chromium (and Firefox, but not Safari). [ChangeLog] HTML 5 local storage is now enabled by default (but residing in memory) in off-the-record profiles. Change-Id: I0cb7e946575a53471ffed9d3324b3ae4c2e80eee Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Implement pause and resume action in Download ItemsAllan Sandfeld Jensen2017-06-235-16/+82
| | | | | | | | | | | | | | | | | | Adds the ability to pause downloads, and resume paused or interrupted downloads. Task-number: QTBUG-56840 Change-Id: I018bd30c3a772a36d48e4154d94f69cb8d8319e4 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Navigation event adaptations for Chromium 58Allan Sandfeld Jensen2017-06-141-1/+0
| | | | | | | | | | Change-Id: Ieef29fa09c8b4733737840ce6260ac6e87e7dca0 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Fix copying JavaScript URLsSzabolcs David2017-06-072-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Wire unfiltered link URL to the API layer. [ChangeLog][QtWebEngine] linkUrl member of QWebEngineContextMenuData and ContextMenuRequest was previously returning with "about:blank" in case of non-standard URLs. Now it contains the unvalidated URL and CopyLinkToClipboard action has been fixed to handle such URLs (like javascript:) correctly. Task-number: QTBUG-59307 Change-Id: I2e49767e1cc9ec8324d230c1bf346e21d7b8d9bb Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devAllan Sandfeld Jensen2017-05-304-16/+12
|\| | | | | | | Change-Id: I962033871a1ef624807a4e1869fe869406aa73f7
| * Merge remote-tracking branch 'origin/5.9.0' into 5.9Allan Sandfeld Jensen2017-05-293-13/+5
| |\ | | | | | | | | | Change-Id: Iba6114263488d6bf84b255b38182904dc5880386
| | * Remove interruptReasonChanged signalKai Koehne2017-05-152-13/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Users should instead listen to stateChanged - we assume that the reason does not change independently of the state. Change-Id: I369f1c537013f0b9988c0d9bef4855d97e9b8736 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| | * Fix crash on exit with url-request interceptorsAllan Sandfeld Jensen2017-05-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the interceptor is the child of the profile, they will be deleted with the API profile which is before the underlying browser-context, they should therefore be unset from the browser context first. Task-number: QTBUG-60236 Change-Id: I2954e8106863b8b421ef166f6bf8fa79240c95ee Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | Show "Follow link" context menu item for links without textJüri Valdmann2017-05-171-1/+1
| |/ | | | | | | | | | | | | | | The standard context menu currently doesn't have the "Follow link" item for e.g. the image links on https://www.qt.io . Change-Id: I5b9d620135c7a8e65bd95a0ab07a76278e56cad0 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Doc: Add info to QWebEngineDownloadItem::downloadProgress docsLeena Miettinen2017-05-041-2/+6
| | | | | | | | | | | | | | | | | | The documentation was not very informative when compared with the docs for the similar QNetworkReply::downloadProgress signal. Task-number: QTBUG-56979 Change-Id: Icade60317a7b3fd8aaa37770c60ce8f4f947382b Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Handle ViewHostMsg_Focus message from chromiumViktor Engelmann2017-05-243-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling the method window.focus() in javascript causes chromium to send a ViewHostMsg_Focus message, which is received by RenderViewHost, which then calls RenderViewHost::OnFocus. This calls WebContentsDelegate::ActivateContents, which does nothing in the default implementation. We now override this method in WebContentsDelegateQt::ActivateContents and call Focus() on the WebContents object IF the new WebEngineSettings value AllowWindowActivationFromJavaScript is true (by default, it is false). This in turn calls QWebEnginePagePrivate::focusContainer. The WebEnginePage now calls QWidget::activateWindow() in addition to QWidget::setFocus, to make sure the window is also activated (which it might not be, if multiple windows are open). For the QML side, a new boolean Property allowWindowActivationFromJavaScript was added. Task-number: QTBUG-58800 Change-Id: Iabf5d4d15236c77838a3886de81e9dafcaf49f5d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-05-021-1/+12
|\| | | | | | | | | | | | | | | | | | | | | src/3rdparty used sha1 from 5.9, because both 5.9 and dev are using same branch now. Conflicts: src/3rdparty tests/auto/widgets/qwebenginepage/BLACKLIST Change-Id: I16a33e0f91779d1ee3a230070ff4248699c2e1bd
| * Handle the case when printing result does not contain any dataMichael Brüning2017-04-041-0/+11
| | | | | | | | | | | | | | | | Failing to do so would trigger an assert in the PDFium wrapper's constructor. Change-Id: Iaa53b1baa54e6483a4e7e9985ad841ac3cfef940 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Call javaScriptConfirm for unload dialogsFlorian Bruhin2017-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This unfortunately means we lose the ability to customize the title with the default implementation, but it's still better than having a QMessageBox hardcoded without being able to customize this behavior at all. [ChangeLog][Qt WebEngineWidgets][QWebEnginePage] The javaScriptConfirm method is now also called for unload dialogs (onbeforeunload handlers). Task-number: QTBUG-58673 Change-Id: I82393da2593dc84e94d577ff28f5d6d8988df552 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Put JavaScript commands for WebActions in QStringLiteralViktor Engelmann2017-04-281-12/+12
| | | | | | | | | | | | | | | | | | | | | | QWebEnginePage::runJavaScript and QQuickWebEngineView::runJavaScript have QString parameters. Passing raw strings causes them to be passed to the deprecated QString constructor, which causes warnings in the compilation. Change-Id: I072149ca85c94b2b94c7b5d9aa198eddd47460e8 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add several QtWebKit WebActionsViktor Engelmann2017-04-032-0/+89
|/ | | | | | | | | | | | | | | 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-272-0/+10
| | | | | | | | | | 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>
* Rename WebCoreVisitedLinksManager to VisitedLinksManagerQtAllan Sandfeld Jensen2017-03-261-1/+1
| | | | | | | | Rename to follow our standard naming. This class was one of our oldest and probably predates our standard naming convention. Change-Id: I32dfbad9611b789ad13114d9692b07045806f7c0 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Michael Brüning2017-03-242-4/+3
|\ | | | | | | Change-Id: I8a281e308ec1a6e93dc9756ba6399ca1b50210d8
| * Delegate QWebEngineHistory::currentItem() to itemAt()Viktor Engelmann2017-03-211-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | Calling QWebEngineHistory::currentItem() before the first item is inserted, caused a segfault, due to accessing an illegal QList index. We now delegate the lookup to QWebEngineHistory::itemAt(), which checks the index first and returns a dummy element in case of an illegal index. Task-number: QTBUG-59599 Change-Id: I9cdd2533e33415a7b812c29fff5429eb005020dc Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| * Improve cross-links between QtWebEngine classes in docsFlorian Bruhin2017-03-081-1/+2
| | | | | | | | | | | | Change-Id: Iae853d4d3ab73306f90d93b62a419d1d440a3259 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Remove erroneous CONSTANT attributes from the public widgets APIAlexandru Croitor2017-03-072-7/+7
| | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Allan Sandfeld Jensen2017-03-024-7/+10
|\| | | | | | | Change-Id: Iff6ab3c287c58d8ec84a1513460bfce5218e8a61
| * Fix crash on context menuAllan Sandfeld Jensen2017-02-222-1/+2
| | | | | | | | | | | | | | | | | | | | Instead of calling deleteLater, just tell close to delete the menu itself. Task-number: QTBUG-59080 Change-Id: I3eae382781f813ed3c6f27b78088b94ed1c486dd Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * Abort findText when destroying QWebEnginePageViktor Engelmann2017-02-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | In the destructor of QWebEnginePage and QQuickWebEngineView, we now call adapter->stopFinding() to suppress callbacks that would cause segmentation faults if a findText request is still active at that point. Task-number: QTBUG-58563 Change-Id: I9d5d8407ee6c28cd76bf6ecf0b62808394e151cd Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Fix empty dialogs on window.onbeforeunloadSzabolcs David2017-02-211-1/+1
| | | | | | | | | | | | | | | | | | Custom texts are not supported anymore in unload dialogs. Fill them with a better message. Task-number: QTBUG-58673 Change-Id: I820155452461db90bf1df2ae8a8ec10ee752aab1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Doc: Fix \sa links in the docsLeena Miettinen2017-02-093-5/+5
| | | | | | | | | | | | | | | | - Leave out the class name for the members of the class - Add brackets in the end of method names Change-Id: I5429be5620c5c192aa872d94ab047eebe39a13da Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add print and pdf feature to new configure systemMichal Klocek2017-01-163-16/+25
| | | | | | | | | | | | | | | | | | | | | | | | 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 for textual description of DownloadInterruptReasonViktor Engelmann2017-01-122-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A method was added to get a textual description of a Q(Quick)WebEngineDownloadItem::DownloadInterruptReason. Basically returns the same description from the QDoc entry, but shortened where that was to long. Also moved the ASSERT_ENUMS_MATCHes from download_manager_delegate_qt.cpp to the newly created browser_context_adapter_client.cpp. Task-number: QTBUG-56839 Change-Id: I17c68987b7f12fcaeb71fd27f7ebb35c0ac87bac Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add methods to issue various types of HTTP requestsViktor Engelmann2017-01-114-2/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | 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-103-2/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [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-193-9/+9
| | | | | | | | | | | | | | | | | | 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>
* | Merge "Merge remote-tracking branch 'origin/5.8' into dev" into refs/staging/devLiang Qi2016-12-073-18/+181
|\ \
| * | Merge remote-tracking branch 'origin/5.8' into devMichael Brüning2016-12-073-18/+181
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty Change-Id: Ie7b7c469aa24716816a23b8fe7a8df9f477a9f67
| | * Fix build when PDF support is disabledPeter Varga2016-12-011-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Wrap unused parameters. Change-Id: Iac550783a55b3fc585db6f7b8241aa2ae89fdf2e Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>