summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Fix typosKai Köhne2022-06-1320-26/+27
| | | | | | | | Found by codespell Pick-to: 6.4 Change-Id: I4907e423b6b345acf82f2d7e0ed62479719d694e Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Android 13: Fix warnings on starting an applicationSamuel Mira2022-06-131-2/+2
| | | | | | | | | | | | On Android 13, currently in beta, android triggers a warning because it is using a deprecated getDrawable function. The patch changes it to use the non-deprecated alternative as suggested in the warning. Fixes: QTBUG-103568 Pick-to: 5.15 6.2 6.3 Change-Id: I3e629e7b75044bfb51874256895be0ec7e1088f8 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* Don't crash when removing the last visible tabVolker Hilsheimer2022-06-132-4/+37
| | | | | | | | | | | | | | | | | | | | The code incorrectly tried to ensure that the firstVisible tab was a valid index, even though there might not be any visible tab left after removing the last visible tab. The same logic didn't exist of the lastVisible tab, so we tripped the assert in qBound, as max (being -1) ended up smaller than min (0). Fix this by removing the wrong correcting of firstVisible to be always valid. Make sure we emit currentChanged with -1 when no visible tab is left after removing the current tab. Add a test. Fixes: QTBUG-104003 Pick-to: 6.3 6.2 Change-Id: I27e6438a02d0a0f1ac4d0e0160cee4f33b3f3766 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Update window geometry when QWindow::m{in|ax}imumSize is updatedJan Arve Sæther2022-06-133-22/+51
| | | | | | | | | | | | | | | | | | | | More specifically, if either minimum or maximum size are updated, make sure that the current window geometry is updated so that it is within the minimum and maximum sizes. Previously, these constraints was only respected by the window manager when the user resized the window. For widgets this already worked, because a top-level widget will take care of respecting these constraints if they are changed. Since QWindow::setMinimumSize and QWindow::setMaximumSize started to share so many common things, a new function (setMinOrMaxSize_helper()) is added. Task-number: QTBUG-102771 Change-Id: Ia4b2680dcf865f84a3cf6424187f9a6036b76386 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QMenu: Adjust the position of the submenuWang Fei2022-06-131-1/+1
| | | | | | | | | | When the submenu is about to exceed the screen, set the position of the submenu to the left border of the main menu Fixes: QTBUG-104050 Change-Id: I8935f1bfceb93cfa1097391689f4233991394978 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* QSettings: fix a typo in the docLaszlo Papp2022-06-111-1/+1
| | | | | | Pick-to: 6.4 6.3 6.2 Change-Id: I059f603f3cc66a40e84179ac3f2a07de3bf31761 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Use CSS classes on html list items for checkbox supportShawn Rutledge2022-06-114-15/+53
| | | | | | | | | | | | | | If we replace the bullet character with a UC checkbox character, it looks ok in a browser, and the HTML parser can recover the BlockMarker attribute from the css class. [ChangeLog][QtGui][Text] Checkbox list items can now be read and written in both HTML and Markdown, including conversions. Task-number: QTBUG-103714 Change-Id: Ic6b74512075cd4ac16d6f80fdf55b221447491a9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* CMake: up the minimum C version to C11Thiago Macieira2022-06-111-5/+2
| | | | | | | | | We're in 2022. A 11-year-old C standard probably suffices, especially since we require C++17 anyway. Pick-to: 6.4 Change-Id: Ibcde9b9795ad42ac9978fffd16f3555327097ded Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove deprecated qgl.h from sync.profileAlexey Edelev2022-06-111-1/+0
| | | | | | | | | The file no longer exists, so the entry is redundant. Amends f08038fca79b0828da11fbf35f4165d6efa4de2f Change-Id: I366a6bd34c7dee57bdd151ee6ecdb76c6c5c095a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Cocoa: fix build: add missing includeThiago Macieira2022-06-101-0/+1
| | | | | | | | | qcocoansmenu.mm:21:38: error: implicit instantiation of undefined template 'QVarLengthArray<unsigned short, 10>' Pick-to: 6.2 6.3 6.4 Change-Id: Iba16e8ea451b444ab213fffd16f4da39dfcc343d Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QNetworkReply: Fix the test compilationLaszlo Papp2022-06-101-0/+1
| | | | | | | | | | It would not compile on my Linux box due to using QVariantMap, but not actually including QMap itself. Using gcc 9.3.1 on CentOS 7. Pick-to: 6.3 6.4 Change-Id: I808a270c814a906030cb34b197d3a2a85ba384e1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jesus Fernandez <jsfdez@gmail.com>
* Windows: fix DeferredDelete events processing on QThread::terminate()Vladimir Belyavsky2022-06-102-1/+90
| | | | | | | | | | | | On finishing/terminating a thread, when processing posted events, we need to consider QThread's own data instead of caller thread's data. Otherwise we can get into unexpected situations such as double destruction of an object, premature destruction, etc. Fixes: QTBUG-103922 Pick-to: 6.4 6.3 6.3.1 6.2 5.15 Change-Id: Idf77221ebbaa0b150ee2d0c296b51829ae8dc30e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* androiddeployqt: use QFile::exists instead of QDir().existsAlexandru Croitor2022-06-101-3/+3
| | | | | | | | | Internally QDir().exists calls QFile::exists(filePath(name)) Pick-to: 6.2 6.3 6.4 Change-Id: I2993d924268b10135bd9df4e9f8165b869946efc Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* androiddeployqt: Only pass qt_install_dir/qml directory if it existsAlexandru Croitor2022-06-101-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | In Conan's case, the qtbase installed package directory lacks a qml directory. We pass that as a valid qml import path via CMake -> deployment json file -> androiddeployqt -> qmlimportscanner which causes the qmlimportscanner to fail with qmlimportscanner: No such file or directory: "~/package/some_sha_1/qml" Invalid json output from qmlimportscanner. which in turn fails the androiddeploqt build step. Make sure to only pass qtbase_install_dir/qml if it actually exists. Amends 4ef3da04c3390f02bcb0507128372e6a299dc8fd Amends c08b9a49ba70b1cbb0704668dd3f2c487d7f585e Pick-to: 6.2 6.3 6.4 Fixes: QTBUG-104056 Task-number: QTBUG-88519 Task-number: QTBUG-89588 Change-Id: I4310eb4e265ae8d3e3f09e1e1dbed79210e23de6 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* CMake: Ensure top-level builds are affected by our chosen log levelAlexandru Croitor2022-06-102-11/+33
| | | | | | | | | | | This will hide the configuration summary and cmake feature summary and found packages output upon reconfiguration. Pick-to: 6.2 6.3 6.4 Task-number: QTBUG-104128 Change-Id: I42270b99e45076052ec176df4652661cae10ac0c Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* CMake: Show configuration summary on first configurationAlexandru Croitor2022-06-101-5/+38
| | | | | | | | | | | | | | | | | | | | | or when feature changes are detected, even when the log-level is set to NOTICE (which is the default for non-developer-builds). We want to show the summary during the first configuration so we don't force users to look into the config.summary file. We want not to show the summary upon reconfigurations, to keep regular reconfigurations as quiet as possibe, so it's easy to notice any new warnings. Amends e2a0ddbb69640c94b4ee107260a088d5c1c7e273 Amends 384dfceb532cada5f4be96430c8c7c866f40c933 Pick-to: 6.2 6.3 6.4 Fixes: QTBUG-104127 Change-Id: I506f33b4bae9da8957e04bb69c206bf00e3f7b0e Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* moc: Improve formatting of outputUlf Hermann2022-06-101-1/+1
| | | | | | | | If we are going to append an else clause, keep it on the same line as the closing brace. Change-Id: Idfa0eec49240086dc24268aebbf610d64a2f53d0 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* CMake: Move all CMake Coin builds to be out-of-sourceAlexandru Croitor2022-06-102-2/+10
| | | | | | | | | | Cross-builds already were out-of-source. Move non-cross-builds to out-of-source as well. Fixes: QTBUG-82820 Fixes: QTBUG-96513 Change-Id: I5bef08f18a16e51fe2c501565699494b46546f84 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Find system harfbuzz even if pkg-config is disabledJoerg Bornemann2022-06-101-9/+26
| | | | | | | | | | | FindWrapSystemHarfbuzz.cmake relied on pkg-config to find system harfbuzz. This patch makes it find system harfbuzz even if pkg-config is not available or disabled. Pick-to: 6.2 6.3 6.4 Task-number: QTBUG-103894 Change-Id: I2a8fc64c738c7604f47de89f387002e40a9fa5e0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Fix check for system harfbuzz if pkg-config is unavailableJoerg Bornemann2022-06-101-12/+13
| | | | | | | | | | We need to check whether pkg_check_modules returns success before setting up target name etc. Pick-to: 6.2 6.3 6.4 Fixes: QTBUG-103894 Change-Id: I12702639683723d976e93be95443099b88885869 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Make configure -no-pkg-config actually workJoerg Bornemann2022-06-101-3/+8
| | | | | | | | | | | | | Turning off pkg-config with the configure flag -no-pkg-config did not work. There are different defaults for FEATURE_pkg_config on different platforms (e.g. Linux: ON, Windows: OFF). The existing code that calculated the initial FEATURE_pkg_config value assumed that the default is OFF and never turned the feature off. Pick-to: 6.2 6.3 6.4 Fixes: QTBUG-104123 Change-Id: I33b9687c55c60d4ec9224324951a8838741ee976 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fallback to another file dialog implementation when XDP is inaccessibleIlya Fedin2022-06-093-33/+53
| | | | | | | | Fixes: QTBUG-98988 Pick-to: 6.4 6.3 6.2 5.15 Change-Id: Idca1ab4cae0e9eabebc599f3c8efa136a7973918 Reviewed-by: Jan Grulich <jgrulich@redhat.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* FatalSignalHandler: print the signal name on crashThiago Macieira2022-06-083-4/+36
| | | | | | | | | | | | | It's easier to remember what "SIGSEGV" means instead of "11". GNU libc has offered sigabbrev_np() (non-portable) since 2.32; for older libcs, we'll be happy with a hardcoded list. Selftest updated to match... though it didn't seem to be necessary. Pick-to: 6.4 Change-Id: I5ff8e16fcdcb4ffd9ab6fffd16ebc66ecf6e9465 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* QLocale: use qsnprintf instead of deprecated sprintfMarc Mutz2022-06-081-1/+1
| | | | | | | | | | | | Fixes warnings such as qtbase/src/corelib/text/qlocale_tools.cpp:321:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations] from AppleClang. Pick-to: 6.4 6.3 Change-Id: Ief10e99abfa0a56c24622ac79db719dde58a4210 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix renameat2 configure checkVolker Krause2022-06-081-1/+1
| | | | | | | | | | | | Give this a chance to ever succeed by not using undefined variables in the test code. Found by a KDE unit test observing changes in inotify behavior between Qt5 and Qt6. Pick-to: 6.2 6.3 6.3.1 Change-Id: Iceb743d88dfa093c02d76ce32ea5c8ced24bfc5b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add QXdgDesktopPortalFileDialog::useNativeFileDialog()Ilya Fedin2022-06-082-4/+15
| | | | | | | Task-number: QTBUG-98988 Pick-to: 6.4 6.3 6.2 5.15 Change-Id: I39417f089d839a9af009791088bd20058532bd7a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update Catch2 to v2.13.9Marc Mutz2022-06-081-5/+9
| | | | | | | | | Two patches applied to upstream release. Pick-to: 6.4 6.3 6.2 Fixes: QTBUG-103732 Change-Id: Id64b65c4567433806047a2a34fa85ab5f260e6cc Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* C++23/c++2b supportAllan Sandfeld Jensen2022-06-085-4/+41
| | | | | Change-Id: I33b2a48312ae94e3d5ebb4097e50c4953e14d533 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* QTest: Remove pre-Qt6 codeMårten Nordheim2022-06-081-10/+0
| | | | | | | | | It's disabled now, so can be deleted Pick-to: 6.4 6.3 6.2 Change-Id: I0d548327e7ef42bbca9ed88556bf9f8456038cc7 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Fallback to PerMonitorDpiAware if V2DpiAware is not supported by systemVladimir Belyavsky2022-06-083-19/+21
| | | | | | | | | | | | | | DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2 might not be supported on some legacy Windows 10 editions (prior Creator Update). In this case SetProcessDpiAwarenessContext returns ERROR_INVALID_PARAMETER. Fallback to DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE using old API SetProcessDpiAwareness in such cases as the most suitable. Fixes: QTBUG-103733 Pick-to: 6.3 6.4 Change-Id: I39216e63ecfcae96aaa159237a52b0a76bc5d956 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Doc: Document the CorePrivate moduleTopi Reinio2022-06-082-6/+16
| | | | | | | | | | | | | Classes to aid Android development are currently available in the CorePrivate module. In order to have correct information for the requisites table (for CMake and qmake inclusion), document the private module, mark it \preliminary, and link the classes to it using the \inmodule command. Fixes: QTBUG-103865 Pick-to: 6.3 Change-Id: Id913148751ab925eb4e8488aa28a54b0e0c2d78d Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
* QDateTime::Data, QTimeZone: rule-of-five and noexceptEdward Welbourne2022-06-084-6/+17
| | | | | | | | | | | | CodeChecker noted that both QDateTime::Data and QTimeZone have incomplete rule-of-five method sets; and two of the former's methods should be noexcept. Marc tells me the copy constructor can be noexcept. Added the missing methods and noexcepts. Change-Id: I8ddaa86207320606a890e90bd2b1593ee82f5a4a Reviewed-by: Marc Mutz <marc.mutz@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* PosixZone::parse(): don't reset already-initialized variableEdward Welbourne2022-06-081-2/+1
| | | | | | | | | | | The nameBegin variable was already initialized to pos, so just increment it in the one case that needs it rather than resetting it in both branches of the condition. Change-Id: Ia0d42b604ed21829dc84c27a1907c345f62594d1 Reviewed-by: Marc Mutz <marc.mutz@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Drop const from a declaration to let a return moveEdward Welbourne2022-06-081-1/+1
| | | | | | | | | | | | | CodeChecker points out that QTimeZone::systemTimeZoneId()'s first attempt saved its result in a const QByteArray, which consequently wasn't moved from when returning. That doesn't make a huge difference for a CoW, but might as well skip the const and let the compiler do the natural thing. Change-Id: I966c9137505a8188532b164524dd4e05c0b2ac53 Reviewed-by: Marc Mutz <marc.mutz@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Don't std::move() trivally-copyable type; it makes no differenceEdward Welbourne2022-06-081-6/+7
| | | | | | | | | | | | | | CodeChecker says: std::move of the variable 'parts' of the trivially-copyable type 'QCalendar::YearMonthDay' has no effect; remove std::move() So don't bother with the move, and remove && from the signature of the function being called in all four places. Assert that the type *is* trivially copyable. Change-Id: I3c07491b4b1dafdf52916e8699561c58c24ee954 Reviewed-by: Marc Mutz <marc.mutz@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Android: Fix QSettings when using content URLSamuel Mira2022-06-081-3/+18
| | | | | | | | | | | | | | | | | | | | | | | Using QSettings with Content URL in Android failed because of 3 issues: * the lock file assumed that it could append ".lock" to the file name for its name * the lock file assumed that it could write in the same directory as the file * the QSaveFile used by QSettings requires direct write on content URL but setDirectWriteFallback is set to false on QSettings by default This patch fixes those issues by, when it is an Content URL in Android, saving the lock file in QStandardPaths::CacheLocation and setting the setDirectWriteFallback to true. This does not break backwards compatibility because appending ".lock" to the Content URL will always make an invalid URL, so it did not work before. Fixes: QTBUG-103455 Pick-to: 6.3 6.2 Change-Id: I92867577507b7069e4e6091d94e0931bb6dbcbed Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Define out unused functions on WASM buildMikolaj Boc2022-06-081-5/+7
| | | | | | | | | | | | | | | The struct iovec conversion functions that are needed on Unix are unused on WASM build. This makes the build fail with -Werror on Mac since the WASM build is treated as a variant of Unix. Cross-compilation with clang: Apple clang version 13.0.0 (clang-1300.0.27.3) Target: arm64-apple-darwin21.3.0 Fixes: QTBUG-103974 Pick-to: 6.3 6.4 Change-Id: I34c65a18832ceedb9064a98f5729e45667749461 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QTestLib: improve documentationIvan Solovev2022-06-082-0/+14
| | | | | | | | | | | | Add missing '\since' version numbers. This commit amends cc6d984390dc937b9d8440b6ba7d4f578e22ac0d and 0681a2dd5a8095baddb5905fb21a58ce19b958c5 Pick-to: 6.4 Change-Id: Ia10b991c996fb58f08a17e485c4dfcbfbe8eba0a Reviewed-by: Marc Mutz <marc.mutz@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* CMake: Fix Android multi-abi builds in Qt CreatorAlexandru Croitor2022-06-071-2/+7
| | | | | | | | | | | | | | | | | | | | | | | Qt Creator passes -DANDROID_NDK to the main project configuration whereas the Qt toolchain file expects -DANDROID_NDK_ROOT. This causes the configuration of the sub-builds to fail not finding the android toolchain, and trying to use the CI ndk toolchain path. Make sure to consider both variables. Also change the conditions to evaluate the variable as a variable explicitly, to avoid passing an empty option if the variable is unset. If the variable is unset, CMake would treat the variable as an actual string which would always not equal the empty string. Amends d6919b073aaae617f1ff37d18da14e315f202005 Pick-to: 6.3 6.4 Task-number: QTBUG-104013 Task-number: QTBUG-102041 Change-Id: Ifee48953ce50bc616c49c59d72e845c6d9418187 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* tst_QTcpServer: Make test-helper a dependencyMårten Nordheim2022-06-072-1/+5
| | | | | | | | For convenience. Change-Id: I91017e4b05b3c64f8628f23a0a3cf7abd4b4d686 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* tst_qfile: skip trash bin test on webOSJanne Juntunen2022-06-071-2/+2
| | | | | | | | | | Skipping moveToTrash() test is needed because WebOS does not implement a trash bin directory. Fixes: QTBUG-104053 Pick-to: 6.4 Change-Id: Id1d1595eb401d8ef3a403c915d95be1cd75368d2 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Fix data race in QCoreApplicationPrivate::sendThroughApplicationEventFilters()Marc Mutz2022-06-071-1/+1
| | | | | | | | | | | | | | | | The assertion has the acquire fence at the wrong place: - QThreadData::thread isn't dereferenced, so the acquire fence on its load() isn't needed. - QObjectPrivate::threadData, however, _is_ dereferenced, so an acquire fence is needed; the relaxed load() is insufficient. Swapping the loadAcquire() and the loadRelaxed() fixes both issues. Pick-to: 6.4 6.3 6.2 5.15 Change-Id: Iee964490e93ebc323c188e616bf0d448f91fb2b5 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QByteArray: de-inline to/fromStdString()Marc Mutz2022-06-072-8/+10
| | | | | | | | | | | Removes another owning container manipulation that made the top entry in Clang -ftime-trace's most-expensive template instantiations in a QtWidgets build. Pick-to: 6.4 Task-number: QTBUG-97601 Change-Id: I8c765ea2e6c46da5188b70c9503dd87e63f6b328 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix a leak of fallback dialog helper in xdgdesktopportalIlya Fedin2022-06-071-3/+3
| | | | | | | Task-number: QTBUG-98988 Pick-to: 6.4 6.3 6.2 5.15 Change-Id: Id066f0dd2cacbc273deacd4f7df66c3787ad4017 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* qglobal.h: include <stdalign.h> in C modeThiago Macieira2022-06-061-0/+1
| | | | | | | For alignas and aligof as macros up until C2x makes them full keywords. Change-Id: Ibcde9b9795ad42ac9978fffd16f2bbc054027384 Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* Bump version to 6.5.0Jani Heikkinen2022-06-068-8/+10
| | | | | Change-Id: I83a4f915a914bdc18f6706bb902f3e3b13da074f Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Windows: Don't terminate threads in QtVolker Hilsheimer2022-06-051-12/+10
| | | | | | | | | | | | | | | | | | | Terminating a thread that we don't have full control over might leave mutexes or critical sections locked, ending up with an application that can't allocate memory or open new windows. Also, if terminating of the thread would fail (which the code tried to handle), then deleting the QThread anyway would have triggered the assertion that we don't delete a running thread in ~QThread. So simplify this code: wait simply returns true if the thread isn't running anymore, no need for the double-check. Leave the thread running and leaking if it is stuck somewhere in Windows APIs while executing the native dialog. Fixes: QTBUG-103984 Change-Id: I34aa42cbde7c769a58c14bf524781cf3abd13b70 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Support cosmetic brush patterns in the pdf and opengl paint enginesEirik Aavitsland2022-06-045-11/+116
| | | | | | | | | | | | | | | | | | This implements the recent functionality extension of painting cosmetic (untransformed) brush patterns, and the corresponding NonCosmeticBrushPatterns render hint, in the pdf and opengl paint engines. As part of the implementation it also fixes a couple of pre-existing bugs in the opengl engine, relating to updating the brush after changes in transformation or brush origin. As a driveby, it also includes a minor fix for the lance testing tool: request stencil buffer, as that is needed and not always provided by default. This echoes a recent fix done to tst_baseline_painting. Change-Id: Ia8811477e015eebeb40ed138bca96643ce1ab0dc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* QTest::toString benchmark: do not pass a template type parameterGiuseppe D'Angelo2022-06-041-1/+1
| | | | | | | | Let it to be deduced, otherwise it may force instantiations which are ill-formed. Change-Id: I3ce674128d96a48ad6883e265734ff330645dd75 Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* QEdidParser: fix number of data blocksJonathan Liu2022-06-041-1/+2
| | | | | | | | | | | | | | | | | | | | The EDID standard defines 4 x 18 byte descriptors: 54-71: Descriptor 1 72-89: Descriptor 2 90-107: Descriptor 3 108-125: Descriptor 4 Immediately following the 4th 18 byte descriptor are the following: 126: Number of extensions 127: Checksum Therefore the number of data blocks (known as descriptors in the EDID standard) should be 4 instead of 5. Pick-to: 5.15 6.2 6.3 Change-Id: I63555b9142125df17b26401d81a6717936832162 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>