summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QNetworkInformation[Win]: Catch potential exceptionsv6.4.16.4.1Mårten Nordheim2022-11-082-2/+15
| | | | | | | | | | | | | | | Some Windows SDKs seem to throw an exception (sometimes?) when calling ConnectionProfile::NetworkAdapter. Catch the exception and ignore it, we would return Unknown anyway. And just in case it is needed, do the same for GetConnectionCost. This requires enabling exceptions for the plugin. Fixes: QTBUG-108156 Change-Id: Ie6c5adb3715578aa94ef3391afae79d9aecdc5d3 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> (cherry picked from commit 35e54f9b7bba9ad7b1757e0b8f7d03859a694b34) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: Fix incorrect fullscreen dimensionsSamuel Mira2022-11-083-8/+123
| | | | | | | | | | | | | | | The insets used to calculate the correct height were not the best choice. It used display cutout insets which would work correctly on most devices, but in the case of an emulator or a device without a camera, it could fail to calculate correctly. Task-number: QTBUG-107604 Task-number: QTBUG-107709 Task-number: QTBUG-107523 Change-Id: I8c4da83ae7359a0c133dbeb02dbd2cd260565f78 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit d53ea82950e0662b8265642b840a12d9f9556888) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Fix qt_add_resources missing dependency regressionAlexandru Croitor2022-11-031-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Adding target dependencies instead of file dependencies to the qrc processing custom command broke regeneration of the qrc file when translation source files were touched, as well as caused flaky build failures. Originally, the target dependencies were added to work around an issue with the Xcode generator (a custom command needing a common target). Limit the usage of target dependencies 'approach' to the Xcode generator only. This fixes the regression for non-Xcode generators, but will still cause issues for iOS + Xcode. A proper fix for Xcode will need more research. Amends 5b0e765ab0dddba86662925cb44aeac748a286b7 in qttools Amends cfd5485d41b2bf519d5b3c5162726cce195782ac Fixes: QTBUG-107687 Fixes: QTBUG-108113 Task-number: QTBUG-103470 Change-Id: Ibddd05726deba2103c9c3c85a3fefd6d55798020 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> (cherry picked from commit c2aa05991d79df57f826606157056c658c6de797) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Restore lost documentation for QString::append(QStringView)Edward Welbourne2022-11-011-0/+8
| | | | | | | | | | | | | Lost in commit 2766322de37adba37e0d0d4b0054e55edff01c6c (at 6.0) as it was buried in the midst of a lot of QStringRef documentation. This commit restores the documentation originally added in commit 3238445b270d5fb98f4008cb10a8adcc2d35165c, but locates it among the other QString::append() overloads and adds a \overload directive. Change-Id: If7b98f1ae9ae8144c421a048c8a35be8474558c7 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit eb5f33c7a18f93002f64948a1c78b32fc678a5af) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Port QDir's implementation to use Q_D() and d_func()Edward Welbourne2022-11-011-28/+28
| | | | | | | | | | | | It had the d_func()s it needed, but wasn't using them. This prepares the way for QEDSP-ification. Task-number: QTBUG-105753 Change-Id: I8b7ba79818f27ae6a2281b276b95b94673f05648 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit 62a4fe434d4d9cb27a6285778fdab7e2ce43b61b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix documentation of QPartialOrdering::GreaterBalazs Erseki2022-11-011-1/+1
| | | | | | | | | | | When it was added, Greater's description was the same as Equivalent's. This commit solves it by a proper description. Fixes: QTBUG-106983 Change-Id: I9d9b71572921edb8c33209a0b37a138fff3cf962 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> (cherry picked from commit 7a6f43b7c2afe91dbbc23cc759555ce6fe789889) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Port default font resolve to SystemParametersInfoForDpiMorten Sørvig2022-11-013-16/+5
| | | | | | | | | | | | | | | | | | | | We were getting font metrics for the primary screen and then adjusting for the screen DPI get a screen-independent font size. This could fail in edge cases where the screen DPI was changed after app startup, but before the first window was shown. See QTBUG-105857. Use SystemParametersInfoForDpi() to query for font info at 96 DPI instead, which removes the need for tracking primary screen DPI. LOGFONT_to_QFont() still has one usage (qwizard_win.cpp) which provides a custom DPI for scaling, so we keep that function as-is. Fixes: QTBUG-105857 Change-Id: I1adf0ab3bf2c309e8fcb58093e86214fa11a2da8 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit edb00660e47a82ac24048841100d7d7e59a7805e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QProperty: only use MSVC bug workaround on MSVCFabian Kosmale2022-10-311-1/+10
| | | | | | | | | | | | | The fix for QTBUG-106277 appears to cause issues with older gcc versions in C++2a mode (for instance used in our headers check). Thus, use the old code for all non-MSVC compilers, which never had problems with it. Fixes: QTBUG-108039 Change-Id: If6a0ce6e8f41e9dc752614557e96c555ca0fe75c Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 62a2951795f117ff10a6d85bcff8d93a71fd58da) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QByteArray: in/deflate: compare different types as size_tMårten Nordheim2022-10-311-1/+2
| | | | | | | | | | | | | | Compiling for android a certain configuration warns about comparisons between types of different signedness. On 32-bit we cannot cast the unsigned type to qsizetype and on x64 we cannot cast the qsizetype to Zlib's type (both potentially truncating). So, cast both to size_t before comparing Change-Id: I0dd40c875b1a61a64f0574f0209a8549fc73164a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@qt.io> (cherry picked from commit c4cb464d74fb703d20b1bf53b3738531f92feae4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add flag that skips Qml import scanning to android deployment settingsAlexey Edelev2022-10-313-15/+31
| | | | | | | | | | | | | | If Qml module is not found it doesn't make sense to run any functionality that is related to Qml inside androiddeployqt. Add the deployment setting option that indicates this explicitly and set it to true when Qml module is not found by CMake or by qmake. Task-number: QTBUG-106939 Change-Id: I1e6cffbdd230007feffe7448617097c10238a6c9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 720d5cc1a47ad0702d51548009bdcf229368d6fc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* rhi: gl: Skip the prim.restart enable on WebGL2Laszlo Agocs2022-10-311-1/+8
| | | | | | | | | | | | Doing so generates an error as this value for glEnable is invalid with WebGL 2. The behavior is always as if this was enabled. (unlike in GLES 3) Task-number: QTBUG-107780 Change-Id: I3fc34329fc573a6fac8e4265d90ca93520e4e2ee Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> (cherry picked from commit 062efb305e1866482c03717ed1cf9717f45e5abb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Proper clearing of WinRT factory cacheAndreas Buhr2022-10-319-2/+136
| | | | | | | | | | | | | | | | | | | | If we use winrt's factories we have to make sure to to clear the factory cache when one of our dlls is unloaded or we will run into dangling factory entries which might result in crashes. So we have to make sure that winrt::clear_factory_cache is called on every dll unload. In order not to increase compile times and dependencies too much qfactorycacheregistration_p.h needs to be included in Qt code whenever we use winrt's factory cache. A rule of thumb being: Include qfactorycacheregistration_p.h whenever including winrt/base.h. Other Qt modules which use winrt's factories need to be updated too. Fixes: QTBUG-103611 Change-Id: I7ab24e4b18bffaca653c5b7f56a66ce99212e339 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit ffb9dee1b0954e4d4f9e9791175609a80ecafc31) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: link to the testlib tutorial section on skippingMitch Curtis2022-10-311-0/+3
| | | | | | | | | | | Short of expanding Qt Test Best Practices to have a section about QEXPECT_FAIL, we can link to some existing documentation that briefly covers it. Change-Id: I37bf2672e4b5b6e7315e009f86d03eeb7937d50e Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> (cherry picked from commit c30c76c84473b8b117b1542e75239973a7bcaf06) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* eglfs: Improve z-order handlingSérgio Martins2022-10-291-4/+18
| | | | | | | | | | | | | | | In 9ccbbeecbd we've added basic z-order handling, so main window always stacks behind tool windows. After extensive testing we found more basic cases to be handled: - Modal windows go on top - Qt::Popup goes on top of Qt::Tool Fixes: QTBUG-105707 Change-Id: I00eba330864c7abc31652226d55f66f4b7f44dc0 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> (cherry picked from commit 732581885fbf95f367c3fe7ee8d71e490cc6cfe3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* eglfs: kms: Make screen cloning functional by defaultLaszlo Agocs2022-10-292-41/+93
| | | | | | | | | | | | | | | | | | | | | | | It is not necessary to disable the thread-based drm event reading (QT_QPA_EGLFS_KMS_NO_EVENT_READER_THREAD) anymore when using screen cloning. Amends 820775166132b073a941f2389fba81db49619688 and 14bb413309092adc53e8451daff5690c4698c07d Note that this does not work when atomic commits are enabled. (i.e. running with QT_QPA_EGLFS_KMS_ATOMIC=1 and attempting to use screens that clone will not function as expected, regardless of which event reading method is used - that needs a rework of how atomic requests are handled, and is not something we are going to invest into given that atomic is not even used by default) Fixes: QTBUG-91882 Change-Id: Iba83688c7790d7e721db3704d422034b654a8d8a Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Andy Nichols <andy.nichols@qt.io> (cherry picked from commit 91d1ec3589b84e7f5d6611edd7e8f82cbfd38afb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Windows QPA: Remove tablet->mouse synth and fix Drag&Drop with touch/penAndré de la Rocha2022-10-293-3/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch avoids synthesizing mouse messages in the QPA for touch/pen input, and lets the GUI do mouse event synthesis for unhandled touch/pen events, if required, like in other platforms. This requires a workaround to avoid breaking drag and drop with touch/pen (or making it worse). DnD on Windows is based on the DoDragDrop() Win32 API, which does not work with touch/pen input, which in some cases cause a DnD operation started with touch/pen to hang until the mouse is moved. To avoid it we process pointer messages for touch/pen and generate mouse input through SendInput() to trigger DoDragDrop(), which then seems to work as expected. So now we inform QtGui that the Windows platform no longer sends synth-mouse events after tablet events (unsetting the flag added in f931e5e72d4617023bbea46cba2c0d61bb1efa4f); this completes what was attempted in 8ada0633cd58e0608df2e16880f1293286025504. Fixes: QTBUG-106368 Fixes: QTBUG-57577 Fixes: QTBUG-100788 Task-number: QTBUG-77414 Task-number: QTBUG-104594 Change-Id: I46db3c74be2a95cf2d94ba930398e58dc930d2db Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 31e7790102b260344893eaa8bf8b7b1a0f95e3b7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Fix typo in container documentationPaul Wicking2022-10-291-1/+1
| | | | | | | | Change-Id: Ia36cdff5554955e5193a10b9f0e4aab3c61e5f09 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 7943cdcde7ec6d3203aefac2964444bba4c41f98) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qnswindow (-backgroundColor) - return 'clear color' for Qt::PopupTimur Pocheptsov2022-10-291-2/+7
| | | | | | | | | | | | That's what we initially did for borderless windows and we need it in order to draw rounded corners for context menus. Fixes: QTBUG-106108 Change-Id: I6e4254b714ad7a094aa295546d5ac7fba5e21b13 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 6a839e0ae4cb1eddd290d64b152a2571f3586ed2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* macOS: Don't include QSystemTrayIcon windows in Dock menu window listTor Arne Vestbø2022-10-291-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | As of 3fcdb6cb6e35a37f9b511ec2705336102c194d6b we now have a hidden Window menu, which results in macOS also populating the Dock menu with the application's windows. But since the AppKit logic for populating the window menu happens when the window is shown, and we create the menu after many windows have been already shown, we had a workaround to add the shown windows manually. Unfortunately this workaround didn't take into account the NSWindow excludedFromWindowsMenu property, nor did it include various other checks that AppKit itself uses to decide if a window should be included in the window list, resulting in adding the NSStatusBarWindow that AppKit uses to manage the status bar items. Instead of trying to replicate the AppKit logic, we toggle the excludedFromWindowsMenu property back and forth, which triggers AppKit to reevaluate the situation for each window, and add it to the window menu if necessary. Fixes: QTBUG-107008 Change-Id: I6c7f61c1f4610fec9ce1f814fcea2b6140230602 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit 737011dd026018986c74e4155b2470777b676baa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QString::asprintf: fix handling of a present-but-empty precisionThiago Macieira2022-10-282-0/+38
| | | | | | | | | | | %.f should be handled like %.0f. You probably don't want it for strings, though. Fixes: QTBUG-107991 Change-Id: I07ec23f3cb174fb197c3fffd1721a941fbcf15e1 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit bdee2c9760109d8e483c3b0e5c99fabc48bf21f5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QOperatingSystemVersion: Add macOS Ventura (13.0)Mårten Nordheim2022-10-282-0/+8
| | | | | | | | | | | Altered cherry-pick slightly to accommodate documentation suggestion for 6.4. Change-Id: I9504b41b743b9874fcc6324d98b66a9c5160e845 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit 486651db3c2d5cce4399dc4f58ce7d78a94ef950) Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* tst_qapplication: Add dependency to helpersMårten Nordheim2022-10-281-0/+5
| | | | | | | | | It's convenient. Change-Id: I1877754bee038e0313765efe2dc845ea5504cc61 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit d1e8a9978bfc2c10c19e17512136460bac9d6665) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* wasm: convert and propagate filetype accept listMorten Sørvig2022-10-282-8/+67
| | | | | | | | | | | | | | | Backport the LocalFileApi::Type::fromQt() function from the dev branch, and adapt it for use with the <input type=file> file dialog API, which expects an accept string in a certain format (see code). A similar change will be made for the dev, with adaptions suitable for that branch. Change-Id: I11585ae3d445634e123ce6394cada7b34af4d85a Fixes: QTBUG-105472 Reviewed-by: Mikołaj Boc <Mikolaj.Boc@qt.io> Reviewed-by: David Skoland <david.skoland@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Apple: Use 'en' instead of 'English' as development regionTor Arne Vestbø2022-10-282-2/+2
| | | | | | | | | | | | This is consistent with what $(DEVELOPMENT_LANGUAGE) reports, as well as the Apple Locales Programming Guide which states that "Locale names such as “English”, “French”, and “Japanese” are deprecated in OS X and are supported solely for backward compatibility." Change-Id: I99779d678ef9d4ea90249572f2f977e9b4df6c62 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit d84ddf5905ce9f68612519b72cdd077077bd0419) Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix a bug in detecting systemAmir Masoud Abdol2022-10-281-1/+1
| | | | | | | | | | | Since QtAutoDetect is called before the project, we still don't have access to our IOS, WATCHOS, TVOS variables, and we must use CMAKE_SYSTEM_NAME variable instead. Change-Id: I61afe216baec85b3fcd489957f4b6774134f8078 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 626ebf4738ca0df93d0b9e5ccdb305cb1dfa0839) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: Light/dark modes detectionBartlomiej Moskal2022-10-287-0/+43
| | | | | | | | | | | After commit: 2248487c6ca9d5459c70a16868d5aeee07d96157 light/dark mode detection is supported by Windows and macOS. This commit add similar implementation on the Android side. Task-number: QTBUG-83185 Change-Id: Id1ece98e91a31759b58d651ef62b3715ea25d85f Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 76abdaafb540be90e87c6689cc64040e95147777)
* qlogging: avoid C-style castsJohannes Kauffmann2022-10-281-5/+5
| | | | | | | | | | Amends e38a48200b7e0d20c0ab564bb59bd978d72677b7. Change-Id: I053cb676398ae3ebc2ba68f0bf7359a0870303bc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit 6707b881cfdc4ef3bd954f8d91e04c00f69b816e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Windeployqt command line module expansionTimothée Keller2022-10-271-2/+4
| | | | | | | | | | | Added command line option for passing core5compat module in windeployqt Task-number: QTBUG-104845 Change-Id: I6a0e13532edac4580e03d83be79f7db4ac54e3bf Reviewed-by: André de la Rocha <andre.rocha@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> (cherry picked from commit 61a4880cb39e145d9b8e6f78fa70bfc0d69d4904) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Windows 11: draw checked menu items with an explicit backgroundVolker Hilsheimer2022-10-271-0/+11
| | | | | | | | | | | | | | | | | | | | On Windows 11, the UXTheme API draws both MBI_PUSHED and MBI_HOT in the exact same color as the icon grove. For menu items with icon, but with no explicit "On" icon, that makes it impossible to see whether the item is checked. Work around this problem by drawing the background in a light version of the highlight color, which simulates the style on Windows 10. Note: In modern Windows 11 menus, checkable items with icons render both the checkmark, and the icon next to each other. Fixes: QTBUG-98354 Change-Id: I830eca5cdb3317f69dd5c863586e0b0eaa8774d2 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit b3ce494bac20aae52a530bcd990b027f37fc3464) Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QBenchlib/Perf: don't try to benchmark the kernelThiago Macieira2022-10-271-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The kernel has become more paranoid since 2013, when I originally wrote this code. The kernel.perf_event_paranoid sysctl controls the paranoia level[1]: === ================================================================== -1 Allow use of (almost) all events by all users. Ignore mlock limit after perf_event_mlock_kb without ``CAP_IPC_LOCK``. >=0 Disallow ftrace function tracepoint by users without ``CAP_PERFMON``. Disallow raw tracepoint access by users without ``CAP_PERFMON``. >=1 Disallow CPU event access by users without ``CAP_PERFMON``. >=2 Disallow kernel profiling by users without ``CAP_PERFMON``. === ================================================================== Since the default is 2, we QBenchlib has been failing with EACCESS: PASS : tst_MyClass::initTestCase() QBenchmarkPerfEventsMeasurer::start: perf_event_open: Permission denied [ChangeLog][QtTest] Fixed support of Linux performance counters for QBENCHMARK, which used to fail with "Permission denied" errors in default configurations. Now, QtTest will automatically fall back to profiling only userspace, like the perf(1) tool does. [1] https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/sysctl/kernel.rst#perf-event-paranoid Change-Id: I3c79b7e08fa346988dfefffd171f897be7794935 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: David Faure <david.faure@kdab.com> (cherry picked from commit e1089e0520482e62336a8d6efa40e064fd9796d8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QLocale: merge the code for some system locale queriesThiago Macieira2022-10-272-42/+31
| | | | | | | | | | | QSystemLocale is now defined for QT_NO_SYSTEMLOCALE builds (bootstrap), but no implementation will be present. That's just to get the enum declarations. Change-Id: I3c79b7e08fa346988dfefffd171fa00fde8ab080 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit 089bbfc30758265d3fce804b950f56a15225e32c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Bootstrap: fix MinGW build with -maesThiago Macieira2022-10-271-0/+4
| | | | | | | | | | | | | | In bootstrap mode, we don't build qsimd.cpp and don't check for CPU features, but specifying -maes in the compiler command-line can still enable the AES hash support in qhash.cpp. This has probably been broken since Qt 6.4 with commit 4be85491e069081cbc9dc29202a25d0771b61f06. qhash.cpp:(.rdata$.refptr.qt_cpu_features[.refptr.qt_cpu_features]+0x0): undefined reference to `qt_cpu_features' Change-Id: I07ec23f3cb174fb197c3fffd17216241cfd1ab19 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 11cc74b0661bdad122857e0405cced57d9a6bad7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Tests: fix namespaced build on WindowsThiago Macieira2022-10-271-0/+2
| | | | | | | | | | | | | Amends 371214dea7f92b3170d0239b3d9944275adf951a. tst_qfile.cpp:401:9: error: reference to ‘QTest’ is ambiguous qttestglobal.h:27:11: note: candidates are: ‘namespace TestNamespace::QTest { } filesystem.h:28:11: note: ‘namespace QTest { }’ Change-Id: I07ec23f3cb174fb197c3fffd17215c1eeeadf7fd Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit d18d34134115d003808a7284c095bed694ebf685) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Cleanup the watchOS and tvOS References from CMake filesAmir Masoud Abdol2022-10-271-62/+16
| | | | | | | | | | In addition, I simplified some of the routines as we don't need the extra check for them. Task-number: QTBUG-107903 Change-Id: Idaf6ab1338a54bc1a9f242fcc8400ae200174beb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit f157e223c21c79ebaf7e5e1a23dbdb3d8da1a59e)
* xcb: Fix segmentation fault on destruction of QXcbConnectionRob De Reycke2022-10-271-1/+2
| | | | | | | | | | | The same screen was detected twice. Fixes: QTBUG-104319 Change-Id: Id1f93d68de0306604f2e6a9104962a1d3b0db366 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Jonas Kvinge <jonas@jkvinge.net> (cherry picked from commit e39ca06dbc3051c8e82c458ccd7314a2adbff27e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* rhi: gl: Make sure stencil write is enabled when clearingLaszlo Agocs2022-10-261-1/+3
| | | | | | | | | | | | If the last pipeline had a different stencil (write) mask, that would affect the clear. That is not ideal. Exercised by the upcoming stenciloutline manual tests. Change-Id: I925e85a2b7fb884e5ae9ed327b4b05c9bf36484b Reviewed-by: Christian Strømme <christian.stromme@qt.io> (cherry picked from commit 06a5118a4a2b76df2c2c4190ac57fa15857ecf8c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QStringConverter/AVX2: fix build with MSVC 2022Thiago Macieira2022-10-261-1/+1
| | | | | | | | | | | It doesn't like 0x80 passed to a char, causing a warning qstringconverter.cpp(196): warning C4309: 'argument': truncation of constant value Change-Id: I07ec23f3cb174fb197c3fffd17215b6f83476ebf Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 9968efb3cf6124606ee412f0b9e64c98113ab668) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove the Unnecessary CMake Module, `include(CMakeParseArguments)`Amir Masoud Abdol2022-10-265-11/+0
| | | | | | | | | | | | From CMake 3.7 both flavors of `cmake_parse_arguments` are natively available in CMake, and loading the `CMakeParseArguments` module is not needed anymore. Fixes: QTBUG-107574 Change-Id: I7c8a6c5871cdb2f92a4aa43932b6f2ee99e1f57f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> (cherry picked from commit 10d5c0adafb7989c44794caef14a192cce9673a7)
* QWindowsFontDatabaseBase: Override both fontEngine functionsMårten Nordheim2022-10-262-0/+8
| | | | | | | | | | | MinGW-clang gives warning(-as-error) because the overridden function which is there shadows the other overload, making it inaccessible. Change-Id: Ie5684b60a13d71966b9741fcfcdacbd37fe0df85 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> (cherry picked from commit 6c832731304414932fafa10c300707192e11e751) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QSctpSocket: Update windows-note to specify 'class'Mårten Nordheim2022-10-262-2/+2
| | | | | | | | | | | | | When we say 'this feature', it can be misunderstood to mean the subject of discussion in the immediately preceding paragraph. Fixes: QTBUG-107720 Change-Id: I726c7a591f01e59c3c36c802abeb17b51abf0777 Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit 4c7524cbe8f7d53faeda8d4ecb65ee050f209e8b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Specify source and build directory explicitly for multi-ABI external projectsAlexey Edelev2022-10-261-1/+5
| | | | | | | | | | | | | | | | | | | | When building Android multi-ABI application in source tree the ExternalProject_Add call generates a ninja rule that looks as follows: cd <BINARY_DIR> && cmake <CMAKE_ARGS> <SOURCE_DIR> In general case the rule works correctly unless SOURCE_DIR contains CMakeCache.txt. In this case the cmake call uses the existing CMakeCache.txt as the reference and tries to reuse the build directory of the main ABI. It leads to the inconsistency for multi-ABI builds and rewriting CMakeCache.txt. Passing both '-B' and '-S' arguments explicitly avoids using CMakeCache.txt from a main build/source directory and fixes in-source multi-ABI builds. Fixes: QTBUG-107843 Change-Id: I010b47bff81052401aebe459e7893838a9b99bc1 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 97007e1aced516e178b8b6891b5fd1a4d26af2bb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* FontEngine[DirectWrite]: Mark interface functions noexceptMårten Nordheim2022-10-261-10/+10
| | | | | | | | | | | MinGW-clang warns(-as-error) that the overridden functions are not marked noexcept like in the original class. Change-Id: I7c5663b82e0f4449e27fd3842f7b37015fd5f4ea Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 6d46788e43b3c949d8c5b5946dead7e7a6a54735) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: fix include statement for Android Extras classesAssam Boudjelthia2022-10-261-0/+6
| | | | | | | | | | | | use \inheaderfile QtCore/private/qandroidextras_p.h to override the default include statement. Change-Id: I6ab691fc23d04b5f174729e9828039153bc05d1e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io> (cherry picked from commit 89e92a11e7b43a4f99c5a45f2cc641b3b59f5bcc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qfilesystemengine: port to qsizetypeJohannes Kauffmann2022-10-251-3/+3
| | | | | | | | Task-number: QTBUG-103525 Change-Id: If17227630d48f8170c5ec08ba6bed6baaad5582b Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit 60de00cb2fccbb407933b04b5236b2dc22b47dfd) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* benchmarks: fix configuring with -no-feature-sqlJohannes Kauffmann2022-10-251-1/+3
| | | | | | | | | | | With -no-feature-sql, CMake would error out because the target Qt6::Sql didn't exist. Fix this by checking if the target exists. Task-number: QTBUG-102480 Change-Id: I411631acfd336ea699833954f86711067d160c04 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 30eac4a4f9df0b7402fe70499be9385e7ee8737e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qlogging: use qsizetype to fix Wconversion warningsJohannes Kauffmann2022-10-251-8/+8
| | | | | | | | | | | While the strlen() calls don't raise warnings themselves, it seems like they were artifacts of indexOf() returning int instead of qsizetype. Task-number: QTBUG-103527 Change-Id: I32fbf69feca38a5977dde084bef9993f24843ccf Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit e38a48200b7e0d20c0ab564bb59bd978d72677b7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* wasm: disable run-time check for specialHTMLTargetsMorten Sørvig2022-10-251-0/+38
| | | | | | | | | | | | | | | | | | | | Recent versions of Emscripten may abort if module_property() is used to look up specialHTMLTargets, which makes run-time checking impossible. The abort is implemented on the JS property getter on the Module object, which means that it's not possible to bypass this by using e.g. EM_ASM instead of the C++ API. Disable usage of specialHTMLTargets on emsdk > 3.1.14 for now, until we can add API (or find some other means) for opting in. This commit also adds functions for comparing Emscripten versions. Change-Id: Ibe5d1a82f267fa95dd62cdfc66595bc23036933f Reviewed-by: Aleksandr Reviakin <aleksandr.reviakin@qt.io> Reviewed-by: Lorn Potter <lorn.potter@gmail.com> (cherry picked from commit 4711f078b77011f389a3a5af368e76c72799bb9b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use consteval in QT_PROPERTY_DEFAULT_BINDING_LOCATIONPatrick Stewart2022-10-251-1/+7
| | | | | | | | | | | | | | | | Adds a consteval QPropertyBindingSourceLocation::fromStdSourceLocation to make sure the QPropertyBindingSourceLocation is created at compile time. This is a workaround for what seem to be bugs in MSVC 2019 and 2022, which otherwise don't regard QPropertyBindingSourceLocation(std::source_location::current()) as a constant expression. Fixes: QTBUG-106277 Change-Id: Ic2379987b278cc0c43c1eb929120c99f5cd95fdf Reviewed-by: Marc Mutz <marc.mutz@qt.io> (cherry picked from commit 7979665362fe3f86f2ca9cc2a669cce262bd7322) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Allow specifying different linkers for MinGWMårten Nordheim2022-10-251-2/+2
| | | | | | | | | | | Locally I cannot build Qt with the default ld linker. Only enabled bfd and lld because mold and gold is not available for Windows. Change-Id: Ib57562b07219acc47f53fe5b0944f54d9c2a6ba6 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 481fb5a06a139ea47342ad1e0aa334484bb5104b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qtwindowsglobal: Fix mixed-enum operations warningMårten Nordheim2022-10-251-1/+3
| | | | | | | | | | | | | With c++20 doing operations between different enums is warning(-as-error). Declare operator-overloads for a particular pair of enums to make this compile again. Requires giving one of them a name as it was previously unnamed. Change-Id: I23296117b6d9a84273da6639582e075d631e5602 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit ba4710a33f408508772464c1e98ecab4378e4ecc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>