[qt/qt/qtbase]: Summary of bulk changes made

KDE Git Services - Bulk Change <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git repository change summary for qt/qt/qtbase
Pushed by mirror-service into branch '6.12'.
Changed from 6c61210bccd7d67166f5d773d22dfb15ef512687 to 0f0b050f0182eb907070439fde10c3bdce89daf0
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit 8b1c96de8b886b7d2bb9efc43a3689eaaef9d0c9 by Qt Cherry-pick Bot (on behalf of Morteza Jamshidi) on 22/07/2026 at 15:01..
Windows QPA: Keep native window state in sync for frameless windows

Maximizing or restoring a frameless window used MoveWindow(), which
only changes the geometry. The native zoomed state was never updated,
so the window state reported by Windows and Qt diverged, and restoring
a window maximized from the system menu did not work.

Use ShowWindow() again for the state change and instead constrain the
maximize rect to the work area in WM_GETMINMAXINFO, so a maximized
frameless window still leaves the taskbar visible. This also applies
to maximizing from the system menu or Win+Up. Add an auto test.

Fixes: QTBUG-145092
Task-number: QTBUG-129791
Pick-to: 6.11 6.8
Change-Id: Id4631e53fa709e2bc9b96eeab4ff9cbca09eb2e6
Reviewed-by: Oliver Wolff <[email protected]>
(cherry picked from commit 4900c1efd9c47a90c6230fb3ee6b154fc0d97bfa)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/8b1c96de8b886b7d2bb9efc43a3689eaaef9d0c9

Git commit d98b6d7385a16fa27b62d995541df3be5af24ccc by Qt Cherry-pick Bot (on behalf of Vadim Vysokoostrovskiy) on 22/07/2026 at 15:01..
Extend QLocale::toTime() benchmark for Chakma

Not picking to 6.11, because the old parser does not support it.

Change-Id: I1f1b27f4b373e0f8b0bccaec5585515e6e6e742b
Reviewed-by: Edward Welbourne <[email protected]>
(cherry picked from commit 3d1ad65b0e420a3f140a10e451cc5dbcc1f3f11e)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/d98b6d7385a16fa27b62d995541df3be5af24ccc

Git commit feb621e7fbf52f08ce5b9698deb99b4401539ac3 by Qt Cherry-pick Bot (on behalf of Vadim Vysokoostrovskiy) on 22/07/2026 at 15:01..
Extend QLocale::toDate() benchmark for Chakma

Not picking to 6.11, because the old parser does not support it.

Change-Id: I494e4731393528cdecbbdf6a9c8ebfaa28526d4c
Reviewed-by: Edward Welbourne <[email protected]>
(cherry picked from commit 0b39ef895952ede8e828bf55aaf52d37d30820b7)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/feb621e7fbf52f08ce5b9698deb99b4401539ac3

Git commit f203036722dea48aa78450e411fe34a3f8e0a353 by Qt Cherry-pick Bot (on behalf of Vadim Vysokoostrovskiy) on 22/07/2026 at 15:01..
Add QLocale::toDateTime() benchmarks

The benchmarks check Gregorian, Jalali, and IslamicCivil calendars
with C and de-DE locales. All possible format specifiers are used
at least once.

Pick-to: 6.11
Change-Id: I65d822ba2de1ae23bf2a6202057d6ed3267ab8fc
Reviewed-by: Edward Welbourne <[email protected]>
(cherry picked from commit 8cfa9e0fb500359e63ed930c71e6fcadeda192e3)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/f203036722dea48aa78450e411fe34a3f8e0a353

Git commit 5825733f1c68d894f7e83122e78131830d87a8fd by Qt Cherry-pick Bot (on behalf of Vadim Vysokoostrovskiy) on 22/07/2026 at 15:01..
Extend QLocale::toDateTime() benchmarks for Chakma

Not picking to 6.11, because the old parser does not support it.

