summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Blacklist failing test_findTextInterruptedByLoad QML testAlexandru Croitor2017-11-181-0/+3
| | | | | | | | | Continiously failed 5 times on Windows when integrating unrelated patches. Task-number: QTBUG-61887 Change-Id: I8055673e04c3bdfddfcfe05c3905ef5a86e8d1ec Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-11-158-0/+193
|\ | | | | | | | | | | | | | | | | Conflicts: src/3rdparty tests/auto/quick/qmltests/qmltests.pro tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp Change-Id: I2a1e3a83e29a1d6709f3e98fda3f7b4ab7ab297e
| * URLRequestQrcJobQt: remove ineffective URL formatting optionsJüri Valdmann2017-11-105-0/+42
| | | | | | | | | | | | | | Remove strange options for call to QUrl::path and add test for "qrc" protocol. Change-Id: I6528d858b7661832852c333a7f932d4714f953f2 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Notify Chromium about leaving viewPeter Varga2017-11-093-0/+150
| | | | | | | | | | | | | | | | Forward QEvent::Leave for Widget and QEvent::HoverLeave for Quick. Task-number: QTBUG-64265 Change-Id: Ide32768902956476d24b1d4115e305392b62feb3 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Stop preserving aborted navigation entriesJüri Valdmann2017-11-143-36/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consider the scenario 1. user enters url "http://localhost:8000/" A new navigation entry is created and committed in the NavigationController. 2. user enters url "http://localhost:8000/download.bin" A new navigation entry is created and a download is triggered, but the pending navigation entry in the NavigationController is neither committed nor discarded (since our WebContentsDelegate's ShouldPreserveAbortedURLs() returns true). 3. user enters url "http://localhost:8000/download.bin" At this point the NavigationController will have "http://localhost:8000/" as the committed navigation entry and "http://localhost:8000/download.bin" as the pending entry. NavigateToPendingEntry will see that the user is trying to navigate again to the same URL as the last pending entry and will therefore identify this new navigation as a reload. However Blink interprets 'reload' to mean reloading the last committed entry, i.e. "http://localhost:8000/", and so we end up trying to download "http://localhost:8000/" instead of "http://localhost:8000/download.bin" as the user might have expected. The patch removes the ShouldPreserveAbortedURLs override and relies on the default implementation which always returns false. As a result the pending navigation entry in step 2 above is discarded once the download has been triggered and the unexpected behavior in step 3 is no longer triggered. Removing the override resurrects QTBUG-48995 where, for example, calling QWebEnginePage::setUrl triggers first a urlChanged signal for the *old* URL. The patch adds url and title properties to WebContentsDelegateQt so that property change signals are triggered only if the properties have actually changed. A consequence of this fix is that the first urlChanged signal is delivered directly from the setUrl/load method and not asynchronously once the loading starts (this is also how Chrome's URL bar is updated). Task-number: QTBUG-63388 Change-Id: Icfa300b165e5e56f1fbc8978a00a237c263df183 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Add tests setUrlToBadDomain and setUrlToBadPortJüri Valdmann2017-11-141-0/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Document the somewhat strange behavior of the signals QWebEnginePage::urlChanged, QWebEnginePage::titleChanged, and QWebEnginePage::loadFinished when trying to load invalid URLs via QWebEnginePage::setUrl. Change-Id: I5218a49105ad6187f87e7091589b5175f4349593 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add 'webengine' prefix to configure features, tests, libraries, etcAlexandru Croitor2017-11-126-7/+7
| | | | | | | | | | | | | | | | This is done to make sure there are no conflicts with features in other modules, because they all share a global namespace. Change-Id: I95b3b7fadd8ffc2979ee3aad2234ee543d57c7d8 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Make GetUserMediaTestPage more robustViktor Engelmann2017-11-081-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A 5 second timeout might not be enough for our underpowered CI VMs. Also, if the page isn't loaded (to slow or for other reasons), we must abort, to prevent the JavaScripts from being run on different pages (first scripts to the old page, then to the new page if it eventually finishes loading). The first JavaScript in particular is rejected on the old page, because "about:blank" doesn't have a secure origin. This could even make the test accept wrongfully if all scripts are run on the old page, because the request (which is supposed to be rejected) can be rejected for being run on the wrong page, instead of for requesting forbidden permissions. Task-number: QTBUG-63347 Change-Id: Ib63d55477d35001b174900b73dc3dd23d33c7263 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Pass editor shortcuts to Chromium by ForwardKeyboardEventWithCommandsPeter Varga2017-11-032-17/+20
| | | | | | | | | | | | | | | | | | | | | | | | Moreover, extend the list of supported editor shortcuts and stabilize the corresponding auto test. Task-number: QTBUG-54692 Task-number: QTBUG-54812 Task-number: QTBUG-54221 Task-number: QTBUG-59053 Change-Id: I4dd8230519639ea6e3340992dbb54a609ecfcd91 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Change spellchecker-related private features into public onesAlexandru Croitor2017-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | This is done because qtConfig(spellchecker) is present in an example .pro file, and thus "spellchecker" should be a public feature. Change-Id: Idff977b8d0835b049c4c19dc42c1475d2c55c323 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Remove pointless inclusions of qtwebengine-config.priAlexandru Croitor2017-11-023-3/+0
| | | | | | | | | | | | | | Only projects which are built before the actual module need to do that. Change-Id: Ia8b071a627bd39c5df4600877b6873f308cbf690 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Merge branch '5.9' into 5.10Allan Sandfeld Jensen2017-11-011-1/+4
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/core/core_module.pro src/core/delegated_frame_node.cpp src/core/surface_factory_qt.cpp src/webenginewidgets/api/qwebengineprofile.cpp tests/auto/widgets/widgets.pro Change-Id: I92f3ef4eee779afef6c5381a7aa8b551417c1b17
| * Build accessibility tests only when Qt is configured with accessibilityMichael Brüning2017-10-261-1/+4
| | | | | | | | | | | | | | | | Original patch by Daniel Mack <daniel@zonque.org> Task-number: QTBUG-64015 Change-Id: I7dd0a1aa9bff08c6d19e818acf0e1b8b4b701f5b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Support streaming QIODevices in custom URL scheme handlersAllan Sandfeld Jensen2017-10-251-0/+85
| | | | | | | | | | | | | | | | We didn't handle the case where the QIODevice does not have all the data available all the time. Change-Id: I6aea8ed48ba9ed297efb907b8f6e5c5fc2a18abd Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Stabilize tst_javaScriptDialogs similateUserGestureAllan Sandfeld Jensen2017-10-251-8/+10
| | | | | | | | | | | | | | | | It was only reading window.mousePressReceived once, which can sometimes be before the click is processed. Change-Id: Ia0a7067a202afa563696708e6df5aa9445335eb8 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Adaptations to 61-basedAllan Sandfeld Jensen2017-10-251-1/+3
| | | | | | | | | | Change-Id: I5cb198445f283c6cea8187a1a2883896df0ee918 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Fix Qt::NoContextMenu policy handling in QWebEngineViewValentin Fokin2017-10-241-0/+63
| | | | | | | | | | | | | | Task-number: QTBUG-62345 Change-Id: I4846e15f007c6792ad02fc49179a6e30deafa4c7 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Verify result of QTest::qWaitForWindowExposed() in auto testsPeter Varga2017-10-183-18/+18
| | | | | | | | | | Change-Id: I8e75d21853ac8f7681b20101e40597154bcaca2d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Disable IME on password inputPeter Varga2017-10-041-4/+23
| | | | | | | | | | | | Task-number: QTBUG-62433 Change-Id: Icdc3355ca9d1ec4fb25d512c56c19aca94ae8928 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Update accessibility roles and tests for Chromium 60Peter Varga2017-10-041-1/+3
| | | | | | | | | | Change-Id: I8ef0b65fe365f468eeb3336e9bd2569e49257113 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into 5.10Allan Sandfeld Jensen2017-09-2911-232/+206
|\| | | | | | | Change-Id: I7094e85a7770303a2ae30baccbc484c04f33600e
| * Speculative stabilization of tst_QWebEngineView::emptyInputMethodEventPeter Varga2017-09-211-4/+4
| | | | | | | | | | Change-Id: I5dd8c3251587c706f1fd3b90f77e4ac03c2fba97 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Refactor tst_qquickwebengineview auto testPeter Varga2017-09-202-100/+41
| | | | | | | | | | | | | | Pass JavaScript result via callback instead of using console.log. Change-Id: Ie464f038d4fa778b1f64e95eca58e86e29184c1e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix license headers for testsKai Koehne2017-09-208-206/+68
| | | | | | | | | | | | | | | | | | Tests should all be GPL-EXCEPT. Task-number: QTBUG-60006 Change-Id: I2466374e863bd1c3cd791ade45caf1087be78cef Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Commit the done-so-far IME composition on touch eventPeter Varga2017-09-172-0/+170
| | | | | | | | | | | | | | | | | | | | | | Fix is based on afc9e2d9674f7ab5800df4803cc68c71d1ae691a Moreover, new quick auto test has been added to check that the commit happens in case mouse and touch input events. Task-number: QTBUG-62942 Change-Id: Ie9d55e0bb5b3bbc34c099502e735b94f37c5d5f8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix selectedText() to return the value of what findText("") findsAlexandru Croitor2017-09-221-18/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously when a find operation was finished by calling findText(""), the selection buffer was cleared and calling selectedText() would return an empty string, even though on the UI side a blue rectangle selection was still visible. This was due to an incorrect Unselect() call in WebContentsAdapter::stopFinding(). With the new selection change support in the parent patch, and with the removed Unselect() call, selectedText() now properly returns the value of the highlighted blue selection after searching is finished. Task-number: QTBUG-60673 Task-number: QTBUG-54071 Task-number: QTBUG-53134 Change-Id: I89e0eddb0c14af6d6c06ee878e706be65d3b0831 Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Remove WEBENGINE_CONFIG from configureMichal Klocek2017-09-204-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-201-1/+1
| | | | | | | | | | | | | | | | | | 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 testsupport to new configure systemMichal Klocek2017-09-194-5/+11
| | | | | | | | | | Change-Id: I123ce22ea3a3d8b7b80c67fa322cb817d924f2e0 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Wait for focusWidget being setAllan Sandfeld Jensen2017-09-151-0/+2
| | | | | | | | | | Change-Id: Ia248991e9b623e6d19fb34b10427ebaef72b9eae Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into 5.10Allan Sandfeld Jensen2017-09-149-1/+991
|\| | | | | | | Change-Id: I0860a46b981c1f711bec45d7a495bcec2a80ee1f
| * Set referrer on download requestsJüri Valdmann2017-09-121-7/+7
| | | | | | | | | | | | | | | | | | 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>
| * Add test for saving a page over HTTPJüri Valdmann2017-09-121-0/+85
| | | | | | | | | | Change-Id: I6d9261292e44484cded421402fc06ee2eb08bdea Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Add test for two simultaneous downloadsJüri Valdmann2017-09-121-0/+92
| | | | | | | | | | Change-Id: I8342aa806c3d1a8f4f1a5e822ef1be0e1755220c Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Add test for downloading a link via user actionJüri Valdmann2017-09-129-1/+814
| | | | | | | | | | Change-Id: Ide3294840ceb3d18da0c4da92d892ff467a9b739 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Adaptations for Chromium 60Alexandru Croitor2017-09-1119-34/+152
| | | | | | | | | | | | Change-Id: I536258e22c2ec143f2fd3f1cbda229e0611b6af4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Make FocusOnNavigationEnabled setting disabled by defaultv5.10.0-alpha1Oleg Yadrov2017-09-085-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Remove bic data to block bic testsMichal Klocek2017-09-053-44737/+0
| | | | | | | | | | | | | | | | This is workaround till qtqa patch is in. Task-number: QTBUG-63005 Change-Id: I0e94304df489160f475e6b6542ca11220f52a63b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Skip tests due to issues with current 58-based ChromiumAlexandru Croitor2017-09-044-1/+18
| | | | | | | | | | | | | | | | These will be restored once 60-based Chromium is used. Task-number: QTBUG-62973 Change-Id: Ia1ad8e1dd7914e41f92d7a790f7c0b3956c68f28 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add auto tests for MultipleMouseClickHelperPeter Varga2017-08-313-0/+227
| | | | | | | | | | | | | | | | | | | | | | Qt WebEngine implements a custom handler for multiple mouse clicks. These tests are intended to test whether the mouse click events are properly forwarded to the Chromium's RenderWidgetHost. Custom mouse click test functions have been also added for the custom mouse click handler. Change-Id: Ifdc7d09f5e0f0f76c37e137e5743482bf3fb8abb Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Make deletion of CallbackSpy safeMichal Klocek2017-08-282-7/+24
| | | | | | | | | | | | | | | | | | The deletion of CallBackSpy before web engine page destruction could end up in segmentation fault. Make CallbackSpy safe to be deleted before web engine page. Change-Id: I71a184091c0251c61e3383010e3badfef5cb6124 Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
* | Emit loadProgress only between loadStarted and loadFinishedViktor Engelmann2017-08-221-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now track the values we send to the loadProgress signal. We store the last value in a new int WebContentsDelegateQt::m_lastLoadProgress and only send values that are >= m_lastLoadProgress to ensure monotonicity. A value < 0 indicates that no loading is going on. Only on loadStarted it is set to 0 (and a loadProgress is emitted with progress 0) and on loadFinished, it is set to -1 (and a loadProgress is emitted with progress 100). This way, we ensure that you first get a loadStarted signal, at least two loadProgress signals (0 and 100) and a loadFinished signal AND all loadProgress signals come in a monotonous order. Task-number: QTBUG-57839 Task-number: QTBUG-61815 Change-Id: I219d3bffbd5691adb892a11b79647ba9e1ed248e Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devAllan Sandfeld Jensen2017-08-143-8/+22
|\| | | | | | | | | | | Includes sha1 bump of src/3rdparty to head of 58-based. Change-Id: I37743c3979c1b6fb21f71eab7048e82f7aa5d78b
| * Speculative stabilization of imeCompositionQueryEvent widget auto testPeter Varga2017-07-191-5/+7
| | | | | | | | | | | | | | | | Wait for receiver object to be set after show. Task-number: QTBUG-61816 Change-Id: I2eb62775d30b0f8f9ec3e76d60a924b56c811865 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix propagation of unhandled key press eventsJoerg Bornemann2017-07-141-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unhandled key presses for printable keys were not received by the parent widget anymore. This was a regression from 5.8.0. The propagation is suppressed if NativeWebKeyboardEvent::skip_in_browser is true. Commit 4501b9d8 accidentally removed the wrong skip_in_browser assignment. Task-number: QTBUG-61621 Change-Id: I7eafa1fac5fb9a7edc4af2bc1aac21c106264713 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * [macOS] Use the OpenGL CoreProfile when the global shared context doesAlexandru Croitor2017-07-112-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously when a default QSurfaceFormat was set with an OpenGL Core profile, all the contexts created on the Qt side would obey the profile, but Chromium would still use the Compatibility profile for its contexts leading to warnings when trying to create shared contexts. The fix is to check which OpenGL profile is used in the Qt global shared context, and pass that information along to Chromium. Note that this works only on macOS for now, and the default non-Core profile is used on other platforms, even though Core was requested. Passing CoreProfile to Chromium on Windows and Linux currently leads to crashes. Task-number: QTBUG-60605 Change-Id: I27a77091923624d19ccc2019953a5b07f9282916 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Add HideScrollbars settingPeter Varga2017-08-021-31/+11
| | | | | | | | | | | | | | [ChangeLog][Settings] Added setting to hide scrollbars. Change-Id: I17695bb54a460621358345d303302b93eb342696 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix emitting selectionChanged signal for non-user text selection changePeter Varga2017-07-202-35/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the case when the text selection is triggered by JavaScript. Text selection changes triggered by IME composition text replecement are ignored. Test has been added for mouse selection clipboard: non-user text selection should not update the clipboard. Pulls in Chromium changes: 3deea95 Update TextSelection for non-user initiated events Task-number: QTBUG-53134 Task-number: QTBUG-60381 Change-Id: Ib94f57a2aa61248fba75f595245fb388b9609b6c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Remove tst_QWebEnginePage::scrollToAnchor auto testPeter Varga2017-07-191-37/+0
| | | | | | | | | | | | | | | | | | | | The tested QWebEnginePage::scrollToAnchor API can't be added to QtWebEngine for now. Currently, Chromium Content API doesn't support to control page scroll. The corresponding feature can be used by URL fragment identifier (#anchor) or JavaScript API (location.href). Change-Id: Ie9c87758d458858ba677d309a548cdced525557b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Make error message more verbose in QML test test_loadProgressViktor Engelmann2017-07-191-1/+2
| | | | | | | | | | | | | | | | | | | | If the verify(loadProgressMin <= loadProgress) fails, the output was not verbose enough. The additional outputs will tell us more about what caused the test to fail. Task-number: QTBUG-61815 Change-Id: Ia9b45ef4f09a5b25a344e423a7b0c61d5d430542 Reviewed-by: Kai Koehne <kai.koehne@qt.io>