[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.11'. Changed from 4c0a34ae01f8370e548fd69d0d4400afda4aba9a to 056275224e2648a37a5527ca141f6912646d4645 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 0fce516a3ebc6db30ff729ac37272d9e8708afb8 by Qt Cherry-pick Bot (on behalf of Oliver Wolff) on 18/08/2026 at 06:03.. windeployqt: Fix nt header usage for "mixed deployment" 32 bit targets mNtHeaders is always host dependent. If the target architecture is different from the host the deployment might fail. One symptom would be that windeployqt will not be able to find dependencies of 32 bit binaries and misdetect them as release builds. In some of the structures that are used, the member offset is architecture dependent. For example DataDirectory has an offset of 96 in IMAGE_OPTIONAL_HEADER32 and 112 in IMAGE_OPTIONAL_HEADER64. The fix is to use the templated function parameters. These are target architecture dependent and thus contain the right information. While at it the functions were changed to static functions so that the breakage of using mNtHeaders cannot be reintroduced by accident. The remaining usages of mNtHeaders are fine as the offsets that are obtained there are arch independent or 0. The patch amends cceae37a137 which introduced the issue. Change-Id: Icfc81a42c086d73090401d843801d1ae27722a59 Reviewed-by: Wladimir Leuschner <[email protected]> (cherry picked from commit 1f83c2cb3e88dc6926e936be563ec7c5c8554cbb) Reviewed-by: Qt Cherry-pick Bot <[email protected]> (cherry picked from commit d781a11d5f2794cdec00ebb7b5f41c493190bb3e) https://invent.kde.org/qt/qt/qtbase/-/commit/0fce516a3ebc6db30ff729ac37272d9e8708afb8 Git commit f71dfbdda6f72ebc2ec5773d526f05a022b1dd34 by Qt Cherry-pick Bot (on behalf of Oliver Wolff) on 18/08/2026 at 06:03.. Windows QPA: Size the window icons for the DPI they are shown at createHIcon() sized the title bar and task bar icons using GetSystemMetrics(), which reports metrics for the system (primary monitor) DPI only, and requested the pixmap with a device pixel ratio of 1. On a monitor with a fractional scale factor the resulting HICON therefore had the wrong physical size, leaving it to DWM to rescale the bitmap, and QIcon could not pick a representation authored for the actual scale factor. Ask for the metrics with GetSystemMetricsForDpi() instead and request the pixmap at the corresponding device pixel ratio, so that the icon is delivered in the physical size that is expected and QIcon can select a matching representation, if the icon provides one. The DPI to use differs per icon. The small icon is drawn in the window's title bar, so it is sized for the monitor the window is shown on, which is determined via GetDpiForWindow(). The big icon is used by the task bar and the Alt+Tab dialog. The task bar is shown on every monitor, so there is no size that is correct on all of them; it is sized for the primary monitor, which keeps it sharp where the task bar usually is. Note that savedDpi() cannot be used for the title bar icon, since setWindowIcon() is already called from the constructor, whereas the saved DPI is initialized in initialize(). Fixes: QTBUG-148524 Pick-to: 6.8 Change-Id: I4eac19b4f6c288dc7edf7027d3544072433fc4f0 Reviewed-by: Wladimir Leuschner <[email protected]> (cherry picked from commit c82490f04f29b67df0e3c4dad7c79ecbc1e68475) Reviewed-by: Qt Cherry-pick Bot <[email protected]> (cherry picked from commit 04736a57c70836ede42685970ed4b64a216c0ab9) https://invent.kde.org/qt/qt/qtbase/-/commit/f71dfbdda6f72ebc2ec5773d526f05a022b1dd34 Git commit beac62fd594f9e3b0a51e77aae8280ee31137ad6 by Qt Cherry-pick Bot (on behalf of Oliver Wolff) on 18/08/2026 at 06:03.. Windows QPA: Recreate the title bar icon on DPI changes The title bar icon is created for the DPI of the monitor the window is shown on, but handleDpiChanged() did not recreate it. Moving a window to a monitor with a different scale factor therefore left it with an icon sized for the previous monitor, which DWM then had to rescale. Recreate the icon for the new DPI, as is already done for the theme cache and the window mask. The task bar icon is sized for the primary monitor and is therefore unaffected by the move; it is recreated unchanged, so that the task bar does not have to reload it. Fixes: QTBUG-148525 Pick-to: 6.8 Change-Id: I241422fb801e6649ab991839b47a737dbc398305 Reviewed-by: Wladimir Leuschner <[email protected]> (cherry picked from commit 2542ae3da1cfa71eb85693d0cbf6cd18db8b915e) Reviewed-by: Qt Cherry-pick Bot <[email protected]> (cherry picked from commit 8d17921adb6139709c4cc3fb757eaf418c8364e5) https://invent.kde.org/qt/qt/qtbase/-/commit/beac62fd594f9e3b0a51e77aae8280ee31137ad6 Git commit 056275224e2648a37a5527ca141f6912646d4645 by Qt Cherry-pick Bot (on behalf of Oliver Wolff) on 18/08/2026 at 06:03.. Windows QPA: validate GlobalLock result in OLE clipboard data receive path GlobalLock() can return nullptr for a discarded GMEM_DISCARDABLE handle even after GlobalSize() succeeds. Guard the pointer before passing it to QByteArray::fromRawData to avoid a null pointer dereference when reading clipboard or drag-and-drop data from an external IDataObject. Task-number: QTBUG-148512 Pick-to: 6.8 Co-Authored-By: Claude Opus 4.8 <[email protected]> Change-Id: I56358cbd98f55b92526c05fbd1ecc7d0f0e7ea02 Reviewed-by: Wladimir Leuschner <[email protected]> Reviewed-by: Morteza Jamshidi <[email protected]> (cherry picked from commit 8bcd3fd0658e95b2ad321dec4ff18735bcda31ff) Reviewed-by: Qt Cherry-pick Bot <[email protected]> (cherry picked from commit 382fa8f8bfe9f57a39b1da00e444c57e6f772c93) https://invent.kde.org/qt/qt/qtbase/-/commit/056275224e2648a37a5527ca141f6912646d4645