Change-Id: I030adce240bcdac2321fbdb5e7e08fd0bedcca24
Reviewed-by: Edward Welbourne <[email protected]>
(cherry picked from commit 3607b8bc1d07dabb79e5324f6ac5c3c5e11593d3)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/5825733f1c68d894f7e83122e78131830d87a8fd

Git commit 8d5efb37701224a93176af970a052758a8872736 by Qt Cherry-pick Bot (on behalf of Vadim Vysokoostrovskiy) on 22/07/2026 at 15:01..
Add QLocale::toTimeFormat() benchmark

Benchmark the overload that takes FormatType enum instead of a
format string.

Pick-to: 6.11
Change-Id: I7d7d5b3578b229d14da4526e918ae2c8310107ea
Reviewed-by: Edward Welbourne <[email protected]>
(cherry picked from commit 072eadc6fd281744160d97540913f4117e93ebc3)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/8d5efb37701224a93176af970a052758a8872736

Git commit 2c83a52509666886ce4bb1ee3dd7ddc8b4aed79e by Qt Cherry-pick Bot (on behalf of Edward Welbourne) on 22/07/2026 at 15:01..
Allow IANA ID matching to go down to three letters

This was previously only allowed for GMT, but IANA does include a few
other three-letter abbreviations as (legacy) names for zones. UTC
should be picked up by an offset form before we get to the IANA ID
check, when offset forms are allowed for at all.

Fixes: QTBUG-148356
Change-Id: I285275ec9c6492af8cc01c1add0383f512d3d4a4
Reviewed-by: Thiago Macieira <[email protected]>
Reviewed-by: Lars Schmertmann <[email protected]>
(cherry picked from commit 0214f2ac71777093eb50320732eb09aafdf836b0)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/2c83a52509666886ce4bb1ee3dd7ddc8b4aed79e

Git commit f2a3e01ab1acae9b678c283823ec77b1e9b614d9 by SanthoshKumar Selvaraj on 22/07/2026 at 15:01..
ohos: Rename Q_OS_OHOS to Q_OS_HARMONY

The platform macro Q_OS_OHOS is renamed to Q_OS_HARMONY for consistency
with the "Harmony" naming in the HarmonyOS platform support. Update
the same in corelib, gui, network, plugins, testlib, widgets, and their
autotests.

Change-Id: I866e477d610a2b54856113b1bb4c8ee6415dd5b9
Reviewed-by: Liang Qi <[email protected]>
(cherry picked from commit 12b81b4ab38ef3e2cbafb2e9b40bacaf126a1674)
https://invent.kde.org/qt/qt/qtbase/-/commit/f2a3e01ab1acae9b678c283823ec77b1e9b614d9

Git commit eb5adf04c01d5c3ae9b338948181595693197d65 by Qt Cherry-pick Bot (on behalf of David Boddie) on 22/07/2026 at 15:01..
doc: Introduce link targets to make begin() and end() links useful

Auto-links to begin() and end() were unresolved in the context in which
they were used. While the STL-style iterators documentation might be too
general for an explanation, it is at least a starting point.

Pick-to: 6.11
Change-Id: I088116d10678f8f96afaf83c1f110e808b11aa4a
Reviewed-by: Topi Reinio <[email protected]>
(cherry picked from commit 031dc0eb547ee4618ae1e2aa8f6bfe34f8063e3c)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/eb5adf04c01d5c3ae9b338948181595693197d65

Git commit a8417cbfe69a548661e31f3c5080f7c2bc2399f0 by Qt Cherry-pick Bot (on behalf of David Faure) on 22/07/2026 at 15:01..
testlib: fix data races on the current test's identifiers

qDebug() and friends reach the loggers from whatever thread called them,
so generateTestIdentifier() and QXmlTestLogger::addMessage() read the
current test function and data tags while the main thread moves on to
the next row. Those strings don't outlive the test function either:
currentTestFunc points into a QByteArray local to invokeTest(), and the
QTestData rows belong to a QTestTable local to it. So a logging thread
could read freed memory, or a pointer that turned null between the check
and the dereference.

