summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets
Commit message (Collapse)AuthorAgeFilesLines
* Disable IME on password inputPeter Varga2017-10-042-4/+8
| | | | | | Task-number: QTBUG-62433 Change-Id: Icdc3355ca9d1ec4fb25d512c56c19aca94ae8928 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.10Allan Sandfeld Jensen2017-09-295-49/+95
|\ | | | | | | Change-Id: I7094e85a7770303a2ae30baccbc484c04f33600e
| * Change some copyright headers from LGPL to standard oneKai Koehne2017-09-202-47/+52
| | | | | | | | | | | | | | | | | | The files are small enough that they are arguably not 'copyrightable' in the first place. Task-number: QTBUG-60006 Change-Id: Ieee3a88500864b82da843e3872d85969fae637e6 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Add missing copyright headersKai Koehne2017-09-201-0/+27
| | | | | | | | | | | | Task-number: QTBUG-60006 Change-Id: I75149082f36cd4d56da508283b766df680ed88b8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix license headers for libraries and pluginsKai Koehne2017-09-201-1/+11
| | | | | | | | | | | | Task-number: QTBUG-60006 Change-Id: Ibc0507f300f52154e6f131056d826a4dcef009c2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix license header for examplesKai Koehne2017-09-201-1/+1
| | | | | | | | | | | | Task-number: QTBUG-60006 Change-Id: Ie1604aed3d5a9ba566e898eae232227ba340bfaa Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Document that the Windows version in the user-agent might be wrongKai Koehne2017-09-141-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Chromium uses GetVersionEx() to determine the Windows version that is reported in the default user agent. GetVersionEx() however always reports "Windows NT 6.2" for newer Windows versions, unless the executable's manifest file marks the newer version as supported. Since this is a common question we document this in the httpUserAgent accessors. Task-number: QTBUG-56472 Change-Id: I4698cd659f5552b92ef925c198f39326fcb936f3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | Remove WEBENGINE_CONFIG from configureMichal Klocek2017-09-201-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not store flags in qmake.cache with WEBENGINE_CONFIG. Use directly qtConfig values insted. This makes configuration more consistent, simplifies handling and avoids passing values from qtConfig to WEBENIGNE_CONFIG, which then were passed to gn. [ChangeLog] Removing WEBENGINE_CONFIG from qtwebengine configure Change-Id: I1a773fb4bff6d67ad75c237d044998051d92ab51 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Replace Setting HideScrollbars by ShowScrollBarsViktor Engelmann2017-09-203-6/+6
| | | | | | | | | | | | | | | | | | Positive options are more intuitive and make for a better API. Task-number: QTBUG-63179 Change-Id: I632ee768dba52554e7d37d9da84661a1d01f1f37 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | Add UI delegates configure optionMichal Klocek2017-09-191-1/+4
| | | | | | | | | | Change-Id: Ib9d6c8842609c4c410ca65a35fefeab481f71cb2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | [macOS] Fix creation of shared OpenGL 3.2 Core contextsAlexandru Croitor2017-09-171-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to a current issue described in QTBUG-63180, requesting a 3.2 Core context on macOS will advertise that a 4.1 context was created, even though that is not the case. Because RenderWidgetHostViewQtDelegateWidget will read the OpenGL major version from the global shared context and then apply that to its own context, this will cause a failure to create a shared context (one is 3.2, and the other is 4.1). The current workaround is to create the context with the default format version, instead of the global shared one. This way all the requested versions will be consitent. Task-number: QTBUG-60605 Change-Id: I470c43ca9d15cb3887a0ed968b57c62518a33a72 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into 5.10Allan Sandfeld Jensen2017-09-143-8/+6
|\| | | | | | | Change-Id: I0860a46b981c1f711bec45d7a495bcec2a80ee1f
| * Set referrer on download requestsJüri Valdmann2017-09-121-2/+5
| | | | | | | | | | | | | | | | | | Note that the Referer header still won't be sent if the download is triggered via an anchor element with the 'download' attribute: crbug.com/455987 . Task-number: QTBUG-61354 Change-Id: I5af971af916b2190756e3e58f19736072a213922 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Remove QWebEngineViewPrivate::m_pendingContextMenuEventJoerg Bornemann2017-09-113-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This flag was set in QWebEngineView::contextMenuEvent and checked in QWebEnginePage::contextMenuRequested. The latter would bail out if the flag was not set. When the user pressed Shift-F10, the key event was received by RenderWidgetHostViewQtDelegateWidget::event and forwarded to Chromium. Blink's default event handler invoked the context menu, and our callback QWebEnginePage::contextMenuRequested was called. But nothing happened, because m_pendingContextMenuEvent has never been set. There is no reason to have this flag. React on every context menu request just like in the QtQuick implementation. Now pressing Shift-F10 invokes the context menu on web pages. Task-number: QTBUG-58306 Change-Id: I2db1b17604e5521e44613297120a964cc4e4d544 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge "Merge branch '5.9' into 5.10" into refs/staging/5.10Allan Sandfeld Jensen2017-09-111-0/+10
|\ \
| * | Merge branch '5.9' into 5.10Allan Sandfeld Jensen2017-09-061-0/+10
| |\| | | | | | | | | | Change-Id: I9fe9946ba47f9ef509a861963c83e275a25fffd0
| | * Close popup windows when their parents are destroyedAlexandru Croitor2017-08-291-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously when a popup window was shown, and the user issued a command to close the only active main window (via a shortcut for example) with a subsequent call to deleteLater(), the main window would be closed and deleted but the popup would only be hidden, which led to the application loop to still be running and not quitting, even though there would be no visible window left. The closing of a popup is usually done in the QWidget destructor when the popup is still visible, but because we unset the parent right before the parent is destroyed (which sets visibility to false), the popup would not be closed, but only hidden. Thus this change makes sure to explicitly close the popup when its parent is destroyed. Task-number: QTBUG-62311 Change-Id: Ia0bbf327929af55aac19767971ab0acde5715e21 Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
| | * Stop forwarding HoverEnter and HoverLeave QEventsJüri Valdmann2017-08-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With QtWidgets the QHoverEvent handling is slightly incorrect (HoverEnter and HoverLeave triggering Q_ASSERT), quite unnecessary (Chromium works fine with just MouseMove events when mouse tracking is enabled), and mostly unused (QHoverEvents are only delivered if the WA_Hover widget attribute is set, which it usually is not). QtQuick however does not have the equivalent of QtWidgets mouse tracking, so to get mouse movement information into Chromium we have to use HoverMove QEvents. But the HoverEnter and HoverLeave QEvents are not used or useful for QtQuick either. Task-number: QTBUG-62200 Change-Id: I333de2b6adcc24544935d36645036aedb07e51ac Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | | Make FocusOnNavigationEnabled setting disabled by defaultv5.10.0-alpha1Oleg Yadrov2017-09-082-3/+3
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this setting was added in Qt 5.8, the behavior was that QWebEngineView/WebEngineView got the focus automatically. With the new setting added it is configurable, but it was left enabled for compatibility reasons. It would had to be changed at some point anyway: none of other QML items or widgets grab the focus after creation, so why would QWebEngineView/WebEngineView do? This patch also fixes a bug with the text cursor in WebView (the cursor was blinking as if WebView had the focus when it did not). [ChangeLog][Important Changes][QtWebEngine][General] focusOnNavigationEnabled setting which allows controlling whether a web view will receive focus on a navigation request is now disabled by default. Task-number: QTBUG-60152 Task-number: QTBUG-60149 Change-Id: I78dc9bb9ffc70bf06217952acd456b97651c5185 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Michal Klocek <michal.klocek@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>
* | Merge remote-tracking branch 'origin/5.9' into devAllan Sandfeld Jensen2017-08-141-2/+1
|\| | | | | | | | | | | Includes sha1 bump of src/3rdparty to head of 58-based. Change-Id: I37743c3979c1b6fb21f71eab7048e82f7aa5d78b
| * Doc: Align QtWebEngineWidgets overview with the one for the QtWebEngine moduleKai Koehne2017-07-191-2/+1
| | | | | | | | | | Change-Id: If4db465b9764be80df7fe953be63fc1a40b60d75 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | Remove support for building with Qt versions < 5.8.0Allan Sandfeld Jensen2017-08-044-45/+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-023-1/+7
| | | | | | | | | | | | | | [ChangeLog][Settings] Added setting to hide scrollbars. Change-Id: I17695bb54a460621358345d303302b93eb342696 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Remove DemoBrowserJüri Valdmann2017-07-261-1/+1
| | | | | | | | | | | | | | | | | | | | [ChangeLog][Examples] Removed WebEngine Demo Browser example, which got superseded by the improved WebEngine Widgets Simple Browser. Task-number: QTBUG-59819 Change-Id: I214e6f5f3a946ed617a9f4d628d3259a69874ca1 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@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-173-38/+70
| | | | | | | | | | | | | | | | | | - 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-057-65/+29
|\| | | | | | | 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>
| * Merge remote-tracking branch 'origin/5.9.1' into 5.9Liang Qi2017-06-242-4/+0
| |\ | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/functions.prf Change-Id: I53d65ea49f546c7d4aadfdaff178fd2f3f4cdf11
| | * 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>
| * | Doc: Describe size limit for QWebEnginePage::setHtml()Leena Miettinen2017-06-201-0/+6
| |/ | | | | | | | | | | | | | | | | | | The page content is used as a URL, which is limited to 2 MB by Chromium. Task-number: QTBUG-59369 Change-Id: Id0b81b577d1d997dd722c43e3b71b8979d86ee81 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Viktor Engelmann <viktor.engelmann@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-092-26/+14
| | | | | | | | | | | | | | | | | | 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>
| * Override shortcuts only when an HTML input field has focusJoerg Bornemann2017-06-081-16/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise an application shortcut like Shift+Delete would no longer work when webengine has focus (e.g. "delete mail" in KMail) This removes unconditional calls to editorActionForKeyEvent for ShortcutOverride event handling. We can remove those, because the key sequences that are checked by editorActionForKeyEvent are a subset of the key sequences checked by isCommonTextEditShortcut. This amends commit 3902b27e. Change-Id: I12a98368381edef36f11457c8b864d843efb871a Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Alexandru Croitor <alexandru.croitor@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>
* | Adaptations for Chromium 57Allan Sandfeld Jensen2017-06-141-0/+1
| | | | | | | | | | Change-Id: Ia2756c1e9b13839c2330bd98cf953d47cbdac0dd 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>