| Commit message (Collapse) | Author | Age | Files | Lines |
---|
||||||||||||||| | In some extreme cases we can return a finite float, and then turn it infinite when multiplying it to calculate the index positions. Avoid the whole thing by clamping to a brightness of +-32768 times the white point standard, which is well within current HDR standards. Credit to OSS-Fuzz which detected the assert. Pick-to: 6.9 6.8 Change-Id: If007732a8d59ea27514f17674d318a099a057281 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> Reviewed-by: Robert Löhning <robert.loehning@qt.io> |
||||||||||||| | Missing 'e'. QHttp2Connection is private API so the API can be changed. No known external users. Pick-to: 6.9 6.8 Change-Id: I4f3daab9deff3250ff66066dc3e088edfbbfc5ef Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Matthias Rauter <matthias.rauter@qt.io> Reviewed-by: Mate Barany <mate.barany@qt.io> |
||||||| | It helps debugging. Change-Id: Ibb01bf9ebbeb06c05fd4be2ca17277dff8247c5f Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> |
|||||||||||| | The NVIDIA driver may become unstable (including kernel lockups) if Vulkan API calls continue after a device loss. Ensure we stop frame processing immediately when vkWaitForFences() returns VK_ERROR_DEVICE_LOST. Also, don't try to vkWaitForFences() when calling releaseSwapChainResources() after a device loss. Change-Id: I2c35a7a7ad07830778b6dc4d40f1ce62535e988a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> |
||||||||||||||||||| | Prior to 84a5f50c7766c99f62b22bb4388137e0aa8dd13d QWidgetWindow::handleMouseEvent() did its own synthesis of QContextMenuEvents. Then we moved it to QWindowPrivate::maybeSynthesizeContextMenuEvent() and didn't preserve the code to accept the QMouseEvent if the QContextMenuEvent was accepted. It turns out that the WASM platform depends on checking whether the QPA mouse press event was accepted: if not, it closes all popups, including any context menu that was just opened by a right mouse press. Fixes: QTBUG-136241 Change-Id: Ibe01763a6af19d65629dc77eb61ffc1af581efbe Pick-to: 6.8 6.9 Reviewed-by: Even Oscar Andersen <even.oscar.andersen@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> |
||||||||||||| | QDoc generates warnings for images that do not have an alternate-text associated with it. Alt-text is required for to increase accessibilty options. This patch adds alt-text to images in the Qt Network Fixes: QTBUG-135122 Pick-to: 6.9 6.8 Change-Id: I690f1d381ef5a9052e189dd1f3906243df557da0 Reviewed-by: Topi Reiniö <topi.reinio@qt.io> |
||||||||||||||||||||||||||||| | Recent changes to date-time formatting arranged for time-zone names to be localized appropriately. Teach the datetime parser to recognize the long names that now implies, as well as IANA IDs, and ensure these last are also used as a fallback when no localized long name is available. Discrepancies between the platform time-zone backend and our CLDR-derived name L10n (where needed, due to the backend lacking it) make the naive approach to this (find any zone that matches, expect them all to have the same offset history) fail, so take care in this case to select as canonical an IANA ID for the named zone as we can find. Add a round-trip test and adapt an existing test to round-trip when it can. [ChangeLog][QtCore][QDateTime] The tttt format specifier now uses the full long name of the zone, falling back to its IANA ID only if this cannot be determined. Both forms are now recognized when reading a datetime from a string. [ChangeLog][QtCore][QLocale] When serializing a datetime, the tttt specifier now uses the localized full long name of the zone, falling back to its IANA ID only if this cannot be determined. Both forms are now recognized when reading a datetime from a string. Pick-to: 6.9 6.8 Fixes: QTBUG-130278 Change-Id: Ia28529790c0f600930d55c92a606adbcdfa852b9 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> |
||||||||||||||||||| | Place it after the last mutually intelligible entry (same language and script), or at the end if none, rather than at the start. The fact that we add it at all was prompted by macOS leaving it out, which can happen if the user has specified custom preferred languages that don't match what they've specified for locale. Adapted various test-cases to match the new behavior. [ChangeLog][QtCore][QLocale] When the system locale itself is missing from what the system reports as suitable languages into which to translate the UI, it is now inserted later in the list, where previously it was added at the front. Task-number: QTBUG-104930 Change-Id: I378d266d6f8894cb17df9d09e841a266da73ecee Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> |
|||||||| | An illustration missed out an entry. Technically truncations go after equivalents of their source. Change-Id: Ia514c3e0991cbc552c6314a26c6d0569b38e9f16 Reviewed-by: Paul Wicking <paul.wicking@qt.io> |
||||||||||||| | This change introduces a new function, readRawInnerData(), that returns the raw inner XML content of the current element, including nested tags, comments, CDATA, and processing instructions. [ChangeLog][QtCore][QXmlStreamReader] Added readRawInnerData() for retrieving the raw inner XML content of an element. Fixes: QTBUG-85141 Change-Id: I96dd0790d726cf8a196125384cbf8f8fa2587880 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> |
||||||||||||||||| | Use the PKCS12_ALWAYS_CNG_KSP flag instead of PKCS12_PREFER_CNG_KSP when importing a PKCS12/PFX file to make sure the private keys are stored in the Key Storage Provider, so that the CERT_NCRYPT_KEY_HANDLE_PROP_ID property is set on the associated certificate and the subsequent query for it succeeds. Background: If the PFX file contains a Crypto Service Provider (CSP) bag attribute and PFXImportCertStore is called with the PKCS12_PREFER_CNG_KSP flag, then the private keys are stored in the CSP that is referenced in the bag attribute and the key is only accessible through the deprecated API. Change-Id: If2ad2fa6a7b20f02e40fc49c98e3a72b68d832f2 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> |
|||||||||| | contenteditable on the window caused characters to be inserted. Instead create a div as a child element, and set contenteditable on that. Fixes: QTBUG-136050 Change-Id: I4ccf3589ea19876f68bb9c7077c3a13ae5f989e6 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> |
|||||||||||||||||| | NSVisualEffectView is the only supported way to add effects to views, such as showing a blurred representation of the content under the window, or within the window. Now that we render the content of our QNSView into a sublayer of the view's root layer, we can add NSVisualEffectViews as child views without obscuring the view's own content, by making sure that the NSVisualEffectView layer has a lower Z order in the layer tree of our view's root layer. This works because adding a layer-backed or -hosted view as a subview will also add its layer as a sublayer of the view's layer, making the effect layer and our content layer sibling layers. Change-Id: Iab822e8462f54025559b3e3f26c7df668c885d75 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> |
||||||||||||||||||||||||||||||||||||||||||||||||| | Conceptually, a table can deal with rows that are a pointer type, and nullptr. We test for validity before accessing the row element, and can return gracefully from e.g. data() or setData(). This is also acceptable for lists, where a newly constructed row will hold a nullptr element as the item. Client code that wants to initialize new rows explicitly can provide their own protocol, or connect to rowsInserted() and rowsAboutToBeRemoved(). However, we might end up violating the requirement that in a table, all rows have to have the same number of columns: if the row-type is a pointer to a struct or gadget, and we don't instantiate the element, then we end up with an index that is de-facto invalid even though it is in range. setData() cannot do anything but return false, and data() can only return an invalid QVariant. And if the row type is dynamically sized, and the new row is inserted at index 0, then we end up reporting that the model has 0 columns, as we use row 0 as the reference for the column count. To fix this, implement new/deleteRow consistently for pointers (and smart pointers): if the row type is a (smart) pointer holding a default-constructible object, then we can instantiate a new object. The deleteRow implementation takes care of deleting raw pointers (as otherwise the `delete row` expression is invalid); for smart pointers, the smart pointer takes care of memory management. All other row types can be instantiated by default constructing. This covers MultiColumn/SingleColumn wrappers as well, which can hold a nullptr while still reporting the correct column count. Remove the special handling from canInsertRows() - if newRow() is available in the protocol, then we can insert rows. But one ambiguity remains: if we operate on a copy of a container that has pointers for rows, then adding new rows might allocate (in the model's copy), resulting in a mixed situation. The client code can not delete those new rows (they don't exist in the original container), while the model must not delete rows it didn't create (those do exist in the original container and might still be used). Perhaps that cannot be solved, other than by documenting: either move your range in the model (then ownership is clear), or pass a reference or pointer the model (then ownership is also clear); or use smart pointers for the row type. Change-Id: I18a2e929473d118dcdb9d1f2ed67a7890f681974 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> |
||||||||||||||||||||||||| | It is a precondition violation to call QByteArrayView::at() with size() as argument. The code used that, though, as an implicit end-of-string check, assuming == ' ' and == '=' would both fail for null bytes. Besides, QByteArrays (but most certainly QByteArrayViews) need not be null-terminated, so this could read even past size(). To fix, use higher-level API (startsWith()), consuming parsed tokens along the way. Add a test that would crash in debug mode before the fix. Amends the start of the public history. [ChangeLog][QtCore] Fixed a bug in the handling of data: URLs that could lead to a crash if Qt was built with assertions enabled. This affects QNetworkManager and links in QTextDocument. Pick-to: 6.9 6.8 6.5 6.5.9 6.2 5.15 Change-Id: I4331c88051dfbb0a18fe7da4f50858c707785d09 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Ahmad Samir <a.samirh78@gmail.com> Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> |
|||||||||||||||||| | By making the content layer a sublayer of the view's root layer (our container layer) we open up the possibility of manually managing the z-order between the content and other sublayers of the view's layer, for example sublayers added as a result of adding NSVisualEffectView child views to our view. [ChangeLog][macOS] Metal and Raster windows no longer render their content directly to the root CALayer of the window's NSView, but to a sublayer of the root layer. This is an implementation detail that should not be relied on, but may affect client code that pokes into the NSView of the QWindow in unsupported ways. To opt out of the new mode, set QT_MAC_NO_CONTAINER_LAYER=1. Change-Id: I7053d7530b6966ed7dd4d1a4d1b7e94754767c57 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> |
||||||||| | `interface` is used by win32 headers. avoiding it fixes unity builds on windows. Pick-to: 6.8 6.9 Change-Id: I1d3f89a201f44f6e4eed5977d1b80f675078d430 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> |
|||||||| | This is how it used to be. More changes are needed to fix cut/copy/paste. Change-Id: Ib5073b82a568a391581f0b4d8369eaab57fd8f19 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> |
||||| | Change-Id: I01acbfecfad582dd663c9ae2540be277414935db Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> |
||||||||||| | With CMake 4.0 the CMAKE_OSX_SYSROOT is no longer automatically set based on the CMAKE_OSX_DEPLOYMENT_TARGET or host platform, so the variable will be empty by default. Pick-to: 6.9 6.8 Change-Id: Icad8e044a9d58e995882672b27340c83eb0ae0a8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> |
||||||||||||||||| | Error after commit f039077830f41ca7ea7b1d91a4f7ad45a6613ea6: .../qtbase/src/corelib/text/qlocale_win.cpp(745): error C2872: 'Windows': ambiguous symbol C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\winrt\wrl/ client.h(927): note: could be 'Windows' C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\cppwinrt\ winrt/Windows.System.UserProfile.h(890): note: or 'winrt::Windows' Amends 51e8d3592acc8bacf326fe3933b5dec13bb518e6 Change-Id: Ia32faa86bee6a284a5ad50ed82dcf8f08ab28dfd Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> |
|||||||||| | We don't need it (for now), and it causes ambiguities with namespaced builds on MSVC, so remove it. If we need it again, then we need to forward declare the class in the global namespace first. Fixes: QTBUG-136136 Change-Id: I96c7d2557a5e84d3fd78eb9098442e19024347b5 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> |
||||||||||||| | Use QWasmEventHandler instead of calling addEventListener() directly (using QWasmEventHandler also allows supporting JSPI). The QWasmEventHandler destructor calls removeEventListener(), which should make sure everything gets cleaned up. Keep the Chrome-specific global (document) event handler code path, but register once at startup instead of once per window. Change-Id: If4314df738afc0dcfdb0f6f1ab9e1f176e1812ac Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> |
||||||||||| | Use typed_memory_view() instead to create UInt8Arrays pointing to an area of the heap, instead of HEAPU8. Fixes issue on emsdk >= 4.0.7 where HEAPU8 etc are no longer exported by default. Change-Id: I2c632b2c54dc1e9947b11ab3d2613d790b994440 Reviewed-by: Lorn Potter <lorn.potter@qt.io> |
|||||||||||| | It is required to update the serialization of QGeoPolygon in QtPositioning. Need to adjust tst_qdatastream as well. Task-number: QTBUG-135967 Change-Id: I81bf1c011717d5ecd92fd6c81136053b4f06bf49 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mate Barany <mate.barany@qt.io> |
||||||||||||||||||| | It's used to determine whether a non-equivalent prefix of a locale gets added at the end of the block of equivalent locales, or at the very end of the list. Thus it should be initialized for each prefix as it is processed, not before the name is trimmed to its first prefix. Added the test-case that caught this. Amends commit cbf49f735e3cca85922a85d6548666816686db78 This should work as-is in 6.9 but may be hard to back-port to 6.8. None the less, I shall try for the latter, too. Pick-to: 6.9 6.8 Task-number: QTBUG-131894 Change-Id: I75ab27153133d2608cf57f0bc998c1e3d0d1432c Reviewed-by: Mate Barany <mate.barany@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> |
|||||||||| | No alternate backend refers to this cache, and probably hasn't for quite some time. Change-Id: Id0e6a652bd58a45d13de8dfc4a3e0d6f35dee5a7 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mate Barany <mate.barany@qt.io> |
|||||| | Change-Id: I4fd08588b940dee286fce5c0243404e1a1c3367a Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io> Reviewed-by: Marco Bubke <marco.bubke@qt.io> |
||||||||||||||| | Amends eced22d7250fc7ba4dbafa1694bf149c2259d9ea tst_QTextMarkdownImporter::frontMatter(yaml + markdown with CRLFs) now does explicit replacement of LF with CRLF: git may convert the file, so we can't rely on the CI test system checking out a true copy of yaml-crlf.md; but QFile::open(ReadOnly | Text) ensures that we will have LF line endings, not CRLF. Pick-to: 6.8 6.9 Task-number: QTBUG-135284 Change-Id: I7eee5f41e7aea902a59ac06238e591ece016d2d3 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> |
||||||||| | New property is more flexible in terms of further deployment extension. Currently it only knows the APPLICATION type but will support new types in the future. Change-Id: I6bdadfbbe162a990544903b3cbcfae2891114e88 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> |
||||||||| | Small QoL improvement. The folded set_target_properties call looks nicer. Pick-to: 6.5 6.8 6.9 Change-Id: Id60e8c346672733a805e09420c754a24bcae82dc Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> |
||||||||| | We know it's deprecated, and have a bug report to track it, so we don't need a compilation warning on each build. Task-number: QTBUG-119171 Change-Id: Iea9e45ae154761efb0960acf34a79953518024c1 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> |
|||||||| | Ideally we'd have a moc macro/define to opt out of the warning, but for now this will have to do. Change-Id: Iffe943191edc553840e1a83dc307926813a5d6f1 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> |
|||||||||| | Implicitly convert the target name to a valid C indentifier, so users may use dash-separated names for their targets. Add warning about plugin name substitution, for the cases where this might be critical. Task-number: QTBUG-135860 Change-Id: Ie148424ec182a3b1ce2af2a0e29c2f9eb8d457f1 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> |
||||||| | Allow specifying path AndroidManifest.xml from command line. Change-Id: I4a2301b98befe32c27602ff63b65aea8a4686123 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> |
||||||||||| | -A new Export Controls page has a larger overview -Edited parts of the section Fixes: QTBUG-134259 Pick-to: 6.9 Change-Id: Iaceb2501eeb848544f8004bfae03a3cdf36908af Reviewed-by: Andreas Eliasson <andreas.eliasson@qt.io> Reviewed-by: Kai Köhne <kai.koehne@qt.io> |
||||| | Change-Id: I630caa2f76ce4fd4476b9027513b55f257d90d4b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> |
|||||| | Change-Id: Ib309fbf0c106f8bbc81b4a714994087543494605 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> |
||||||||| | This library is included by mingw-w64 and also needs to be linked against for code in `qlocale_win.cpp` enabled via the `cpp_winrt` feature flag. Change-Id: I9f06f3845165afaf305a0fc7771a1093cba08811 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> |
||||||||| | We know it's deprecated, and have a bug report to track it, so we don't need a compilation warning on each build. Task-number: QTBUG-110998 Change-Id: Icf5a670532cd923dc90d594621b38dbb6d344e2d Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> |
|||||||||| | When we draw menu item text with CoreText instead of QPainter, then we need to translate QFont::strikeOut() explicitly to an entry in the attribute dictionary. Task-number: QTBUG-136215 Change-Id: Ic4a895cd10c950c477acffca0078718490f4f0b7 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> |
|||||||||| | [ChangeLog][Third-Party Code] Upgraded Harfbuzz to version 11.1.0. Pick-to: 5.15 6.5 6.8 6.9 Task-number: QTBUG-136054 Change-Id: I388586c887a3ae30ecc7b07bb0b6a5c12d3b6caf Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> |
|||||||||||||| | As a RAII class, QtPrivate::StreamStateSaver's ctors should be marked as [[nodiscard]]. Amends 3c93286f08a80b6e1821d7d63d361742b25c6578, but not picking all the way back since 959800f6de137f6a77c7d5a2741a5bae0638cbd9 (Q_NODISCARD_CTOR) was only added in 6.6. QUIP: 19 Pick-to: 6.9 6.8 Change-Id: If39fd79d21c52d60481973a416ae5f7da1858f7a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> |
||||||||||||| | Remove line about "common values" which is now not 100% accurate and uses the outdated "retina" term. Add note which encourages using QWindow::devicePixelRatio() to get the correct DPR value in all cases. Task-number: QTBUG-135612 Change-Id: I78e049cb2f0661b62bc3e2520a4b3cbf1fde241d Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> |
||||||||||||||||||||| | Once the platform window has been created it has had its chance to set a default position and size, which is reflected back to the QWindow. Destroying and recreating the window after that should keep the position and size, even when those have been changed by the end user via the system's window manager. We were effectively doing this for size already, as initialGeomery only applied a default size if the size was 0x0, but we were failing to preserve the position. We now handle both cases explicitly. [ChangeLog][QtGui] A destroyed and recreated QWindow will now maintain its position and size, instead of allowing the platform window another chance at setting a default position and size. Users of QWindow and its consumers that reuses a single window for many "logical" windows need to explicitly position and size the window for each "use". Change-Id: Ib9a395295e6dfdc6db908e2c96be60046f462c30 Reviewed-by: Liang Qi <liang.qi@qt.io> |
|||||||| | It's no longer used since 9b2835e464748f499758a7eef0d4c49452e7211a. Pick-to: 6.9 6.8 Change-Id: I8a075e9d645290af3a7fe5b9b2fa7a5a7a7b4909 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> |
||||||| | Fixes: QTBUG-135675 Pick-to: 6.9 6.8 Change-Id: I844cd96f977bd0b5536606cf0c2449a87502231a Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> |
||||||||| | The code was already partially behind the feature flag, but not fully. Pick-to: 6.9 6.8 Fixes: QTBUG-135693 Change-Id: Iad76221837aa37b90b3be998afc41ce9bbc05c55 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> |
|||||||||||| | The permissions were partially behind 'future' feature flag. Instead put permission code behind the actual 'permissions' feature flag, and require 'future' feature if permissions are enabled. Fixes: QTBUG-135617 Pick-to: 6.9 6.8 Change-Id: I573cca6a56c19bfc32a3f1df72a009cbe05ad2fb Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> |
||||||||||||||| | It is out-of-sync with the actual implementation in qmetaobject_moc_p. we could change the parameter types, but it will only go out-of-sync again if the implementation is changed in the future. So just remove the whole comment. Amends 916460929d1de315262d4a9ee91280ecaf3f58f1 and 4dbac23e5354638224d8d99ba3342067c015a04b. Pick-to: 6.9 Change-Id: Id41d2818266cf22765f0ae7f11265c0e840d5af3 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> |