Locking the accessors doesn't help: they hand out a raw const char* that
the caller still uses after unlocking. Keep our own copies of the four
strings instead, refreshed by the main thread whenever the identifiers
change, and hand them out only under a mutex, via
QTestResult::IdentifierLocker.

Fixes the races TSan reports in tst_http2::goaway().

Task-number: QTBUG-141988
Pick-to: 6.11 6.8
Change-Id: I3a1d97b5b7169daac8191063f29c407ddda03eac
Reviewed-by: Marc Mutz <[email protected]>
(cherry picked from commit 685c04f14e88b0659e4a65682bb58f2be34b3a27)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/a8417cbfe69a548661e31f3c5080f7c2bc2399f0

Git commit db610f00e02cd368b058cade0e89669dbede95dc by Qt Cherry-pick Bot (on behalf of Seokha Ko) on 22/07/2026 at 15:01..
tst_QGraphicsView: Widen the scrollBarRanges test view to 400px

scrollBarRanges resizes the view to a 250x100 top-level window and
compares the scroll bar ranges against values derived from that width.
On OHOS the minimum window size (320x72 vp) is enforced, so the window
is widened past the requested 250px, the viewport no longer matches the
width the expected ranges were computed from, and the scroll bar range
comparisons fail.

Increase viewWidth from 250 to 400, above the enforced minimum. Every
expected value is relative to viewWidth/viewHeight, so widening it keeps
the comparisons consistent on all platforms. viewHeight, at 100, is
already above the minimum and is left unchanged.

Fixes: QTBUG-148261
Change-Id: I4f254f2dac9fd68ae0669a1998a1201f4d1bd32e
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit 051f4c75157af4fbfef93f452fa0b2ac10fcdc36)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/db610f00e02cd368b058cade0e89669dbede95dc

Git commit 5ceb732cbcbdd561dac83c11a7478981ae6841da by Qt Cherry-pick Bot (on behalf of Edward Welbourne) on 22/07/2026 at 18:31..
Fix misguided use of gcc-specific typeof() operator

Make receive the QList<QBA>::iterator result of std::partition into a
const_iterator to save the need to cast it to that type when using it.

Fixes: QTBUG-147648
Change-Id: I568ee15042597c7f7c1d65504ef2e927e35b5da1
Reviewed-by: Thiago Macieira <[email protected]>
Reviewed-by: Mårten Nordheim <[email protected]>
(cherry picked from commit cc8e548f1cabf4362eba1b0dba22b25b161b788e)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/5ceb732cbcbdd561dac83c11a7478981ae6841da

Git commit 9284b97becd481aa63c9b22da88d0c7ff2a5a2b3 by Qt Cherry-pick Bot (on behalf of Edward Welbourne) on 22/07/2026 at 18:31..
Fix serialization of dates to put a sign on >4-digit years

Various standards allow a year with more than four digits but insist
on a sign if it's beyond some length to be agreed between the parties
using the format for exchange of data; this ends up being 4 in
practice, which is assumed by the new temporal data parser.

Serialization's neglect of this previously went unnoticed because the
old parser rejected years with more than 4 digits, regardless of sign.
Added some test-cases for round-tripping of dates at the ends of the
range QDateTime can represent (albeit QDate can represent more).
Discovered by new benchmarks provided by Vadim Vysokoostrovskiy.

Pick-to: 6.11 6.8
Task-number: QTBUG-77948
Change-Id: I3081b6c5eef1c13155113e2c557caf9ae1c311b9
Reviewed-by: Thiago Macieira <[email protected]>
(cherry picked from commit 5563df5a8504b06cc8b6b51d8a24fd195ec4acc8)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/9284b97becd481aa63c9b22da88d0c7ff2a5a2b3

