summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-11-151-0/+54
|\ | | | | | | | | | | | | | | | | Conflicts: src/3rdparty tests/auto/quick/qmltests/qmltests.pro tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp Change-Id: I2a1e3a83e29a1d6709f3e98fda3f7b4ab7ab297e
| * Notify Chromium about leaving viewPeter Varga2017-11-091-0/+53
| | | | | | | | | | | | | | | | 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>
* | Pass editor shortcuts to Chromium by ForwardKeyboardEventWithCommandsPeter Varga2017-11-031-14/+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>
* | 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-181-13/+13
| | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/5.9' into 5.10Allan Sandfeld Jensen2017-09-291-4/+4
|\| | | | | | | 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>
* | Adaptations for Chromium 60Alexandru Croitor2017-09-111-13/+14
| | | | | | | | | | | | 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-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 auto tests for MultipleMouseClickHelperPeter Varga2017-08-311-0/+95
| | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/5.9' into devAllan Sandfeld Jensen2017-08-141-6/+17
|\| | | | | | | | | | | 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>
* | Fix emitting selectionChanged signal for non-user text selection changePeter Varga2017-07-201-32/+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>
* Fix cancelling IME compositionPeter Varga2017-06-221-2/+26
| | | | | | Task-number: QTBUG-61429 Change-Id: I936f1c924ae8158a5243fdf20d12e6c5508b684a Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Override shortcuts only when an HTML input field has focusJoerg Bornemann2017-06-081-9/+12
| | | | | | | | | | | | | | | | 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>
* Add back widget auto tests for inputMethodQuery and inputMethodHintsPeter Varga2017-05-311-111/+110
| | | | | | Task-number: QTBUG-55766 Change-Id: Ic90eb7b9a211b09281ccbb3eae727e8a1c081b9a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix selectionChanged signal out of input fieldPeter Varga2017-05-171-2/+93
| | | | | | Task-number: QTBUG-60688 Change-Id: I6d0b78e6b8df54c40ae30d5f0909c631c440a9cd Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Stabilize keyboardEvents auto testsPeter Varga2017-04-281-1/+1
| | | | | | | | The typeAheadTimeout is set to 1sec in Blink. Wait a bit more when selecting the next option in a HTML select element in auto tests. Change-Id: Ia3d9fde05b4d6cde9186aaa701ca48354ca74b4d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Override shortcuts in HTML input fieldsJoerg Bornemann2017-04-251-0/+58
| | | | | | | | | | | | | | | | | | | When users defined a single-letter short cut it was not possible to type this letter in HTML input fields. Fix this by accepting ShortcutOverride events whenever the web page is editing text. Use QInputControl::isCommonTextEditShortcut for Qt 5.9 and later. For the case where QtWebEngine is built against an older Qt a duplicated code path is used. Also, ensure users do not override web action short cuts. Task-number: QTBUG-59053 Change-Id: Ic26cf2a040a72b118273c6645c00b2913b995b0b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Disable setting background color in QInputMethodEventPeter Varga2017-04-211-0/+6
| | | | | | | | | | | | | IME managers may set background and foreground color of the composition string. Since there is no Chromium API for setting the foreground color, changing the background color to black may produce "black-on-black" text. Chromium locks the background color to transparent thus we do the same in this fix. Task-number: QTBUG-58362 Task-number: QTBUG-60031 Change-Id: I939c8aaaa847de191890d6924ba3c7652465f8a0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Handle QInputMethodQueryEvent forwarded by RWHVQDWPeter Varga2017-04-121-0/+80
| | | | | | Task-number: QTBUG-58362 Change-Id: I6c80c8063ccad97aa80aff8ee44aa10a899c5ff5 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix text selection and input method queryPeter Varga2017-04-121-0/+385
| | | | | | | | | | | | | | | Instruct the render process to change the text selection if it was requested via an input method event. Raise the selectionChanged() signal when all the corresponding input method properties are set. Moreover, add back the remaining input method widget auto tests. The updated tests are moved to the QWebEngineView tests since the corresponding APIs (inputMethodQuery() and input event handling) are now available via the QWebEngineView's focus proxy (aka RWHV). Task-number: QTBUG-55766 Change-Id: Ia0022d5f38b31dd59b084ff42e4abc2780ae90ec Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add back tst_QWebEngineView::horizontalScrollbarTest auto testPeter Varga2017-03-291-18/+19
| | | | | Change-Id: Iebe5ed3e93b5b39866910ad9b63d02b88d64c3b2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Unblacklist changeLocale auto testsPeter Varga2017-03-151-3/+3
| | | | | | | | | | Do the error message comparison with utf-8 enconding since the localized error messages are stored in utf-8 format (error_page_strings.grdp). This also stabilizes the test because it doesn't depend on the encoding used by the Chromium. Change-Id: I24addc1c18d5b4325f4c0270e675e02c3f4e0812 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.8' into 5.9" into refs/staging/5.9Allan Sandfeld Jensen2017-03-041-0/+50
|\
| * Merge remote-tracking branch 'origin/5.8' into 5.9Allan Sandfeld Jensen2017-03-021-0/+50
| |\ | | | | | | | | | Change-Id: Iff6ab3c287c58d8ec84a1513460bfce5218e8a61
| | * Fix QWebEngineView::setFocus to properly set internal QQuickItem focusAlexandru Croitor2017-02-201-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The widgets object hierarchy related to focus goes like this: QWebEngineView's focus proxy is -> RenderWidgetHostViewQtDelegateWidget, which has an internal QQuickRootItem defined by QQuickWidget, and the child of the item is -> RenderWidgetHostViewQuickItem. Previously when QWebEngineView::setFocus was called, the focus was set on the RenderWidgetHostViewQtDelegateWidget and the QQuickRootItem, but not on the RenderWidgetHostViewQuickItem. This caused for e.g. an active HTML text input not receiving focus. Make sure the RenderWidgetHostViewQuickItem is marked to have focus within its root item, so that if the root item receives active focus, so will RenderWidgetHostViewQuickItem receive it. Task-number: QTBUG-58515 Change-Id: I175610e3dfebc03733aefe26c16f47096df8ff5b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Rework change locale tests for 55-based ChromiumPeter Varga2017-03-031-23/+27
|/ / | | | | | | | | | | | | | | | | Error pages no longer have useful titles in Chromium 55. Test the error page content instead. Tests have been also stabilized. Task-number: QTBUG-58022 Change-Id: If5c3e2b1df2cb3ee8b48d651e6f19360fa484f17 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Rework unhandled key event propagation tests for 55-based ChromiumPeter Varga2017-03-011-16/+27
| | | | | | | | | | | | | | | | | | Since change https://codereview.chromium.org/2200833007 input elements are inappropriate for testing unconsumed key events. Test focus change on div elements instead. Change-Id: Ifa2f3e1bc9d6d9cb396fbad7caea907616d085b7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Update auto tests for Chromium 55Allan Sandfeld Jensen2017-03-011-0/+1
| | | | | | | | | | | | | | | | | | Load failures now have a Chromium side timeout of 10s so we need to wait longer than that. Additionally error-pages no longer have descriptive titles, so we can not rely on that in our tests any longer. Change-Id: I33ac8b9f1247403eb214f7260267edb887fe10d0 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-301-0/+100
|\| | | | | | | Change-Id: Ic36a80502730d404ab96dfa11ff1eb0ac6eb302d
| * Fix confirming IME composition and newline insertionPeter Varga2017-01-251-0/+100
| | | | | | | | | | | | Task-number: QTBUG-55766 Change-Id: I3be3b224dfef9ecc1ce39f4f20ec5c1d13c0fa69 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-251-0/+167
|\| | | | | | | | | | | | | | | Conflicts: src/3rdparty tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp Change-Id: I070173576fc4be53689ce0dd9e1fd4133f5814da
| * Fix handling of empty input method eventsPeter Varga2017-01-221-0/+29
| | | | | | | | | | | | Task-number: QTBUG-55766 Change-Id: I4e6ade8f000f66ff1bb28f3b856ae140834292f1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Make input method hints available via RWHV delegate widgetPeter Varga2017-01-201-0/+26
| | | | | | | | | | | | | | | | | | Moreover, set ImHiddenText hint for password fields and add back the corresponding widget auto test. Task-number: QTBUG-55766 Change-Id: I3f76e19c8c33e11f3d9f515b6dc7d6e998c3c9a4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Add back SIP (Software Input Panel) widget testPeter Varga2017-01-181-0/+112
| | | | | | | | | | | | | | | | | | Moreover, update the Chromium SHA1 for enabling virtual keyboard support for macOS. Task-number: QTBUG-55766 Change-Id: Ic50ae79ab13a62a4b9289afedce2d6647e266f86 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add methods to issue various types of HTTP requestsViktor Engelmann2017-01-111-0/+135
|/ | | | | | | | | | | | | 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>
* Port autotests from own waitForSignal() to QSignalSpy::wait()David Faure2016-11-291-12/+20
| | | | | | | | I added QSignalSpy::wait() in Qt 5.0 exactly for this purpose. Change-Id: I895a92f5f7e4e8554e00f6668e6973cc2c903adf Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix keyboard focus of RWHVQDW after popupPeter Varga2016-11-291-0/+59
| | | | | | Task-number: QTBUG-56652 Change-Id: I1a6655587a9104dd817332e2eb5f886c057d8f64 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add quick and widget auto tests for keyboard event handlingPeter Varga2016-10-251-0/+90
| | | | | | Task-number: QTBUG-56242 Change-Id: Ib6689d6f183532502382c86f92fdbdf27dd6c37c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add support of colored underline and background to InputMethodEventPeter Varga2016-09-231-0/+65
| | | | | | | | | | Moreover, unskip and update inputMethodsTextFormat widget auto test and move it to the tst_QWebEngineView tests. New manual test has been also added for testing input methods format. Task-number: QTBUG-55766 Change-Id: I4c71e15cb426925f76c770266a3c20f1cc12b687 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add focusOnNavigationEnabled settingAlexandru Croitor2016-08-091-0/+86
| | | | | | | | | | | | | | | | The focusOnNavigationEnabled setting allows changing the behavior of whether a WebEngine view (widget or quick) will automatically get focus, whenever a navigation action happens (load, reload, previous history entry, etc). The default behavior before this patch was to always grab the focus. [ChangeLog][QtWebEngine][General] Add focusOnNavigationEnabled setting which allows controlling whether a web view will receive focus on a navigation request. Previously the view always received the focus. Task-number: QTBUG-52999 Change-Id: I6d30d973a41b53011131f21dcecbf6ec4d652759 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Fix changing locale of ResourceBundle on LinuxPeter Varga2016-07-131-0/+32
| | | | | | | | | | | | | | | | The ResourceBundle is not re-initialized for new Renderer Processes because it is initialized only once in Zygote Process. This means runtime locale changes do not affect new Renderer Processes. Zygote Process is supported on Linux only thus other platforms don't need this fix. With this change the locale of the ResourceBundle is reloaded when new Renderer Process is started. For accessing the pak file of the locale in the sandboxed environment the file descriptor is passed via the Chromium's GlobalDescriptor solution. Task-number: QTBUG-53000 Change-Id: I57e84078db9d0795d16d930aa1b3e93a6e86ec39 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Switch to using QQuickWidget in WebEngineWidgetsAllan Sandfeld Jensen2016-07-061-9/+7
| | | | | | | | | To support scenegraph-ng we need to switch away from QOpenGLWidget, to something that will work with any QQuick backend. Task-number: QTBUG-53283 Change-Id: I476a2c22e35a18cefc2824d5342bcff874c44d28 Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Allan Sandfeld Jensen2016-05-311-0/+152
|\ | | | | | | Change-Id: I561c00b3a844ab493a5bf0148a5923662842cf5d
| * Disabled WebEngine views should not receive focus.Alexandru Croitor2016-05-261-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently if a QWebEngineView or a QQuickWebEngineView is disabled using setEnabled(false), after loading a web page, the views are automatically focused, and a user might see a blinking caret in an html input for example, even though the user can't interact with it. Fix consists in not calling the Focus() method whenever a view is disabled. Change-Id: I1014fb5898a5ddf01a4e9b14c3eaf5d4006e5131 Task-number: QTBUG-53159 Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com>
| * Stop disabled QWebEngineView widget from processing input events.Alexandru Croitor2016-05-261-0/+120
| | | | | | | | | | | | | | | | | | | | | | If a QWebEngineView is disabled, input events are still forwarded to Chromium, thus allowing the user to interact with a web page. Fix consists in stopping the forwarding of input events in the generic event handler, just like QWidget::event() does. Change-Id: Ie822d1f3d640840569a282223d76749686cf3419 Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com>
* | Cleanup license leftoversMichal Klocek2016-05-031-1/+1
| | | | | | | | | | Change-Id: Ie0ecb1808c6b6a689ef29d7fa4831ca0a2e92721 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>