summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* QTextCharFormat: improve documentation for font()David Faure2025-07-011-0/+11
| | | | | | | | | | | | | It can be quite confusing to find out that fontItalic() == false but font().italic() == true, or vice-versa. Or worse, the fact that fontPointSize() returns 0 if the size comes from the default font. Fixes: QTBUG-49564 Pick-to: 6.10 6.9 6.8 6.5 Change-Id: I05239ed80e82080ea942524f289b953f806c8196 Reviewed-by: Eskil Abrahamsen Blomfeldt <[email protected]>
* QFileInfoGatherer: Prevent infinite loopTobias Fella2025-07-011-0/+2
| | | | | | | | | | | | | | If the path to be added to the queue already exists at position 0 of the queue, loc is set to 0. This causes the next invocation of lastIndexOf to start at index -1 (the end of the queue). It will then again find the path at index 0. This means that the loop will never terminate, causing the application to freeze here. This patch fixes that by breaking out of the loop if loc is 0. Pick-to: 6.10 6.9 Change-Id: Ib84f0b2766aa39c87f66b94a2e3fbc6ede687521 Reviewed-by: Friedemann Kleint <[email protected]>
* QQuaternion: rename the fromEulerAngles() argumentMarc Mutz2025-07-012-7/+7
| | | | | | | | | | | | The eulerAngles name will clash with a function I intend to add, of the same name, probably triggering -Wshadow. Besides, this fixes long lines and isn't any less readable. Picking all the way since it's 100% risk-free. Pick-to: 6.10 6.9 6.8 6.5 Change-Id: Iea552c6cad4ad20164cf0cc462cb1dcb2bc752c0 Reviewed-by: Volker Hilsheimer <[email protected]>
* QQuaternion: fix MingW "redeclared without dllimport attribute" errorMarc Mutz2025-07-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I don't know why, but after years of no changes to the header, the CI on 6.5 started to throw the dreaded qquaternion.h:138:8: error: 'QQuaternion::QQuaternion()' redeclared without dllimport attribute after being referenced with dll linkage [-Werror] Fix by plastering the class with inline keywords. This just goes to show that separating definition and declaration of inline functions (and exporting non-polymorphic classes wholesale) is usually a bad idea. Remove the inline keywords from the definitions to order to use the linker on all platforms to verify we marked all functions inline that are. Later releases are unaffected, because f9f1272e7c438b79591032877f2b386af8085c3f plastered the class with constexpr, which implies inline. Manual conflict resolution for dev: - there were three inline keywords left outside the class after f9f1272e7c438b79591032877f2b386af8085c3f, this patch removes them, so mark it as a cherry-pick of the 6.5 change, which did the same Pick-to: 6.10 6.9 6.8 Change-Id: I5f044e4aae8e31173c0717d4b70d53fece99b927 Reviewed-by: Volker Hilsheimer <[email protected]> (cherry picked from commit fccb455a4f94e5bc95ba6ad54a46fa71439314bb) Reviewed-by: Daniel Smith <[email protected]>
* QDirEntryInfo: fix GCC optional<> -Wmaybe-uninitializedMarc Mutz2025-07-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The usual whack-a-mole: libstdc++'s std::optional implementation like to throw a -Wmaybe-uninitalized warning when the default ctor is used. Says GCC 15 (kinda cryptically): In function ‘constexpr void qt_ptr_swap(T*&, T*&) [with T = QFileInfoPrivate]’, inlined from ‘void Qt::qt_ptr_swap(totally_ordered_wrapper<QFileInfoPrivate*>&, totally_ordered_wrapper<QFileInfoPrivate*>&)’ at qcomparehelpers.h:1145:18, inlined from ‘void QSharedDataPointer<T>::swap(QSharedDataPointer<T>&) [with T = QFileInfoPrivate]’ at qshareddata.h:97:18, inlined from ‘void QFileInfo::swap(QFileInfo&)’ at qfileinfo.h:62:17, inlined from ‘QFileInfo& QFileInfo::operator=(QFileInfo&&)’ at qfileinfo.h:59:5, inlined from ‘constexpr void std::_Optional_payload_base<_Tp>::_M_move_assign(std::_Optional_payload_base<_Tp>&&) [with _Tp = QFileInfo]’ at optional:193:19, inlined from ‘constexpr std::_Optional_payload<_Tp, true, false, false>& std::_Optional_payload<_Tp, true, false, false>::operator=(std::_Optional_payload<_Tp, true, false, false>&&) [with _Tp = QFileInfo]’ at optional:442:22, inlined from ‘constexpr std::_Optional_payload<_Tp, false, _Copy, _Move>& std::_Optional_payload<_Tp, false, _Copy, _Move>::operator=(std::_Optional_payload<_Tp, false, _Copy, _Move>&&) [with _Tp = QFileInfo; bool _Copy = false; bool _Move = false]’ at optional:458:26, inlined from ‘constexpr std::_Optional_base<_Tp, <anonymous>, <anonymous> >& std::_Optional_base<_Tp, <anonymous>, <anonymous> >::operator=(std::_Optional_base<_Tp, <anonymous>, <anonymous> >&&) [with _Tp = QFileInfo; bool <anonymous> = false; bool <anonymous> = false]’ at optional:535:23, inlined from ‘constexpr std::optional<QFileInfo>& std::optional<QFileInfo>::operator=(std::optional<QFileInfo>&&)’ at optional:778:11, inlined from ‘QDirEntryInfo& QDirEntryInfo::operator=(QDirEntryInfo&&)’ at qdirentryinfo_p.h:24:7, inlined from ‘void QDirListingPrivate::advance()’ at qdirlisting.cpp:360:30: qswap.h:32:9: warning: ‘*(QFileInfoPrivate**)((char*)&<unnamed> + offsetof(QDirEntryInfo, QDirEntryInfo::fileInfoOpt.std::optional<QFileInfo>::<unnamed>.std::_Optional_base<QFileInfo, false, false>::_M_payload.std::_Optional_payload<QFileInfo, false, false, false>::<unnamed>.std::_Optional_payload<QFileInfo, true, false, false>::<unnamed>.std::_Optional_payload_base<QFileInfo>::_M_payload))’ may be used uninitialized [-Wmaybe-uninitialized] 32 | lhs = rhs; | ~~~~^~~~~ qdirlisting.cpp: In member function ‘void QDirListingPrivate::advance()’: qdirlisting.cpp:360:30: note: ‘<anonymous>’ declared here 360 | entryInfo = {}; | ^ To fix, use the std::nullopt_t ctor instead. Three year old list of upstream bugreports: - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80635 - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86465 - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100115 - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102801 - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105749 IOW: they (still) don't seem to care much. Amends c39a0d1e8956e042139ce3065681e4c5d07412f3. Pick-to: 6.10 6.9 6.8 Change-Id: I6c724142116f78f0ba8ed311f46b80091e995d74 Reviewed-by: Ahmad Samir <[email protected]>
* QVariant: remove a false statement about C++ unionsGiuseppe D'Angelo2025-07-011-5/+0
| | | | | | | | | Since C++11 unions can store types with non-trivial special member functions. Remove the inaccurate paragraph from the documentation. Pick-to: 6.10 6.9 6.8 Change-Id: I2d2fa7e69da5e30f29e19b39a67a5fc28c250acd Reviewed-by: Thiago Macieira <[email protected]>
* moc: add line numbers to properties, methods, etcSami Shalayel2025-07-014-0/+214
| | | | | | | | | | Those are needed by qmlls to be able to jump to C++ definitions. Task-number: QTBUG-119143 Task-number: QTBUG-128393 Change-Id: I4fb9394b0a22a02501bafdbe95a7cd8998adfe11 Reviewed-by: Ulf Hermann <[email protected]> Reviewed-by: Fabian Kosmale <[email protected]>
* tst_moc: add missing dependency to mocSami Shalayel2025-07-011-0/+2
| | | | | | | | Add missing dependency to MOC such that the .json files are regenerated automatically when moc was modified. Change-Id: Ie874443b0c11cc7c7feefe1bc1a555c3bd135257 Reviewed-by: Fabian Kosmale <[email protected]>
* Doc: Fix incorrect inheritence statement in QStringList documentationDheerendra Purohit2025-07-011-1/+1
| | | | | | | | | | Updated the documentation to clarify that QStringList is not a separate class. Pick-to: 6.10 6.9 Fixes: QTBUG-102240 Change-Id: Ifdbad8764e9cfaa915cfd7f27872d64b21e14977 Reviewed-by: Thiago Macieira <[email protected]>
* Document the QByteArray(QByteArrayView) constructorMårten Nordheim2025-06-301-0/+9
| | | | | | | | | | | | It was missing from the original commit in 6.8. Amends 21dfb0ebcc6b3a3408a8272ce536a1e4d53910cd Pick-to: 6.10 6.9 6.8 Change-Id: I482a621ecc1a04e3f3ce9ba37c7a1ad22e140ce9 Reviewed-by: Giuseppe D'Angelo <[email protected]> Reviewed-by: Albert Astals Cid <[email protected]> Reviewed-by: Marc Mutz <[email protected]>
* Add assertions to qtestlog.cpp where it branches on variant typeEdward Welbourne2025-06-301-0/+8
| | | | | | | | | For ignored messages, only string and regex are possible. For messages to warn about, a null variant is also possible. Pick-to: 6.10 6.9 Change-Id: I3a1b0ebaf541fb8e26794409feb4c5ef9b61d3c3 Reviewed-by: Thiago Macieira <[email protected]>
* Convert qtestlog.cpp to use QVariant::get_if<>(QVariant *)Edward Welbourne2025-06-301-11/+10
| | | | | | Pick-to: 6.10 6.9 Change-Id: I30aefa3dafa0975e53f6a7fb253a37032bb9492a Reviewed-by: Thiago Macieira <[email protected]>
* Clean up some #if-ery in qtestlog.cppEdward Welbourne2025-06-301-10/+8
| | | | | | | | | | Initially motivated by the fact that both branches of a #if closed a parenthesis that was opened only once before it. Found two more instance that could also be tidied up. Pick-to: 6.10 6.9 Change-Id: I268fb8559d0882540746d65ac53d6eee16f1425b Reviewed-by: Thiago Macieira <[email protected]>
* macOS: include QUrl in QAppleFileIconEngineVolker Hilsheimer2025-06-301-0/+1
| | | | | | | | | | | | The type is only forward declared via qmetatype.h so far, and building (presumably) only worked due to pre-compiled headers. Amends f036bd0edadf0f59757f4a8fa695706273eb72d2. Fixes: QTBUG-138100 Task-number: QTBUG-134239 Change-Id: Icc39b23cc08a309cba46c1d9ec598a6a0639754f Reviewed-by: Tor Arne Vestbø <[email protected]>
* QAnyStringView: support single wchar_t arguments also on UnixMarc Mutz2025-06-306-9/+32
| | | | | | | | | | | | | | | | | | | | | | We support char32_t, so there's no reason to not support a 4-byte-wchar_t. This also fixes a nasty asymmery between QString::arg(L'ä') (integral output) and QL1SV::arg(L'ä') or QString::arg(L'ä', L'ä') (characters) [ChangeLog][Important Behavior Changes][QtCore][QString] The unary arg() function now treats wchar_t as a character (string-like; was: integer), so u"%1".arg(L'ø') will now return "ø" and not '248". This makes the function consistent with both QString multi-arg() and QLatin1StringView::arg(). [ChangeLog][QtCore][QAnyStringView] Supports construction from a single wchar_t on all platforms now (was: only on Windows). Fixes: QTBUG-126054 Pick-to: 6.10 Change-Id: I21b7a9782f03d04686207db30d1b1c9d50bc8169 Reviewed-by: Thiago Macieira <[email protected]>
* [docs] QAnyStringView: document single-char ctorMarc Mutz2025-06-301-0/+112
| | | | | | | | Expand the class documentation a bit, too. Pick-to: 6.10 6.9 6.8 6.5 Change-Id: I6bab884c7b670671be4d5b3096a120cc9eb5854c Reviewed-by: Thiago Macieira <[email protected]>
* Add missing qquaternion.h includesMarc Mutz2025-06-304-0/+10
| | | | | | | | | | | | | | | | | | | The qquaternion.h include will vanish from qmatrix4x4.h soon, but some TUs depended on on the transitive include. This patch includes qquaternion.h into all TUs that use QQuaternion, but didn't include its header. I didn't check all the individual TU's history to make a detailed "amends", so I'll just pick this all the way back, knowing there may have been more users in older branches, or some TUs don't exist there, but it since we're not picking the removal of qquaternion.h from qmatrix4x4.h further than 6.10, I don't need to do detailed checking. CI will tell me when something's wrong. Pick-to: 6.10 6.9 6.8 6.5 Change-Id: Icf0db8ba4f12421fd46f9d1041f235bf4cc2c12b Reviewed-by: Volker Hilsheimer <[email protected]>
* CMake: Fix finding of system frameworks on macOS if vcpkg is usedJoerg Bornemann2025-06-301-0/+6
| | | | | | | | | | | | | | | | | The vcpkg toolchain file sets CMAKE_FIND_FRAMEWORK to LAST unless VCPKG_PREFER_SYSTEM_LIBS is enabled. The latter however has other unwanted implications and is also deprecated. The CMAKE_FIND_FRAMEWORK=LAST setting breaks qt_internal_find_system_framework for libraries like "Network" that are available as framework and as TBD file. Set CMAKE_FIND_FRAMEWORK temporarily to FIRST (the default value) in qt_internal_find_system_framework if vcpkg is used. Change-Id: I2fd3152d75b043a396f7c9b6269e623700077b98 Reviewed-by: Alexandru Croitor <[email protected]> Reviewed-by: Alexey Edelev <[email protected]>
* Mark src/corelib/itemmodels as security:significantMate Barany2025-06-3024-1/+24
| | | | | | | | | | According to QUIP23 the itemmodel classes do not qualify as security critical and the default level is "significant". Fixes: QTBUG-135189 Pick-to: 6.10 6.9 6.8 Change-Id: I7026ce0b4cd3a4851f82aa50be9c48ba074ae4a9 Reviewed-by: Matthias Rauter <[email protected]>
* SQLite: Update SQLite to v3.50.2Christian Ehrlicher2025-06-304-123/+174
| | | | | | | | [ChangeLog][Third-Party Code] Updated SQLite to v3.50.2 Pick-to: 5.15 6.5 6.8 6.9 6.10 Change-Id: I20fa5a6c5e6d17f747d3b32a4c0e6c399e4ae1b0 Reviewed-by: Kai Köhne <[email protected]>
* QIdentityProxyModel: call data() from subclasses in match()David Faure2025-06-302-13/+35
| | | | | | | | | | | | | | | The implementation of match() was only looking into the source model, without considering the fact that data() could be reimplemented in a QIdentityProxyModel subclass (a very common usage pattern for the class, part of the documentation). The simplest solution is to let the default implementation from QAbstractItemModel do matching the usual way, calling data(). Fixes: QTBUG-78013 Pick-to: 6.10 6.9 6.8 Change-Id: If984ffa5f8dbdfe9a76eaec8b82648d705cfecd4 Reviewed-by: Volker Hilsheimer <[email protected]>
* CMake: Fix per-repo developer buildJoerg Bornemann2025-06-301-13/+0
| | | | | | | | | | Don't try to find_package(Qt6Qml) in qtbase. This produces a CMake error in a per-repo developer build. In a top-level build, there was no error but qlogging.cpp was still not compiled. Remove the whole block. Change-Id: Ie7266b2f66744379590a7734cabfb95a754d80ea Reviewed-by: Alexey Edelev <[email protected]> Reviewed-by: Volker Hilsheimer <[email protected]>
* Mark QStandardPath implementation security criticalMatthias Rauter2025-06-307-0/+7
| | | | | | | | | | | | | | | | | The QStandardPaths class provides access to OS-specific standard locations on the filesystem, and also allows to search for files within the defined directories. Other parts of the application should be able to rely on the results returned by this class. Bugs in this code can lead to severe issues like overwriting of user files, reading configs from an incorrect place, or loading an incorrect external code for execution. Therefore, the respective files are marked security-critical. QUIP: 23 Pick-to: 6.10 6.9 6.8 Task-number: QTBUG-135187 Change-Id: Id1a8189f2a7cde4a760446428551f2fe682d4073 Reviewed-by: Marc Mutz <[email protected]>
* Replace one-shot uses of QSemaphore with QLatchThiago Macieira2025-06-3014-113/+90
| | | | | | | | | | | | | | | This commit replaces one-shot synchronization of threads that were using QSemaphore with QLatch. QSemaphore is efficient on Linux and Windows, but allocates memory elsewhere. Even on those platforms where we have futex-like OS support, QSemaphore is heavier than what we really need here. All but one uses of QSemaphore in qtbase libraries (I didn't change examples or tests) were replaced. The remaining use of QSemaphore in qnetworkproxy_libproxy.cpp is a proper producer-consumer. Change-Id: Ib5ce7a497e034ebabb2cfffd1761a4fcb2be9a6c Reviewed-by: Volker Hilsheimer <[email protected]>
* Add security header to QFSFileEngine filesMatthias Rauter2025-06-306-0/+6
| | | | | | | | | | | | | | | | | This class and its backends are mostly forwarding data without inspecting it. Qt still does some parsing itself and it has to interpret the answers of underlying calls correctly. Therefore the QFSFileEngine implementation is marked critical. The iterator and the header files are marked significant. QUIP: 23 Pick-to: 6.10 6.9 6.8 Task-number: QTBUG-135187 Change-Id: I8ba5583fd044889b288174d02a8ac80583e52873 Reviewed-by: Ivan Solovev <[email protected]>
* QMetaObject::connect: Fix documentation copy-paste mistakeFabian Kosmale2025-06-302-6/+10
| | | | | | | | | | The whole point of the new functions is to support QMetaMethods as the signal argument, but the documentation still talked about PMFs. Also mention that signal needs to be indeed a signal. Pick-to: 6.10 Change-Id: I7d9d307f68d3f1df2fbaff0dfe2a5a80d4b7c2be Reviewed-by: Marc Mutz <[email protected]>
* tst_QQuaternion: fix spelling of 'expected'Marc Mutz2025-06-301-7/+8
| | | | | | | | | | | | | | | | | | As a drive-by: - replace direct by copy initialization and reflow the line with the ternary - make objects const - don't compute the cross product twice; it's anti-commutative, so if a × b is 0, then so is b × a = -(a × b). Amends 95d034a14f78aaefd6990de180f715c8b4d510b1. Pick-to: 6.10 6.9 6.8 6.5 Change-Id: I4dc4582854b3d93a6e3468e8b19afe28d77c6c1c Reviewed-by: Volker Hilsheimer <[email protected]>
* Update bundled libpng to version 1.6.49Eirik Aavitsland2025-06-3014-44/+129
| | | | | | | | [ChangeLog][Third-Party Code] libpng was updated to version 1.6.49 Pick-to: 6.10 6.9 6.8 6.5 Change-Id: I9a884f532aeb0b732f71fb189773a8d894032400 Reviewed-by: Eskil Abrahamsen Blomfeldt <[email protected]>
* Fix JNI snippet code compile errorsAssam Boudjelthia2025-06-291-1/+9
| | | | | | | | | | Add needed includes and leave out Java code. Amends 6a49c7f19f514056a7029de6ae04b424e5affc5a. Task-number: QTBUG-137566 Change-Id: I0bbefb406be8eca1c079bf1b8c3583a67380d495 Reviewed-by: Volker Hilsheimer <[email protected]>
* Windows11Style: reset mdi icons on polishChristian Ehrlicher2025-06-291-0/+6
| | | | | | | | | The mdi icons need a reset on polish for correct dark/light mode handling. Fixes: QTBUG-135785 Change-Id: I3fb1fe458e579fab329a2329ac68d5e77ea35e72 Reviewed-by: Volker Hilsheimer <[email protected]>
* Windows11Style: use assetFont from WindowsVistaPrivateChristian Ehrlicher2025-06-292-14/+16
| | | | | | | | | Use the asset font from WindowsVistaPrivate to share common functionality with the vista style. Task-number: QTBUG-135785 Change-Id: I2ec05e4358a426f0a3ba0a456b5b70eab6f18705 Reviewed-by: Volker Hilsheimer <[email protected]>
* tst_bench_qfile: fix yet another [[nodiscard]] warningMarc Mutz2025-06-291-0/+1
| | | | | | | | Amends 7466831509fe163f3fd1e3a6bbf38f6f5a32ef00. Pick-to: 6.10 6.9 6.8 6.5 Change-Id: I73ec71d727e2e07761b7b7c70e8b8eddd9137450 Reviewed-by: Volker Hilsheimer <[email protected]>
* [docs] QQuaternion: fix \overload in toEulerAngles() docsMarc Mutz2025-06-291-1/+0
| | | | | | | | | | | | | The function is no longer overloaded. getEulerAngles() used to be called toEulerAngles() (88142e73d5e062cf26638511a42140b59ef736cc), but was later renamed to the idiomatic get-prefix (1872857ca72658cd58c0c39b31da493f794be6ca). Amends 1872857ca72658cd58c0c39b31da493f794be6ca. Pick-to: 6.10 6.9 6.8 6.5 Change-Id: Ibc71635aa836e9c33fb2b88ce30cc7a35fbf1291 Reviewed-by: Volker Hilsheimer <[email protected]>
* QQuaternion: fix incorrect Qt 7 export on inline functionMarc Mutz2025-06-291-1/+1
| | | | | | | | | | | | | | The fromEulerAngles(QVector3D) function is and will stay inline, as it's just forwarding to the (float, float, float) overload of the same name. So it needn't be, and shan't, either, be exported come Qt 7. Remove the QT7_ONLY export. Partially reverts / amends f9f1272e7c438b79591032877f2b386af8085c3f. Pick-to: 6.10 6.9 6.8 Change-Id: I8ed0054ca89ab04ef0b06bea953473e91789fda6 Reviewed-by: Volker Hilsheimer <[email protected]>
* QQuaternion: comment all #endif'sMarc Mutz2025-06-291-5/+5
| | | | | | | | | | | | | | | It's easier to comprehend what's going on, because there are quite a few different ones here. Exception: if the #if block contains only very few lines (max four or so, didn't count), then a naked #endif is ok, and arguably easier on the eye, so leave them in that case. Amends the start of the public history. Pick-to: 6.10 6.9 6.8 6.5 Change-Id: Ib1b27859344916caa17dc1ff0010b6b10d34bb13 Reviewed-by: Volker Hilsheimer <[email protected]>
* CMake: Work around AUTOGEN discarded dependencies for in-tree examplesAlexandru Croitor2025-06-282-1/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | When building qt examples in-tree, in a cross-compiling case, with a CMake version lower than 4.0, we lose AUTOGEN dependencies due to a bug in cmake. To ensure the dependencies are not lost, we need to apply the same workaround we did for internal Qt targets. For targets created by Qt's public API, we now query the target's LINK_LIBRARIES and INTERFACE_LINK_LIBRARIES at finalizer time, and add them to the AUTOGEN dependencies. The implementation is also modified to remove duplicates. We only apply the behavior in public API when QT_BUILDING_QT is true, to reduce the risk for regular user projects. The assumption here is when building a user project, Qt is already fully built, so we don't need to ensure that Qt's sync headers and autogen targets are up to date. Pick-to: 6.5 6.8 6.9 6.10 Fixes: QTBUG-137587 Task-number: QTBUG-133725 Change-Id: I61bd799ca39d92702ca0fc48d54bb517fc55baeb Reviewed-by: Alexey Edelev <[email protected]>
* CMake: Move qt_internal_work_around_autogen_discarded_dependenciesAlexandru Croitor2025-06-283-47/+48
| | | | | | | | | | | | | | Move it to a public Helpers file, so we can call it also from public API, because there are cases when we need the workaround for public API calls as well. Amends fcb20586316aff2ccc39e2ae840b79f8b0e904a7 Pick-to: 6.5 6.8 6.9 6.10 Task-number: QTBUG-133725 Task-number: QTBUG-137587 Change-Id: I9aef59f5eadc78fd581b24790e6b69795c32c1bf Reviewed-by: Alexey Edelev <[email protected]>
* Fix compile unused and uninitialized compile warnings for qprocess snippetAssam Boudjelthia2025-06-281-1/+3
| | | | | Change-Id: I5c5a8693c16970078941c91a1bceca0ee3edbc09 Reviewed-by: Thiago Macieira <[email protected]>
* Android: fix potential exceptions in Java CursorHandleAssam Boudjelthia2025-06-281-1/+7
| | | | | | | | | | | | | Under initOverlay(), obtainStyledAttributes() was using an auto closeable try() block but that's not guaranteed to be implemented on all system, to opt in for manually recycling. Moreover, under width(), m_cursorView is not always guaranteed to be non-null, so guard against that. Pick-to: 6.10 6.9 Change-Id: I35bf6d2ecbaf8913c94b070e7d99f72d2030f8b7 Reviewed-by: Ville Voutilainen <[email protected]>
* Android: update to Gradle 8.14.2 and AGP 8.10.1Assam Boudjelthia2025-06-2811-15/+15
| | | | | | | | | | | | | Update to latest versions for Gradle: * Gradle 8.12 -> 8.14.0 * Android Gradle Plugin 8.8.0 -> 8.10.1. [ChangeLog][Third-Party Code] Updated Gradle to 8.14.1 and AGP to 8.10.1. Task-number: QTBUG-137782 Change-Id: Ifbc808e18412f6e2e45612612d36a1f9bf57c1a9 Reviewed-by: Ville Voutilainen <[email protected]>
* qWaitForWidgetWindow: fix excessive genericityMarc Mutz2025-06-271-13/+12
| | | | | | | | | | | | | | | | | | | | | | The first argument was the same in all callers; instead of passing token-by-token-identical lambdas (which have all distinct types), we can pass the lambda's captured variables instead and inline the lambdas into the function. The third argument was always either int or QDeadlineTimer, so standardize on QDeadlineTimer. A follow-up change will change all arguments to QDeadlineTimer in the public API, too, so this is the future-proof and chrono-first-compatible version. Note 73c52ba2687c2035a40141f2a5236399f8331f4b for the QDeadlineTimer construction. Amends 7e4c2ac711c0b68133f06ab997a33f8bf7c4f734 and 3f2a9523a442e44ef52ebca30da9b5d3188df6bc. Pick-to: 6.10 6.9 6.8 Change-Id: I75f84abbf60cd77ce48c7ab0ee797e5e8a0879de Reviewed-by: Volker Hilsheimer <[email protected]>
* QObject: make doSetProperty() take lvalue arg by crefMarc Mutz2025-06-273-5/+14
| | | | | | | | | | | | | | | | | | | ... not by pointer. It makes more sense this way, since `lvalue` is always passed (unlike `rvalue`, which is passed optionally, so needs a nil state), and removes a potential error state (lvalue == nullptr) that neither the compiler nor a reader of the code now have to worry about anymore. As a drive-by, rename the argument so the local alias in the function can go away, too. Amends 39cdf431f034121353e51768b4d1fec8b0dd35dc. Pick-to: 6.10 Change-Id: I818e4fec30360c5b63b84a0f7e1e1eebdfe2cfcc Reviewed-by: Ivan Solovev <[email protected]> Reviewed-by: Thiago Macieira <[email protected]>
* Revert "Add a CI test for the schema check"Cristian Le2025-06-273-46/+0
| | | | | | | | | | Reverting because it is being flaky on Windows CI runners and needs more investigation This reverts commit 30cbc27c373c6c427114e9775d9b6a989e4c6a72. Change-Id: I57bd08c659c78367389785e0d1181ac7656c44aa Reviewed-by: Alexandru Croitor <[email protected]>
* Move the plugin config special handling to TargetsPrecheckCristian Le2025-06-274-29/+43
| | | | | | | | | | | This replaces the previous logic used in the QtPluginConfig.cmake files, allowing now to include the plugins independent of the current repo's dependencies. The only thing that controls whether a plugin is being included is if the current plugin is being built or not. Task-number: QTBUG-135233 Change-Id: I2d044eb6f6a3f36f49217eed81e799c4cfced66c Reviewed-by: Alexandru Croitor <[email protected]>
* Replace `QT_NO_CREATE_TARGETS` with an automated and scoped logicCristian Le2025-06-2715-24/+136
| | | | | | | | | | Effectively check if we are importing while still building the current project Task-number: QTBUG-135233 Change-Id: If172617463157e84e1b16fc2354147fabae41084 Reviewed-by: Alexandru Croitor <[email protected]> Reviewed-by: Alexey Edelev <[email protected]>
* Add `_qt_internal_should_include_targets`Cristian Le2025-06-271-0/+95
| | | | | | | Used to check if we should include the `Targets.cmake` file. Change-Id: I87b22a9eb68c6d0649595703e9d08e88c55d58e1 Reviewed-by: Alexandru Croitor <[email protected]>
* Use the new interface of `_qt_internal_check_multiple_inclusion`Cristian Le2025-06-272-2/+2
| | | | | Change-Id: I240939724b7013e00af6c118443b04007c9ce543 Reviewed-by: Alexandru Croitor <[email protected]>
* Expand `_qt_internal_check_multiple_inclusion` to accept namespaceCristian Le2025-06-271-6/+29
| | | | | | | Includes backwards compatibility for the old interface Change-Id: I6aeb62eff2a4e9a27d797bd9e06fbe68b2916ae6 Reviewed-by: Alexandru Croitor <[email protected]>
* Q*Application: deprecate compressEvents()Marc Mutz2025-06-275-0/+8
| | | | | | | | | | | | | | | | | | Give users that may have overridden this function a heads-up that it will be removed in Qt 7. Go for immediate deprecation, since there's no replacement, anyway. In the unlikely case that there's a user of this undocumented feature, they can use QT_IGNORE_DEPRECATIONS to selectively silence the warning, the same way we do. Amends 438b2f2d604133349777c670590b27a82832e290. Found in API-review. Pick-to: 6.10 Change-Id: I064e80250ab7a405cc8abef144b6c7bc7bbf29fd Reviewed-by: Ivan Solovev <[email protected]>
* QFactoryLoader: reserve() two QListsMarc Mutz2025-06-271-0/+2
| | | | | | | | | | Either of them may see additional append()s after the first loop, but we can at least skip the first few reallocations by reserving d->library.size(). Pick-to: 6.10 6.9 Change-Id: I1c2ccdc47444657957dd593a76d75fe210536b5b Reviewed-by: Thiago Macieira <[email protected]>