summaryrefslogtreecommitdiffstats
path: root/src/core/render_widget_host_view_qt.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix cursor position during compositionAnu Aliyas2024-01-091-3/+5
| | | | | | | | | | | | | During input composition, the cursor is set to the starting position of the string being edited and refrain from updating it throughout the composition process. Once the string is committed, it is set to the last position of the committed string. The modified code is designed to exhibit the same behavior as the widget and quickwidget. Fixes: QTBUG-118746 Pick-to: 6.5 6.6 6.7 Change-Id: I9adb7a9bea9493457a1d9d4b32338cdba30920a1 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Chromium 118 adaptationsAllan Sandfeld Jensen2023-12-091-6/+8
| | | | | Change-Id: I8eea99a472cc597ff9864b570c90b28b79b3751e Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Chromium 114 adaptationsAllan Sandfeld Jensen2023-12-091-1/+0
| | | | | Change-Id: I1131b2873f82d954ca47bf90bc82200d5f4cd751 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Fix crash on Google Meet when dark mode is enabledSzabolcs David2023-07-291-0/+3
| | | | | | | | | | | Extensions can use offscreen views to perform background tasks or isolate script contexts. Avoid access of non-existing Qt delegate by early return. Pick-to: 6.5 6.6 Task-number: QTBUG-113369 Change-Id: I361df0afc0da30c1a013380e1c97973153ffbfd3 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Adaptations for Chromium 112Allan Sandfeld Jensen2023-07-061-6/+4
| | | | | | Pick-to: 6.6 Change-Id: I1bb84b20a080d7f615bf0795ac2d97739e99ac1d Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Add InputEventObserver to child framesMartin Negyokru2023-01-171-25/+29
| | | | | | | | | | | | | | | | | | | | RenderWidgetHostViewChildFrame does not Ack mouse wheel events. RenderWidgetHostViewQt::handleWheelEvent expects Ack on every event. Origin-Agent-Cluster is a HTTP response header that instructs the browser to prevent synchronous scripting between same-site cross-origin pages. Chromium also uses this header as a hint that an origin should get its own separate resources, such as a dedicated process. That's where child frames are created. This feature is implemented in chromium 88. Add observer to child frames that responds to wheel events. Add test for wheel/scroll events on child frames. Pick-to: 6.5 Fixes: QTBUG-109348 Change-Id: I20439a9068c5c2f8416a350891a6cf8830e1a5d6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Clean up accessibilityPeter Varga2023-01-171-6/+0
| | | | | | | | Build less when disabled. Pick-to: 6.5 Change-Id: I196073ce859216a041b3d13ea585fca749a52700 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix contentsSize and scrollPosition on High DPI screensPeter Varga2023-01-131-3/+8
| | | | | | | | Provide the same values what are available from JavaScript. Pick-to: 6.5 Change-Id: I9e047d749279934d0c8ccd45710571e8c7745859 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add touchSelectionMenu for widgetsMartin Negyokru2022-12-121-0/+3
| | | | | | | | | [ChangeLog][QWebEngineWidgets] Added touch selection menu. Task-number: QTBUG-100418 Task-number: QTBUG-91712 Change-Id: Iffb994e429b92389e64cd6a93a0b034d6aa07f66 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Adaptations for 106-basedAllan Sandfeld Jensen2022-11-281-4/+6
| | | | | | Change-Id: I2fe91c06ce91dfaace7825a0589b56ee375479b6 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix wrong scalingMartin Negyokru2022-09-021-24/+30
| | | | | | | | | | | Use inherited screen_infos_ in RenderWidgetHostViewQt. Handle multiple screens. Fixes: QTBUG-105955 Fixes: QTBUG-105960 Pick-to: 6.4 Change-Id: I6e5d04e29ff1e8bb9936cc3103960f27895904d6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix PDF viewerAllan Sandfeld Jensen2022-08-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | It was broken after 102-based merge Submodule src/3rdparty c57592220..8496e1340: > Revert "Jumbo build mojom files" > FIXUP: Fix building with optimize_webui=false > Revert "Add remove_v8base_debug_symbols to GN" > FIXUP: Fix crashes and asserts > Add missing node modules for PDF support > [Backport] CVE-2022-2614: Use after free in Sign-In Flow > [Backport] CVE-2022-2618: Insufficient validation of untrusted input in Internals > [Backport] CVE-2022-2612: Side-channel information leakage in Keyboard input > [Backport] CVE-2022-2613: Use after free in Input > [Backport] CVE-2022-2624: Heap buffer overflow in PDF > [Backport] CVE-2022-2610: Insufficient policy enforcement in Background Fetch > [Backport] CVE-2022-2615: Insufficient policy enforcement in Cookies > [Backport] CVE-2022-2294: Heap buffer overflow in WebRTC > [Backport] CVE-2022-2478 : Use after free in PDF > Jumbo build mojom files Pick-to: 6.4 Change-Id: I4fc608c21ab8aaa508329e708446b57cccbddf76 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Use SPDX license identifiersLucie Gérard2022-06-221-39/+2
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I869ffda1080e283f231eb0dc4477b260f2054d99 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Create a RWHV delegate in coreAllan Sandfeld Jensen2022-06-091-1/+1
| | | | | | | | | | This is adapting the Quick code for shared use with widgets, and allows us to use it from QWebEnginePage. Pick-to: 6.4 Fixes: QTBUG-96377 Change-Id: I3f09c1a949eff86d80fbe6c513dc66e3f9f2f611 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Quick: Add support for replacing touch handles with delegatesBalazs Egedi2022-05-041-5/+12
| | | | | | Task-number: QTBUG-85043 Change-Id: I1c87aff352e07eb309d5ba8747b9e50a191d478e Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Adaptations for Chrome 98Allan Sandfeld Jensen2022-03-291-10/+17
| | | | | Change-Id: I607604f85a111a69da77ca949dddf3399b9721b3 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Adaptations for Chrome 96Allan Sandfeld Jensen2022-03-291-1/+2
| | | | | Change-Id: I40039658762b8788a0be57bd186efab71f3e4448 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Adaptations for Chromium 94Allan Sandfeld Jensen2021-12-021-6/+6
| | | | | Change-Id: I9fb8998a3a7762b0aea70993ca231f0bbf4f7761 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Adaptations for Chromium 92Allan Sandfeld Jensen2021-12-021-16/+27
| | | | | Change-Id: I1849c130ca75615802744275f6e4212a755c39b4 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Adaptations for Chromium 91Allan Sandfeld Jensen2021-12-021-2/+2
| | | | | Change-Id: Ie0236697615fd67e4f53df3dca013ce39628cc29 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Get rid of Quick's TestSupport APIPeter Varga2021-07-201-6/+0
| | | | | | | | | | | - Moved TestInputContext and TestInputEvent APIs to tst_qmltests. - Removed loadVisuallyCommitted and use Item.grabToImage to check if page is rendered. - Removed windowCloseRejected signal and use a hidden callback instead. Pick-to: 6.2 Change-Id: Ica6e4c6017426e0171d738a6a59afa557c786698 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Remove outdated QT_VERSION_CHECKsAllan Sandfeld Jensen2021-07-091-4/+0
| | | | | | Pick-to: 6.2 Change-Id: I4c4b78af0bd7da5912b5e0136f9cfdb3c4268a7e Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Adaptations for 90-basedAllan Sandfeld Jensen2021-07-081-16/+11
| | | | | | Pick-to: 6.2 Change-Id: I8402b044d8e12d75e144a00984b856f3de10bffd Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Merge remote-tracking branch 'origin/5.15' into devAllan Sandfeld Jensen2021-05-191-0/+6
|\ | | | | | | | | | | | | Conflicts: src/core/render_widget_host_view_qt.cpp Change-Id: I86113b13bb2d8419e9e9a485197f02b2c7399cd4
| * Add support for Keyboard.getLayoutMap()Peter Varga2021-05-121-0/+6
| | | | | | | | | | | | | | | | | | | | | | Pulls in the following changes: Submodule src/3rdparty 6c7b4ffb..1d3b13e9 > 1d3b13e9634 Make clang to inline load/store atomic calls for YieldSortKey struct > f6730fe81a0 Enable XkbKeyboardLayoutEngine::SetCurrentLayoutByName for Qt Fixes: QTBUG-92971 Change-Id: I0c0cddfe4d3e25fd6d3f7e0764b302c300303172 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix compile warningsBalazs Egedi2021-05-021-1/+0
| | | | | | | | | | | | | | Remove unused code and fix comparison between enum types. Change-Id: I78244462bea1e968a6bdff2db5b7ebad60bd25b4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Adaptations for Chromium 88Allan Sandfeld Jensen2021-04-151-0/+10
| | | | | | | | | | Change-Id: Ie66e95dbb9fbcafe961bb98d5c277f8c32d66b96 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devAllan Sandfeld Jensen2021-03-161-71/+167
|\| | | | | | | Change-Id: I0dd7c64669f4b130047a4a3836f62f7ee5b5f8d9
| * Support zoom-in, zoom-out and cell web cursors on macOSPeter Varga2021-03-081-50/+75
| | | | | | | | | | | | Fixes: QTBUG-53593 Change-Id: Ic330875c3ca3ebe460a166ac815dbf2e052143c2 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| * Show PDF viewer in a guest viewSzabolcs David2021-03-061-16/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the basic support of guest views, implemented based on Chrome. - Embed PDF as a child frame instead of navigating to its extension WebUI. Keep the original URL (pointing to the file) to extend functionality of PDF viewer with URL parameters. - Make RenderWidgetHostInputEventRouter to work and modify most of the event forwarding logic to use that. This way WebEngine supports pages with multiple RenderWidgetHost and guest views can be interactive with user input. [ChangeLog] PDF files are opened as embedded objects, WebEngine will not navigate the content away from the requested file to present it. PDF viewer can accept URL parameters (e.g. to control zooming or fitting to view). Also, PDF viewer is interactive when displayed in a subframe. Task-number: QTBUG-80463 Task-number: QTBUG-86152 Task-number: QTBUG-90712 Change-Id: Ib1591fbd9a594891cdeace8e9dae0d3cc21a9f8e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Do not hide virtual keyboard if the focused node is editablePeter Varga2021-03-051-2/+11
| | | | | | | | | | | | Fixes: QTBUG-91257 Change-Id: Ic303278e2b8871e6bcb3f4f5c5810c8f43371bb8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Set more Display propertiesAllan Sandfeld Jensen2021-03-041-9/+8
| | | | | | | | | | | | Task-number: QTBUG-76006 Change-Id: If2b39b3dc66e250f6a4b333e4d82d0d43f8dedd8 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
| * Fix crashes on BrowserContext destructionMichal Klocek2021-02-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | When destroying WebEngineProile we send notifications like content::BrowserContext::NotifyWillBeDestroyed, this works well with global profile where there is no more render process around, moreover we still pump ui messages before we destroy profile. However, with user profiles we destruct BorwserContext and there can be still RenderProcessHost using it. Flush messages before running BrowserContext destructor. Change-Id: I4d8cda2bc1e2ae3dc0781bf3570a36db7d07223a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devAllan Sandfeld Jensen2021-02-171-0/+2
|\| | | | | | | Change-Id: Idee0142b0e33fdf8ca663f1ef1bcd8b932985043
| * Remove frame metadata observer (RenderWidgetHostViewQt) on destroyKirill Burtsev2021-02-061-0/+2
| | | | | | | | | | Change-Id: I9eac9537b60ba35a53e85c6437bb67b59bf0e35d Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Merge remote-tracking branch 'origin/5.15' into devAllan Sandfeld Jensen2021-01-251-52/+42
|\| | | | | | | | | | | Including update to 87-based Change-Id: I36b6054e00de97ab055d0bc800cff08d0408fac6
| * Enable hangout services extensionPeter Varga2021-01-201-0/+3
| | | | | | | | | | | | | | | | | | | | | | [ChangeLog] Enable hangout services extension and implement its WebRTC desktop capture extension API dependency. Fixes: QTBUG-85731 Task-number: QTBUG-51185 Task-number: QTBUG-61676 Change-Id: I7a659c2b0039243ac8d8c58685716ffc55265e3b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Adaptations for Chromium 87Allan Sandfeld Jensen2021-01-131-17/+16
| | | | | | | | | | Change-Id: Ic4ffd98e02f986dbaf986405360e727c813e696e Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * Adaptations for Chromium 86Allan Sandfeld Jensen2021-01-131-4/+4
| | | | | | | | | | Change-Id: I7e0ebecdbb68cfff0b574c966f3fa80d28680e1c Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * Adaptations for Chromium 85Allan Sandfeld Jensen2021-01-131-26/+13
| | | | | | | | | | Change-Id: I33c1af7c431055d95e0fb540246765cce684de15 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * Adaptations for Chromium 84Allan Sandfeld Jensen2021-01-131-21/+22
| | | | | | | | | | Change-Id: I359805d0bea84147fca6de2e2c7b17b4dcb17bc7 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Merge branch '5.15' into devAllan Sandfeld Jensen2021-01-191-2/+0
|\| | | | | | | | | | | Last commits before 87 update. Change-Id: Id156b0199a8fd354c946cfe604ae8541ba554658
| * Migrate render_view_observer_qt to mojoMichal Klocek2020-12-111-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | Since mojo interface no longer works on render view, but on render frame rename the class to be WebEnginePageHost and WebEnginePageRenderFrame Keep SetBackgroundColor render message, since it is required to things work. Change-Id: I4d6b70dd448926f8ac2d75d2b87f3d490a4cfefb Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devAllan Sandfeld Jensen2020-12-111-1/+5
|\| | | | | | | Change-Id: Id1a1f4ca84697ba18e2604090e3154295fe1858b
| * Fix handling of more than one finger for touch eventKirill Burtsev2020-12-021-27/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change addresses following wrong assumptions implemented earlier: * fix assert condition for custom MotionEventQt: pointer index is only reserved only for two distinct events POINTER_UP and POINTER_DOWN, which represent one single non first/last pointer up and down event. * MotionEvent API doesn't support delivering multiple touch point changes at once, hence code should send every touch point's up/down step by step to not confuse gesture detection classes in chromimum (ultimately fixing arising asserts which old code was triggering before). * MotionEvent shouldn't contain more touch points then were already forwarded or reported released, hence every step should contain only part of all touch points received in handleTouchEvent. Fixes: QTBUG-86389 Change-Id: I62275dc295494f88a6e44f36fe72f5f8227e37d4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Touch handling: fix mapped ids cleanup for TouchCancel eventKirill Burtsev2020-11-281-24/+26
| | | | | | | | | | | | | | | | | | | | TouchCancel may come with empty points list, so previous one (from TouchBegin) is used. Therefore it should be cleaned independently on leaving the scope. Thus unify common code cleanup in the end of handleTouchEvent and ensure TouchCancel's ids remove from mapping. Change-Id: I1ef2baa5f920fa9096ddac2ddd5d4ac70ab6e218 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Touch handling: provide id mapping without modifying TouchPoint instanceKirill Burtsev2020-11-281-38/+34
| | | | | | | | | | | | | | | | | | This api was made private in dev 4e400369c0 and currently has side effects, which lead to touch malfunction and test failures. Task-number: QTBUG-88001 Change-Id: Ie84e770a229f58704363448df116aedbc3e8eb82 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix rare duplicate ids forming in touch point id's mappingKirill Burtsev2020-11-181-1/+7
| | | | | | | | | | | | | | | | | | | | | | QTouchEvent may contain touch point release and press simultaneously in this particular order. Hence if mapping for released point is deleted before id is chosen for pressed one, output transformed list may contain points with same ids. Since new touch points delivered before released one, this will lead to assert in chromium about duplicate ids. Change-Id: I209d7d8c752c7bd74d2580ef65478c92e54cb099 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devAllan Sandfeld Jensen2020-09-141-101/+118
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/certificate_error_controller.cpp src/core/certificate_error_controller.h src/core/compositor/compositor.cpp src/core/compositor/compositor.h src/core/compositor/display_gl_output_surface.cpp src/core/content_browser_client_qt.cpp src/core/core_chromium.pri src/core/delegated_frame_host_client_qt.cpp src/core/ozone/gl_share_context_qt.h src/core/ozone/surface_factory_qt.cpp src/core/permission_manager_qt.cpp src/core/render_widget_host_view_qt.cpp src/core/render_widget_host_view_qt.h src/core/web_engine_context.cpp src/core/web_engine_settings.cpp src/core/web_event_factory.cpp tests/auto/widgets/qwebenginedownloadrequest/tst_qwebenginedownloadrequest.cpp Change-Id: Ice14c3c350b139e800c7c7011b7cef1fc7010669
| * Adaptations for Chromium 83Allan Sandfeld Jensen2020-09-091-82/+92
| | | | | | | | | | Change-Id: I63ed851426b18623d549ceaf87f1b6eeec527966 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>