summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Doc: Add WebEngineDriver source directory to documentation build6.5Topi Reinio2025-03-171-0/+1
| | | | | | | | | | | | | | | | While there is no documentation sources to parse there, the Chromium code attribution script uses it as the output directory for the generated 3rd party licenses. Add the directory to make QDoc parse the generated output. Fixes: QTBUG-133495 Change-Id: I06643163e1b7791664afcfead90a91b65d3039af Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Moss Heim <moss.heim@qt.io> (cherry picked from commit d34d887f271df107ff0ec668cf85de149feeae6d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 706e582b2016090b68fe6b4ebdc6904dd92ec628) (cherry picked from commit 596d1125105842250396de35f683c5ef77e1fe96)
* Set rtc_use_h264 to true againAllan Sandfeld Jensen2025-02-101-1/+1
| | | | | | | | | | | | | Enables H264 on Windows with proprietary codecs. Task-number: QTBUG-117478 Change-Id: Ie46fcce555fac751e7eb5e90c0e079462dcadc0c Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Kaloyan Chehlarski <kaloyan.chehlarski@qt.io> (cherry picked from commit 4a43f458ee9971aca82c1b28586be58f88ce8a8b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 073857250cc13c6627bb80dcba86d77d00345155) (cherry picked from commit 24ee881290f8d1fc3292f14f726de34d2d81217e)
* Prevent the white flashes during loadingAnu Aliyas2025-02-092-0/+7
| | | | | | | | | | | | | | | | | | It was recommended to set background color based on the web content to prevent the white flashes that may appear during load. However, it was not working, as the render widget host view may get created while load a new URL depending upon the PageTransition parameter value. Applied background color to the newly created the render widget host view to resolve the issue. This should be done after the frame is bound to the view, else might lead to a DCHECK failure when dealing with transparent window Fixes: QTBUG-112013 Change-Id: I200d3838b1c0628c2950e05e717215f149c11b6a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit dcc464b14c2c049a4b4d888ced0bb1a3d4ba3702) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 361091327b836f451aa028d1e9124b4ff46e6774)
* Doc: Remove left-over textAndreas Eliasson2025-01-311-1/+1
| | | | | | | | | | | | The example that this text used to refer to has been removed from Qt 6. Fixes: QTBUG-131896 Change-Id: I4abd12028880267bbc7d8eb707841af30b04e84f Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 5ff1c88091befd0d9c3ffc1e6ecdd71ff709c0aa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit b3fee7ef9aa46a56ad26b1fa4ee036dd568a03fa) (cherry picked from commit 460809c089cfd5dbe0f12ca16f85aa89e928dbcb)
* Document Microsoft CRT version runtime requirementMichael Brüning2024-08-131-0/+2
| | | | | | | | | | Fixes: QTBUG-125300 Change-Id: Idd9e61b7d081c09e32f44b79c9e49ead982acbc7 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> (cherry picked from commit 112efa88b70a1503fe781035e07e96f5af913539) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit b282e4b03709dbfc3b4abab722173fc51d8579e1) (cherry picked from commit d087c3d95d1d2c549c18fef35921ee2a314a177f)
* Docs: fix the QML docs for the PdfSelection::text propertyAlexei Cazacov2024-06-281-3/+4
| | | | | | | | | | | | | | | | | The QML docs described the "string" property, but the actual property name is "text". Add a selectAll() shortcut to the withdoc.qml manual test while we're at it, for easier checking of behavior. Fixes: QTBUG-126138 Pick-to: 6.2 Change-Id: Ieab6188661d4e9b1c1f4dc4faaf355b94bdc3f4c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 1caa4fd26b25d97507e916780e34e70720ceb0b2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 7338266ed2fc40941deef18f3c5c04d27699f695) (cherry picked from commit ee1826b8fc2d55d3c5b05a29ab488cdc7f4d9b24)
* Add the missing _p suffix to the private header files in WebEngineQuick/WidgetsAlexey Edelev2024-06-2713-13/+57
| | | | | | | | | Change-Id: I4b64147cb70c3994ed054374c9047fe9274da777 Reviewed-by: Moss Heim <moss.heim@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit df6f68cb7af51c2141f7b263ed89a3e9a3f46379) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit ed407ad9ddd4899f4d76f8bd81ca077934b6f671)
* Reset wheel_widget when forwarding unhandled mouse eventAnu Aliyas2024-06-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | If QApplicationPrivate::wheel_widget is present all wheel events are forwarded to the wheel widget. If the wheel widget doesn't handle the event, it is forwarded to the parent widget. With QtWebEngine in the picture, all the mouse wheel events are forwarded to Chromium. If Chromium doesn't handle the event, QtWebEngine will send the unhandled mouse wheel event to the parent using qApp->sendEvent(). This operation is performed asynchronously. There is no immediate way to determine whether QtWebEngine is going to handle the event. If QApplicationPrivate::wheel_widget is not null, the mouse wheel handling logic will forward the unhandled event back to the wheel_widget which is QtWebEngine in this case leading to QtWebEngine grabbing all mouse wheel events. Also there is no way to get proper phase information from the Chromium, and the unhandled events are forwarded with Qt::NoScrollPhase. QApplicationPrivate::wheel_widget is set to nullptr to avoid the crash. Fixes: QTBUG-121359 Change-Id: I01fef5605c264fdc97df041d57dc3589aa17c49f Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 9f247e3067113bc47b5e2635bc0b4dc69f8289f3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 6794e5bdacc0324aea25b323268e126ab634eafc)
* Clarify Chromium licensing and implications for LTSKai Köhne2024-05-161-12/+41
| | | | | | | | | | | Pick-to: 6.2 Fixes: QTBUG-117930 Change-Id: If4c13da852929f71d0a71f2d4d7d2d0ab3f0af21 Reviewed-by: Tuukka Turunen <tuukka.turunen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 2ac02b7c89bafdc40f4dd17b95102d1a1c898c1b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit daaef50beba01f0562621e61de87f243ccdc69c3)
* Change qt.pdf.links log category to qt.pdf.wigets.links in pdfwidgetsShawn Rutledge2024-05-101-3/+3
| | | | | | | | | | | | | | | We use the qt.pdf.links logging category in the PDF library. If we redefine qLcLink in PdfWidgets, we get a static link error; if we redeclare it, we get a dynamic link error. So it seems that we cannot reuse logging categories across modules. Fixes: QTBUG-124506 Change-Id: I591f2e3af2162274c8092397cadf74ddbf687e9d Reviewed-by: Moss Heim <moss.heim@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit dde69e62978f136ad789f44009c6d959a9289224) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit c7a20c54da09a0f7e6f5fdabde9776b8a2272e1d)
* Fix error message when dictionary not foundMichal Klocek2024-04-131-0/+6
| | | | | | | | | | | | When there is no existing candidate still return something so error message can be thrown. Change-Id: Iab71e089fec8ab88e36395474b6e5d4ecfa1ff4c Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit d86ddb74877342d82c36cb9f47cccb53bf339e23) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 49bdd5486dd962fa3bc0c7cba30737c36ddfdff0) (cherry picked from commit 4e76b8dee87b94a693b0ad118785e2bca018573e)
* Show guest WebContents in DevTools if possibleSzabolcs David2024-04-133-2/+11
| | | | | | | | | | | | | | | | | | | | | | | Chrome's DevTools has different behavior for PDF content: - If it was opened for the PDF viewer, it closes itself when the guest view has gone (e.g. by navigating away), but it shows the inner content of the plugin. - If it was opened for another site and then navigated to the PDF plugin it won't show the inner content, but the embedding HTML of the parent and it allows navigating away from the plugin. Make our inspector match the behavior of Chrome and allow DevTools to look into the plugin. It helps debugging PDF viewer related issues. Change-Id: I218d4fcf47d6b1f0101fa1d7f36758e04a1dd7b0 Reviewed-by: Anu Aliyas <anu.aliyas@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 6acf981aae2165cde6829f309f3792fc34852fd2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit c503b50b189c7446b91edfede083100b206370fb) (cherry picked from commit 3daf7aed13281bc5df72cdcc67ab0b066f05dae1) Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu>
* Clarify meaning of baseUrl argument in setContentMoss Heim2024-04-133-7/+6
| | | | | | | | | | | | | The previous wording made it sound as if baseUrl must always be non-empty, however this only affects external content relative URLs. Fixes: QTBUG-90927 Change-Id: I0dff3368dec60b5734c1b12bbfe3f4aefc240e14 Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 2d52d1544e85b8bd15ea23c42872961b9f9249ec) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 48e08af384ff42f08106449a07e272195123cc5f) (cherry picked from commit 1826c6d6d4c708fae14da64d566f303461de5b30)
* Fix for view displaying blank content with transparent backgroundAnu Aliyas2024-04-131-1/+3
| | | | | | | | | | | | | | | | | | | | | For transparent background color, QtWebEngine will set the attribute Qt::WA_AlwaysStackOnTop to true. This change necessitates triggering an update on the top-level window. The code has been adjusted to invoke an update on the parent widget if one is present. Additionally, update is disabled while widget attributes are being updated, and re-enabled once all attributes are properly set. This prevents unnecessary updates and ensures the widget updates only after all values are set. Fixes: QTBUG-120273 Fixes: QTBUG-121227 Change-Id: Id2a103a59e9dfeb98ac2245ec274360e3c65f239 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Moss Heim <moss.heim@qt.io> (cherry picked from commit 5c73b7f5719b61aad1d7709fee3f810732bb3fba) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 97394380fdd20a88b6e8fe4308d7a56134963d83) (cherry picked from commit 4cb86b16d0914369c99c35c8bd6acbb0ef74fd2f) Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Correct the dictionary path for spell checking on macOSAnu Aliyas2024-04-091-1/+1
| | | | | | | | | | | | | | | The Spellchecker built using QtCreator didn't work because it didn't copy dictionary files to the application bundle's resource folder. To address this, used 'APPLE' instead of 'MACOS' as the value, since 'MACOS' was false when compiling in QtCreator Fixes: QTBUG-122997 Change-Id: I86a45b3c3622239873a7745e7b1fed5efbf696d8 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 2a85e96a685b36501dee35e8d70522be239d006d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit e1430db3a32c30b3f6c03f26f34b4d86bbbc48b5) (cherry picked from commit b0173f804599735ddae8c8ac699bd6e1ebd5893d)
* Fix pure wayland builds with vaapiMichal Klocek2024-04-092-5/+10
| | | | | | | | | | | | | | | | Add missing build flag checks. This amends 1b7aaf1c7d98482cd6dc3d80aa0140fe9dd2c7d3. Task-number: QTBUG-118035 Fixes: QTBUG-121589 Change-Id: I7dc6aae9898133e893b544e392076dc421a51f17 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> (cherry picked from commit fd1946fc90ec75582aa64bcf8f89940e2fc82120) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit c732837107e3d4fb172ce0a7d4cf4831b312922e) (cherry picked from commit 9ec316d79aac27af073bfa31c950012604bdbf9f) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Set minimum required VA-API version to 1.14Peter Varga2024-04-091-1/+1
| | | | | | | | | | | | | | | | Chromium uses av1 encode DDI which has been added to VA-API in version 1.14. Older versions break the build. Note that the pkg-config returns the VA-API version (1.14) instead of the libva version (2.14). Change-Id: I4f206305fd8d9e8bd67385fbd3d3f267cae9b67d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 9064c51ae98d339ec89c1ccc0e7c06f9485fecb7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit bebb06a890fbb4066320ffa2487bd33e39ea044a) (cherry picked from commit dd541669ed53fffcdb0552019388080a4e594bd0) Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Fix outdated qwebenginesettings docsMichal Klocek2024-04-091-2/+2
| | | | | | | | | | | | | Old webkit's QWebSettings::setUserStyleSheetUrl is not ported to QWebEngineSettings, therefore do not mention it. Change-Id: Ibbc804d1c58657a1d641935a2341132cc723cd82 Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 084e6675d7d678b3850ba992dae57f8391aca911) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 198a4334129f5754eed413134272eeb76f15435c) (cherry picked from commit edfef09c0f99996cff4e07c948ea848182e6ff2a) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix enable_plugins gn parameter useMichal Klocek2024-04-091-1/+6
| | | | | | | | | | | | | | | | | | | In 106-based adaptations enable_plugins use was changed and it means enabling support for handing plugins, but does not include support for loading plugins using specific technology like Pepper. Moreover, enable_pdf requires plugin support, but it does not require Pepper support (enable_ppapi). Fixes: QTBUG-122137 Change-Id: I75cf611e54d0a47e2b96e7831c1fe1d20b6254b5 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit d66a5433e08bce11f905b14c8a03f3a5e1db2b9a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 9dc04234d372c43300f013444a56fee30999a83b) (cherry picked from commit 7d6b43b7bc05ec17111836cc890f6692888f0c1c)
* Retain focus while loading URLs into the pageAnu Aliyas2024-04-091-0/+3
| | | | | | | | | | | | | | | | | | While loading URLs, QtWebEngine will remove the old widget from the layout and then add the new widget. If the old widget is the focused widget, while deleting the widget, it will clear its focus, thereby causing QtWebEngine to lose focus. Therefore, if the old widget has focus, set focus to the new widget. Fixes: QTBUG-122153 Change-Id: I095a654ae80ad8089758eb785d4186a9708064a3 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 0a8962b40de96ca87663938427a410ce65f3a8a2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit ff9fd8806248973f6fdf92190f11b11af0319437) (cherry picked from commit d452147ca742ac77f22efd2aa1653a41baad88fe) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Keep page's background color when loading new URLsAnu Aliyas2024-04-091-0/+3
| | | | | | | | | | | | | | | | | Whenever a new URL is loaded, the background color is reset to white, even if the user has explicitly set the background color to a different value. Therefore, it needs to be reapplied when a new render widget is created. Fixes: QTBUG-112013 Fixes: QTBUG-120926 Change-Id: I6663008ee038f30ea6f5df8ab7d8ce7356b152a1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 85bfaa5274b5d47437d6e0634746f70a6646bd4e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 603c969421b98a9a285128c589b2c32fded21033) (cherry picked from commit 798574d834610a80009192631e6720a00b57968d) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix misleading warningAllan Sandfeld Jensen2024-04-091-3/+6
| | | | | | | | | | | | | This is only relevant for OpenGL or backends that needs to be forced to OpenGL Change-Id: Idd96e41c2ca2a87d1dd916e2fadf8945ee25805f Fixes: QTBUG-99446 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> (cherry picked from commit aeea3674f6aa364ec1b4ee17a2e2c8c03127072b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit a057682017e45cb470581a066c0f3ed616ccb8be) (cherry picked from commit 423f3a98d54c4a722df8078dc480be5eab30e13e)
* Expand helper process stack to 8MB on WindowsKaloyan Chehlarski2024-04-091-1/+1
| | | | | | | | | | | | | | | | | | | Chromium on Windows is built with a linker flag that ensures an initial stack size of 8MB, whereas a QtWebEngine build never sets one. The result is that on Windows the helper process only gets the default 1MB stack, which can cause stack overflows in pages with nested elements (see issue QTBUG-120420). This change makes sure the relevant linker flag is added when a Windows build is detected, and the stack size matches the one in Chromium. Task-number: QTBUG-120420 Change-Id: I42ff397f1b90c4455188b5711d5b3e9c1780db23 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit e604b302882d4ca4e8b6d311df31d4e958c9073c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit f153e8e695c267137130752bfde722a7e9467910) (cherry picked from commit 07734b927d912f88164001422aa27a507db7be6d) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Minor. Set autodetect for v8 snapshots for cross compilationMichal Klocek2024-04-091-1/+1
| | | | | | | | | | | | | | We do not compile v8 snapshots on ci as this doubles amount of tasks and ends in much longer compile times. However, they can be enabled otherwise. Change-Id: Ie59492af2bf01cdecf9525e708c642249a1ae681 Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 6518a973b6c6644403a7d3a2f3d5eacfe0749f72) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 8cdca960d672b56fd3df13075ca15774f1841920) (cherry picked from commit b469cb9394d2c211d71295d2358ba3bc6057ce2c) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Convert "page" <-> "view" coordinates for PdfSelection and LinkModelShawn Rutledge2024-03-273-39/+70
| | | | | | | | | | | | | | | | | | | Use FPDF_PageToDevice() rather than subtracting from page height, in all the remaining places where we were doing that. Also use FPDF_DeviceToPage() to convert coordinates coming from the view, for hit-testing links and for selecting ranges of text. Mark the private utility functions that we're modifying const while we're at it. Task-number: QTBUG-100630 Fixes: QTBUG-106565 Change-Id: Ide4f73b80888a0e08381c6e4995f69ebeaa2d12f Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit b78c78349d786b294ee0845717ad5db38ae2565a) Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 5642f33e17aa82fd361b972cd8ac88ba83604273) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 61a65ca969aca620da334de4af14616433ee66a9)
* Convert search result bounds to account for PDF transformsShawn Rutledge2024-03-263-5/+26
| | | | | | | | | | | | | | | | | | As a drive-by, remove unneeded includes. QPdfDocumentPrivate::convertPageRect() will be useful for fixing related bugs. If PDF files can contain arbitrary transforms, and "page coordinates" returned from pdfium functions are not already converted, then it's never ok to just subtract from page height to invert the y's. Fixes: QTBUG-120764 Change-Id: Iffce528c0c5e66c499e7147078b7b8718f7610ce Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit fccbc33d95c17b0911fd4cbd97998acfc8e6320f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 541b00830fdd12f91a9da5426536abc4787f4859) (cherry picked from commit 496b935279e3dfd94b3c4bf5e01bb70ef91a3138)
* Update ChromiumMichael Brüning2024-03-152-1/+1
| | | | | | | | | | | | | | | | | | | | | Submodule src/3rdparty 707f4e7c..326fa478: * [Backport] CVE-2024-25062 / Security bug 325094430 * [Backport] CVE-2024-1671: Inappropriate implementation in Site Isolation (2/2) * [Backport] CVE-2024-1671: Inappropriate implementation in Site Isolation (1/2) * [Backport] CVE-2024-1676: Inappropriate implementation in Navigation * [Backport] CVE-2024-1672: Inappropriate implementation in Content Security Policy. * [Backport] CVE-2024-1670: Use after free in Mojo * [Backport] Security bug 1504473 / 40945008 * [Backport] Security bug 1508758 / 41481379 * [Backport] Security bug 1518994 * Do not assert when ozone uses qt platform with vaapi Fixes: QTBUG-122931 Change-Id: I6b9d3a8a4272e24fe818dc048113b170a3b191b5 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 9976aa426166012ede784b5806318ad296dfb331) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 33ee3e6993dfec635cb0e9609a98f4ffd8f23d27)
* Update ChromiumMichael Brüning2024-02-132-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Submodule src/3rdparty e257d651..707f4e7c: * [Backport] CVE-2024-1284: Use after free in Mojo * [Backport] CVE-2024-1283: Heap buffer overflow in Skia * [Backport] CVE-2024-1059: Use after free in WebRTC * Fixup: [Backport] Security bug 1407197 * [Backport] Use raw strings for regexps in Python code. * [Backport] CVE-2024-1077: Use after free in Network * [Backport] CVE-2024-1060: Use after free in Canvas * [Backport] Security bug 1519980 * FIXUP: Fix build with VS Toolset 17.8 * Fix build with VS Toolset 17.8 * Remove unused python import * [Backport] Update vendored copy of six to 1.16.0. Fixes: QTBUG-121845 Fixes: QTBUG-122095 Change-Id: Ice00b6537b19d2a7af7787b5f2989283c89130b7 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 8b521bfccd0ed6fe084bc0bf5b41ec04c31dc83b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 278edc41fbacd169b5ffce7cb7c91fe9a8355fe6)
* Merge remote-tracking branch 'origin/6.6' into 6.5Michael Brüning2024-02-0224-121/+218
|\ | | | | | | Change-Id: I149f99b0672be030d5d7c5cf6763cd2d0cf4852c
| * Update ChromiumMichael Brüning2024-02-022-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Submodule src/3rdparty 7b40abeb..e257d651: * [Backport] Security bug 1407197 (2/2) * [Backport] Security bug 1407197 (1/2) * [Backport] CVE-2024-0810: Insufficient policy enforcement in DevTools * [Backport] Security bug 1511389 (2/2) * [Backport] Dependency for security bug 1511389 (1/1) * [Backport] Security bug 1511389 (1/2) * [Backport] CVE-2024-0807: Use after free in WebAudio * [Backport] CVE-2024-0808: Integer underflow in WebUI Task-number: QTBUG-121685 Change-Id: Ie8e7a70265b142b65cea5bd89c9afa45fb0dec6c Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 935caecbbff5ac79d2c43d6bdcd81fe7d83baedf)
| * QPdfIOHandler: Ensure QPdfDocument still exists before renderingShawn Rutledge2024-02-022-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a PDF-viewing application is unceremoniously exited while QQuickPixmapReader::processJobs() still has PDF rendering jobs queued up, it could be that the shared QPdfDocument instance is deleted just as QPdfIOHandler::read() starts the rendering. Use a QPointer to avoid that. Fixes: QTBUG-121502 Pick-to: 6.5 Change-Id: I5d0674ca77ab5015b710df49b3842064e65d4adc Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit ed49163c8fef019be18475b86694263801c3a8ea) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 77d2e9ad33a12dbc3e8ddc3ce40498b28029147f)
| * QPdfView: use per-page scale factors to render search result rectanglesShawn Rutledge2024-02-022-28/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In FitToWidth and FitInView zoomModes, each page could potentially be a different size; so QPdfViewPrivate::calculateDocumentLayout() loops over all pages, calculating each pageSize and offset on the fly. m_zoomFactor doesn't get updated; but QPdfViewPrivate::updateDocumentLayout() stores the per-page zoom factors in m_documentLayout.pageGeometryAndScale. screenScaleTransform() takes the page index as an argument, looks up the per-page scale factor in those zoom modes, and QPdfView::paintEvent() uses the per-page transform to paint the rectangles. Pick-to: 6.5 Task-number: QTBUG-120764 Change-Id: I86308c8963ffadd2fdb6f36cf9f4696f75f550ed Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit 2b96bbb922c1500b8d3b12cf2eb3052ded41c5c6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 427c1e114ab2969bfb51b24d0401f7e0286b5873)
| * Delay PdfMultiPageView.goTo[Page|Location] if called too earlyShawn Rutledge2024-01-281-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PdfMultiPageView does not expose a property alias to TableView.rows; we could call it pageCount, but we don't want to mislead users into thinking that the view is the "source of truth" for how many pages it's going to show. The document's pageCount is populated earlier, and that's a problem only in such a case when it's too early to ask the view to go to a particular page. So we work around it in the view by treating these goTo functions as requests to be satisfied as soon as it becomes possible. Fixes: QTBUG-119416 Pick-to: 6.5 Change-Id: Ie2377fe6f2983b72e871b1be2afe4d0878f60841 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit e9a5b6e514996c059d52a857a5aef624afb80a0e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit d63c4dacd2b4ffa2608965ed7e49303b75c722ad) Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Fix discontinuity with successive pinch-zoom in PdfMultiPageViewShawn Rutledge2024-01-271-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pinch.persistentScale is settable since 6.5 (qtdeclarative a432970b258edb9ff041d221b2155df30cad4799): we need that to tell PinchHandler to start over from 1 after we have also set the rendered scale back to 1, because PinchHandler does not read the scale property for itself. This cherry-pick includes 48ebac59b1ec5bbafa1c64adbdbc44b0cf3f302a to avoid a crash on exit by waiting for the rendering to be done, and a4e64baef027fb407b8c1491c444ed58edd15529 to disable touch compression. Fixes: QTBUG-115502 Task-number: QTBUG-120245 Task-number: QTBUG-121502 Fixes: QTBUG-121564 Pick-to: 6.5 Change-Id: I21951c447bf33e5942b6a1635488d5474ec8f293 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit c0524da14d92a957b4607fb5867dba5d23eea6d9) Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 8c27ae33f80440d20f578fa404c454c8d7bfdf19) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
| * Correct PrintedPageSizeId to match QPageSize::PageSizeIdMichael Brüning2024-01-243-9/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | With Qt 6, QPageSize::PageSizeId enum was cleaned up and some values were reordered, but the WebEngineQuick part was not changed accordingly. Pick-to: 6.5 Fixes: QTBUG-120218 Change-Id: I7e4c419750d30a64193e68b0b217ebbccce07d87 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 199730bd41219c5484fb1c4c61b637ab9ceec0c4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 8f017c2d9d015b9d72a7f1f36e53747bad6c3bfa)
| * Fix high-dpi scaling in PdfScrollablePageViewShawn Rutledge2024-01-241-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Amends 85f82185ef5102a2dbe3b2e437b9723e1652ce57 In PdfScrollablePageView.qml, a property like property size pagePointSize: document.pagePointSize(pageNavigator.currentPage) would get evaluated too early (QPdfDocument::pagePointSize() returns a default-constructed QSize if d->doc is still null). We need to call pagePointSize() directly in bindings that need it, so that the function will be called again each time some other binding dependency changes, to get the size of the current page in the current document. Perhaps a binding to the result of a function call does not get invalidated when the function argument changes; or perhaps behavior changed now that the QML files tend to be compiled rather than runtime-interpreted resources. We also need PdfPageImage's width and height to be bound (as they are in PdfMultiPageView.qml), to avoid automatically scaling up to sourceSize. So now we get high-dpi page images again in the single-page example. Task-number: QTBUG-86948 Pick-to: 6.5 Change-Id: I44e8df15c18bd0b752dccc899028e7e7900f6ffb Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 3093ddfa8fb22db9295bc76a07207e6da0a3e995) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit bb514314f924e7f94ac48f4d2283a254cff4cd83)
| * Fix cursor position during compositionAnu Aliyas2024-01-211-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 Change-Id: I9adb7a9bea9493457a1d9d4b32338cdba30920a1 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> (cherry picked from commit c9550388b9ab1d82454d0c59eaaf7e640d83d750) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 266c9a5605e05166c0b6e9113e19595856149bd2)
| * Fix printing when page ranges are specifiedSzabolcs David2024-01-211-31/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Page ranges are applied at the PDF generation phase and it's incorrect to do it again in PrinterWorker. Simplify it to print all available pages. Fixes: QTBUG-119991 Change-Id: Iaaf435ba2a93ea4480dc1d2f5500844138ea1b53 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit ad26c851700de5ee0962a944d6fc02b58004de1a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 2463c13ae64701e7c18495eb7dd63e0dc7a129b3)
| * Fix compilation error with -no-feature-accessibility optionAnu Aliyas2024-01-213-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - At present, there is no option to disable accessibility in Chromium during build time. - Added the missing definition for BrowserAccessibility::Create() to resolve the compilation issue. - This approach is similar to the BrowserAccessibilityManager::Create() function. Fixes: QTBUG-119789 Pick-to: 6.5 Change-Id: I87a0a3653fa18aa3d32d5620a18f89e9403c92ab Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 39e437f0bc990cf292defff0d77790d27b31df32) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 6fc5eff5cef36ae86704a5f2e05b58c1f5e82a62)
| * Update ChromiumMichael Brüning2024-01-192-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Submodule src/3rdparty 38bef0c..7b40abeb: * [Backport] Security bug 1506535 * [Backport] CVE-2024-0518: Type Confusion in V8 * [Backport] CVE-2024-0519: Out of bounds memory access in V8 * Fix compilation without webrtc * Speculative fix for jumbo builds on windows Fixes: QTBUG-121229 Change-Id: I106c80206bc84c592d2fe1df770c391883d587df Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix required version for core and core in host projectMichal Klocek2024-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | During compile or cross compilation against core qt (or core qt in host) with lower version. As we 'support' compiling against latest LTS so currently 6.5 Change-Id: I62596e73fcd7265a85edf4048f82e1a060615e7f Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 8eba10d3b7db7e456f736417f90f84d460ead4f5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit a1b0579555d91f34f452c4b94fe77f71e9448b7b)
| * Speculative fix for missing licenses for qtpdf on doc.qt.ioMichal Klocek2024-01-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When executing 'ninja docs' documentation is generated locally with code attributions for qtwebengine and qtpdf, however it is missing on doc.qt.io in case of qtpdf. Make 'ninja prepare_docs' target to already generate pdf_attributions, hopefully it fixes the issue as it is unknown how those docs are generated in the end, moreover this is the only difference between qtwebengine and qpdf doc target setup. This amends 98c84d8d7a4ef4a308b1a75f90ff075135995c60 Fixes: QTBUG-120663 Change-Id: Id1b371209ead987460fabb53c3bc35070dbedb35 Reviewed-by: Kai Köhne <kai.koehne@qt.io> (cherry picked from commit bd33e00c54bdfc5ff3c25eefe7a13638d189369e) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Update ChromiumMichael Brüning2024-01-172-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Submodule src/3rdparty 028cbdb7..38bef0cb: * FIXUP: FIXUP Do not include xproto when no x11 * [Backport] Security bug 1511689 * Fixup: [Backport] Security bug 1488199 * [Backport] CVE-2024-0222: Use after free in ANGLE * [Backport] CVE-2024-0223: Heap buffer overflow in ANGLE (3/3) * [Backport] CVE-2024-0223: Heap buffer overflow in ANGLE (2/3) * [Backport] CVE-2024-0223: Heap buffer overflow in ANGLE (1/3) * [Backport] CVE-2024-0224: Use after free in WebAudio * [Backport] CVE-2024-0225: Use after free in WebGPU * [Backport] CVE-2024-0333: Insufficient data validation in Extensions * [Backport] CVE-2023-7024: Heap buffer overflow in WebRTC * FIXUP: Fix compilation with system ICU * [Backport] Replace imp.load_source with importlib equivalent. * Do not include xproto when no x11 * [Backport] Security bug 1488199 (3/3) * [Backport] Security bug 1488199 (2/3) * [Backport] Security bug 1488199 (1/3) * Bump V8_PATCH_LEVEL * [Backport] Security bug 1505632 * [Backport] Security bug 1506726 * [Backport] CVE-2023-6706: Use after free in FedCM * [Backport] CVE-2023-6705: Use after free in WebRTC * [Backport] CVE-2023-6703: Use after free in Blink * [Backport] CVE-2023-6702: Type Confusion in V8 * FIXUP: Add missing pkg_config calls for system libs * Add missing pkg_config calls for system libs * [Backport] Security bug 1485266 * [Backport] CVE-2023-6510: Use after free in Media Capture Fixes: QTBUG-119857 Fixes: QTBUG-121003 Fixes: QTBUG-121004 Fixes: QTBUG-121005 Fixes: QTBUG-121006 Change-Id: Ic71d208d6f4cd285a60092936fb6a4ffc4620e6f Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Fix text formatting in JS DialogsMartin Negyokru2024-01-125-9/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use plain text instead of escaped html to match other browsers behavior. Also set the text format for qml dialogs. Fixes: QTBUG-119245 Task-number: QTBUG-83338 Change-Id: Icb2c9fd21f27487418835372d6afda96a6812cc3 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 3fcf62c0c19e89abbd154bc5f1fc8d84099aa58e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit b9c8cfba0154a260ec618df53c3d8e030a544662)
| * Fix printing from PDF pluginSzabolcs David2024-01-128-58/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the plugin finder logic everywhere to match with Chrome. This comes with a small cleanup: collect PDF-related helper functions scattered around WebEngine in one pdf_util_qt implementation. Add auto test to catch this recurring issue earlier. Task-number: QTBUG-119878 Change-Id: I03b2bd62bebf5b38afc572e0629db106d024e89d Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit e09cf6e7a1f582d06f86ff2c166b7c2269fd4b47) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit a1ffdacd23c13d97793b87f098e3ec7ab8ff1de6) Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * Remove DOH debug messageSzabolcs David2024-01-121-7/+0
| | | | | | | | | | | | | | | | Change-Id: I79ef6363772c484989dadda76ce18fb285a6ea64 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 738fa8b626b1155cae101d3de7f6e6fd7331c1f1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 59e9b1a5812d4e95742257237a369c714d388493)
| * Fix mac build with x86_64hMichal Klocek2024-01-123-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We do not not really support x86_64h on mac with gn, so in case of "-DCMAKE_OSX_ARCHITECTURES=x86_64h" do x86_64 build anyway. Make arch test most strict as we did not really control the outcome. Add some architectures names as they were missing. Fix leaking cpu setting. Clean up toolchain setup which differs based on target os (win,linux,mac,ios,android). Note for some platforms we generate toolchain, for some we used gn provided ones. Fixes: QTBUG-118120 Change-Id: Ia6fa8a59f55c1ebf37c10e469172520505214d38 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 3e4bc31ade660878a5040cc39e66687476524774) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 79febc044da9663d9cf03fdd1b9012e47df65f14)
| * Clean up and fix typos in cmake filesPeter Varga2024-01-123-4/+4
| | | | | | | | | | | | | | | | Change-Id: I68e46ec382c4c63c106c545cf6815777954a6afc Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit e6e82804a009394fdccee4e5f37195c9383f2d5a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 9fd9cec7056116688eb924ab8c06f26573dbd232)
* | QPdfIOHandler: Ensure QPdfDocument still exists before renderingShawn Rutledge2024-02-022-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a PDF-viewing application is unceremoniously exited while QQuickPixmapReader::processJobs() still has PDF rendering jobs queued up, it could be that the shared QPdfDocument instance is deleted just as QPdfIOHandler::read() starts the rendering. Use a QPointer to avoid that. Fixes: QTBUG-121502 Change-Id: I5d0674ca77ab5015b710df49b3842064e65d4adc Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit ed49163c8fef019be18475b86694263801c3a8ea) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 77d2e9ad33a12dbc3e8ddc3ce40498b28029147f) (cherry picked from commit fb8b5abb4cf6859323e4eef9e3c00b301d8ce7d0)
* | QPdfView: use per-page scale factors to render search result rectanglesShawn Rutledge2024-02-022-28/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In FitToWidth and FitInView zoomModes, each page could potentially be a different size; so QPdfViewPrivate::calculateDocumentLayout() loops over all pages, calculating each pageSize and offset on the fly. m_zoomFactor doesn't get updated; but QPdfViewPrivate::updateDocumentLayout() stores the per-page zoom factors in m_documentLayout.pageGeometryAndScale. screenScaleTransform() takes the page index as an argument, looks up the per-page scale factor in those zoom modes, and QPdfView::paintEvent() uses the per-page transform to paint the rectangles. Task-number: QTBUG-120764 Change-Id: I86308c8963ffadd2fdb6f36cf9f4696f75f550ed Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit 2b96bbb922c1500b8d3b12cf2eb3052ded41c5c6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 427c1e114ab2969bfb51b24d0401f7e0286b5873) (cherry picked from commit 57774a5eba87bc1ba181effefe9dc614f2d3330c)