Git commit e9e4530de4b5079ee9016c570db5bda523445235 by Qt Cherry-pick Bot (on behalf of Edward Welbourne) on 22/07/2026 at 18:31..
Correct the bound on year width without sign when parsing dates

Amends commit 1d2f834985373e31f097971830547c56453d21b3 (6.12). If a
year has up to four digits it only needs a sign if it's negative.
Officially, the parties using the format to communicate dates can
agree any higher limit to how many digits they accept in a year before
needing a sign, but four is the common lower bound so always allow it.
A field width, when specified, can only increase beyond that.

Previously a field width could drop the limit below four, which was
not the intent. Discovered while investigating round-tripping of dates
with large positive years (serialization was neglecting sign).

Task-number: QTBUG-77948
Change-Id: I8af72a996abdd8b1bf38a03fdfbba10f94eacc37
Reviewed-by: Thiago Macieira <[email protected]>
(cherry picked from commit ff0484ab0f023be8ef05568a513b2d0079a4f2c3)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/e9e4530de4b5079ee9016c570db5bda523445235

Git commit 6045e572dfed16536e36e93f8d18a4284c97cedd by Qt Cherry-pick Bot (on behalf of Edward Welbourne) on 22/07/2026 at 18:31..
Add patch-file for the wrapper check

Aments commit 39ab9e00415ed0f4d77daded079b262a8353328d (6.10) to
include a patch file that those updating the third-party cycle header
can use to bring a new version in sync with this local change.

Pick-to: 6.11
Task-number: QTBUG-132900
Task-number: QTBUG-146335
Change-Id: I247a340c7a54225b3f109b6937af36056eee9fdc
Reviewed-by: Mårten Nordheim <[email protected]>
(cherry picked from commit e03d56ad27b12dda0b95954b51c3ffd905183bd0)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/6045e572dfed16536e36e93f8d18a4284c97cedd

Git commit 5c6731ec1f5d8dbb4629dcc9db05fa4f961dbf46 by Qt Cherry-pick Bot (on behalf of Edward Welbourne) on 22/07/2026 at 18:31..
Update our copy of FFTW's cycle counter to 3.3.11

FFTW has released a new version, with support for a couple more
platforms. Update the cycle-counter Qt's benchmarking uses from that.

[ChangeLog][QtTest][Third-Party Code] QtTest's benchmarks now use the
cycle-counter code from FFTW version 3.3.11. This adds support for
LoongArch and RISC-V.

Pick-to: 6.11 6.8
Task-number: QTBUG-146335
Change-Id: I325c71411d07e19fe4f87d3f1b746c76e10902f4
Reviewed-by: Thiago Macieira <[email protected]>
Reviewed-by: Ivan Solovev <[email protected]>
(cherry picked from commit 1cc40d3553eb7d7d42284266a4d8261c5e2e6cf4)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/5c6731ec1f5d8dbb4629dcc9db05fa4f961dbf46

Git commit 0f0b050f0182eb907070439fde10c3bdce89daf0 by Qt Cherry-pick Bot (on behalf of Edward Welbourne) on 22/07/2026 at 18:31..
Guard against overflow in QJalaliCalendar::isLeapYear()

In case year is large enough that multiplying by 683 may overflow,
first reduce it mod 2820 before doing the arithmetic whose result will
again be reduced mod that. Credit to OSS-Fuzz (issue 522989107) for
spotting the problem.

Add test cases for temporal parser and QDateTime based on the fuzzer
test-case for the latter that caught it. These tests shall only work
from 6.12, as older versions could not parse years with more than four
digits.

Pick-to: 6.11 6.8
Fixes: QTBUG-147418
Change-Id: Ife1ec2dbf991596ffd2a51a5f6221b94ff5affad
Reviewed-by: Mate Barany <[email protected]>
(cherry picked from commit 5b9849c62c8336ea75954d16544478acd022d267)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/0f0b050f0182eb907070439fde10c3bdce89daf0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.