summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* QList: more explicitly document capacity() shenanigansAndrei Golubev2021-06-171-3/+4
| | | | | | | | | | | | Due to capacity() reporting the size of all allocated space, this is somewhat inconsistent with what QVector::capacity() in Qt5 provided, due to Q6List being double-ended. So let's document this better Task-number: QTBUG-92941 Change-Id: Iba46389121e721a8d21f0344b154f41c2c245867 Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit 976cf0152b52be5e30abf3b40cd80e072f0cbfd6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix SSE4.1, RDSEED requirement for clang-cl buildsAllan Sandfeld Jensen2021-06-173-30/+5
| | | | | | | | | | | | | | | A misunderstanding seems to have caused several files to be compiled with extra runtime arch options. We need to disable multi-target functions though, because it doesn't work with clang-cl headers. Task-number: QTBUG-88081 Task-number: QTBUG-88434 Change-Id: Ic5829540f9007428c80f9a7bd46af35540745ccd Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit ada29a19cd4b995dfd3e3059ccdf360ba13de08c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Check the impact of static link order for user projectsAlexey Edelev2021-06-171-16/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For user projects we run the static link order check once 'find_package(Qt6 ...)' is called. If linker can resolve circular dependencies between static libraries and object files we set the _qt_link_order_matters property of the Qt::Platform target. This indicates the use of finalizers is not required and we may rely on CMake-base propagation of resource libraries and resource object files. If linker could not resolve circular dependencies depending on the _qt_resource_objects_finalizer_mode value: - Finalizer will be called and collected resource objects will be linked to the target directly. - Finalizer will be omitted and resource objects will be linked using the target_sources function implicitly. This only propagates resource one level up if consumer links the static library PUBLICly, but all symbols will be resolved correctly since object files are placed in the beginning of the linker line. In the CMake version 3.21 we expect that CMake will take care about the order of the resource object files in a linker line, it's expected that all object files are located at the beginning of the linker line. TODO: Need to confirm that the CMake 3.21 meets the expectations. Amends 4e901a2f99cbfda3b479253ea54b16f02e1c3aa5 Task-number: QTBUG-93002 Task-number: QTBUG-94528 Change-Id: Ia68976df8182d3d3007b90c475c1e3928a305339 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 5fb99e3860eb43f4bacacec7f4a4626cb0159b14)
* Doc: Remove mentioning of Qt::MidButtonKai Köhne2021-06-171-1/+1
| | | | | | | | | It's only Qt::MiddleButton in Qt 6. Change-Id: Ia68bad910c617993e30e3ed1e117192469ec50eb Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit 88b92f76ee977a8d0043134451c55cd28c041d8d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix crash in concurrent disconnectLars Knoll2021-06-172-21/+42
| | | | | | | | | | | | | | | This does not fix all data races that we have in the system yet. One major issue is the virtual disconnectNotify(), that can be called from any thread and thus is inherently problematic, as it can collide with the object getting destroyed at the same time in another thread. Task-number: QTBUG-88248 Change-Id: I9d841eb363b7e4f0de1657aeb8f5340d0fd55190 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 71b4d4f150bc3c904a5aceec37513ddc3cd1c150) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* cleanOrphanedConnectionsImpl: Allow to skip lockingFabian Kosmale2021-06-172-6/+26
| | | | | | | | | | | | This function is/will be used in a few places where we already have a lock. Temporarily unlocking and relocking invites all kinds of troubles. By adding a flag we can instead tell the function that we already hold the lock. Change-Id: Ibca089de61133661d5cd75290f2a55c22c5d013c Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> (cherry picked from commit 556fc646cfac4dca43a34f5c4a4f7e6e3ef9104d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QOrderedMutexLocker: Disable copy and provide explicit dismiss functionFabian Kosmale2021-06-171-0/+37
| | | | | | | | | | | | | | | | Copying a QOrderedMutexLocker is questionable, and would currenly easily lead to UB. Therefore we delete the copy ctor and copy assignment operator, and implement well-behaving move operators. In addition, provide an explicit dismiss method for cases where we don't want the locker to unlock the mutexes, as they have been manually unlocked (this could have been implemented previoulsy by using the copy assignment operator). Change-Id: If2a888710e1c74277b28fd3e2939ab26fff0c7ae Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit 7fefce73284de4204d64c7e4129f39004a13cdad) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Windows: Read page size and orientation from setup dialogVolker Hilsheimer2021-06-161-3/+28
| | | | | | | | | | | | | | | | | | | PAGESETUPDLG's hDevMode reports the page size and orientation selection of the user, so read that data to get accurate results. Otherwise, the page size of a landscape page wouldn't match any known page format, and we'd end up with a custom size that would not be valid for the preview, breaking the preview UI's orientation state. Reuse the helper from QPageSize to map Windows page size ID to our own enum. Fixes: QTBUG-93764 Change-Id: Ib9a848619e3ba8780264ad76ed43c4fffae6b07f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit 6ce44c53c7aa802b817b72d49de88e4da0181488) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Mention resource name on which rcc is runAlexandru Croitor2021-06-161-1/+1
| | | | | | | Change-Id: I12189d7bf3fbe8544ae4c3478166515ea2759bec Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 906c84a9a3f71d333e8b0772f41aab5280ab5682) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Change some custom commands to mention the target nameAlexandru Croitor2021-06-161-3/+3
| | | | | | | Change-Id: I3a198c87ba2d71306478809095083694b65c7086 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 9297459900e5a44d4a9021e65f38345e04524566) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix rendering of text checkboxes when text is selectedShawn Rutledge2021-06-161-4/+8
| | | | | | | | Fixes: QTBUG-94532 Change-Id: I4343558dcec6149dcdcc0f7ca32c49fdc67452af Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit bc30d5624d59d523c4c31473cb64621ee5c43f9d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* macOS: Detect sandboxed state for command line appsTor Arne Vestbø2021-06-161-2/+2
| | | | | | | | | | | | | The documentation says that if we "pass a URL to the main executable of a bundle, the bundle as a whole is generally recognized.". By passing the executable instead of the bundle we include command line applications that don't have a app bundle folder (but have an embedded Info.plist). Change-Id: I3a2f145c1ec6e16607e9c04baf08678d5dea0b81 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 20f835329a35651c720b73a8d217e3b48ebd2fcf) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add missing qHash overload for INTEGRITYKimmo Ollila2021-06-162-0/+12
| | | | | | | | | | Fixes build issue "no instance of overloaded function "qHash" matches the argument list" on INTEGRITY Change-Id: Ia1273587840d55199846dc64d487d194f9a4d565 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> (cherry picked from commit 56ed35bd02e7c99f0d61f02013beefb32ad59b8e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Revert "Remove old Android code that have now has alternative public APIs"Jani Heikkinen2021-06-165-3/+2901
| | | | | | | | | This reverts commit ff7daa1c33b79d92837c1dca2f55089d8e5dbc80. Reason for revert: Breaks dependency update round now Change-Id: Ie52e9ac189e9516b27df389d6f624b22f939affb Reviewed-by: Antti Kokko <antti.kokko@qt.io>
* md4c: Fix MSVC compiler level 3 warningsKai Köhne2021-06-152-4/+44
| | | | | | | | | | | | Fix various C4244 warnings with the MSVC compiler for 64 bit Proposed upstream fix: https://github.com/mity/md4c/pull/162 for an upstream fix, Change-Id: I2ac1c17febb4fb269ac7244458f4cd90ce8b8e49 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 1591a959876bc5a37aacc817e637400c72bf6623) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update md4c to 0.4.8Kai Köhne2021-06-152-28/+67
| | | | | | | Change-Id: Ib0e1ef259696aa380aba0819aa4e1d8a12b4a21d Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 1759626cd61fbc765d21ce458cc5d472db087f3e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Bindable property docs: mention virtual setters and gettersIvan Solovev2021-06-152-0/+58
| | | | | | | | | | | Update the bindable property docs to explain how to deal with virtual getters and setters. Task-number: QTBUG-92994 Change-Id: I6c29011817e83623414b39afee0f39ad4cc5c1c9 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit c0716994f3a089b41b5a3d05372f4fc2fb4f51c9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Document TLS plugin classes (private, internal)Timur Pocheptsov2021-06-152-126/+1671
| | | | | | | | | | | | | | | Also, a minor clean-up: isMatchingHostname() overload was never used, deleted (and it could not be used safely, since it requires the name to be normalized first). The file (qtlsbackend.cpp) was re-shuffled, to have backend on top of the classes which this backend is factory for. Fixes: QTBUG-91929 Change-Id: I435c69b167f57f7c3f76e34449c52f665dc6f7c2 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit c771ad8cdfccb2678664d9e7c54669acf82fedaa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* H2 - make integer conversion explicit (signed->unsigned)Timur Pocheptsov2021-06-151-2/+2
| | | | | | | Change-Id: I47a3f8f7c39d4179a9a108e81a9c7f409acbc315 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit 8a034c62b6c87ee8c15b9132392fb7dde01e2a65) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qtpaths: Prevent tool messages from appearing in qtbase.tsFriedemann Kleint2021-06-151-30/+29
| | | | | | | | | | | The tool used QCoreApplication::translate(), but did not attempt to load a QTranslator. Use QStringLiteral() instead. Task-number: QTBUG-75870 Change-Id: Ib3c6b1893889a82b186a310c0c725dbf1a1885b3 Reviewed-by: Kai Koehne <kai.koehne@qt.io> (cherry picked from commit 41725faa7e57154259181be458d6fac22d411399) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Adjust the EntryPoint target name according to the internal module naming policyAlexey Edelev2021-06-152-18/+26
| | | | | | | | Task-number: QTBUG-87775 Change-Id: I1d6097c950f97e102c44e2952edc98caa4deb6c6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 02855ff6e076d04b7ae748c2485f1e098c32d698) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add common internal macros to request jni objectsAssam Boudjelthia2021-06-151-0/+39
| | | | | | | | | | | | | | | | | | | There are multiple macros used to get/check and return with error in case the requested object is not valid. These macros are defined in multiple places and duplicated. This patch defines them in one place and then they can be reused. This macro expects a "char m_qtTag[]" variable to be defined in the scope where the macro is used. That variable is used as a tag for the error message printed when an error occur. Another consecutive patch use the new macros over qtbase code. Change-Id: Ibb8558d1229cec6dad9ec9da6e2635ea54fd18d6 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io> (cherry picked from commit 01d30e2d5331d0d15516ce3bf7559fcc19b69723) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QTextDocumentFragment: fix ifdef rangeIvan Solovev2021-06-151-1/+2
| | | | | | | | | Move QT_END_NAMESPACE macro out of the #ifdef definition Change-Id: I26b4e263b5ae0acebf035dbfe8c7e287cd740190 Reviewed-by: Kai Koehne <kai.koehne@qt.io> (cherry picked from commit 0f9695e6da7b40d684d20d55144d020004c2e9ea) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* H2: remove a rather useless limit on the number of streamsTimur Pocheptsov2021-06-142-10/+3
| | | | | | | | | | | | | | | | | SETTINGS for max concurrect number of streams is 'one direction' - this is how our peer conveys the possible number of streams _we_ can open, not _them_. If they choose to have it unlimited - let it be so. It's possible to send 0 as maximum number, also, it's possible to reduce the maximum compared to initial at some point - then I have to avoid integer overflows. Fixes: QTBUG-94470 Change-Id: Ia02247acbaedd70998a4cab02082ba10f45cf78c Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit 46940ca73791e87e2366b80ac2884b3bcce716ce) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update public suffix listMårten Nordheim2021-06-142-14309/+14419
| | | | | | | | | Task-number: QTBUG-94410 Change-Id: I2ccf717dc7e0e70c4abd66956238ac3cca1d7a5d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit b5da494b3f3d5dd7d4a82eab761bdbbc4808c222) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add "We mean it" warning to qidentityproxymodel_p.hMitch Curtis2021-06-141-0/+12
| | | | | | | | | This was missed in b42e2d70fbda5afb462b869583b925ad5f1a5480. Change-Id: Id06bd880456534293cf6c0d215f794b6ad0552ca Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 9f918e1356f3acb6769fb6155f471101f67180e2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Schannel: Fix version functionsMårten Nordheim2021-06-141-7/+4
| | | | | | | | | | | | | Previously they all returned the runtime versions and one string function did not include the backend's name. The NTDDI_VERSION macro is what we use to base certain feature-availability on during compilation so it makes the most sense to use for the build-string. Change-Id: I96b025a5a05c0bbb4db3d5ee68656e0df5f4eb07 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit 76b0713d6ecd0dfb459b7c9e238b0928f92725d6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Make dockwidget title bar buttons show againVolker Hilsheimer2021-06-141-4/+6
| | | | | | | | | | | Amends f61304fc77a622170ef3bbcbcb37c5a90c6f87ea, which renamed the files but didn't adjust the code. Task-number: QTBUG-38776 Change-Id: If54dd986975dd28f147a98628317b1369d0c690f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 22571c21c9be10d9ada756c598f519f74273579a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Document that WA_TranslucentBackground will not have an effectLaszlo Agocs2021-06-141-3/+6
| | | | | | | | | | | | | ...if changed after the widget is shown. Just documents the current state of things. Task-number: QTBUG-60822 Task-number: QTBUG-59126 Change-Id: If8281dce4457707a1673aca7a50744d8b231b030 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit cf7df972c3015a160986bcd3f1cbd1f01297335d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QAIV: Don't open editor on release when press closed editorVolker Hilsheimer2021-06-142-2/+18
| | | | | | | | | | | | | | | | | | A mouse press that transfers focus from an open editor back to the view will close the editor. To prevent that the corresponding release then opens the same editor again we need to know that the closeEditor call was caused by the mouse press. Since Qt first generates the focusOut event, and then delivers the mouse press, we have to start a zero-timer to check whether we are in the same event delivery process. If so, ignore the corresponding release. Add test case that simulates that chain of events. Fixes: QTBUG-20456 Change-Id: I28fa32bfbc776db207c594c329961f575ae58ea9 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> (cherry picked from commit 2f9543c2ef71e3b5b686ce07e84fd4372ce0535f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Fix snippet for QRandomGenerator64 docsPaul Wicking2021-06-141-1/+1
| | | | | | | | Fixes: QTBUG-94347 Change-Id: Iaf007534214cffc83858833e80dad447df9b297a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit b43ec7e9f9d043ee3b82a5207ac124d77ce5afca) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update CLDR qt_attribution.jsonMårten Nordheim2021-06-141-1/+1
| | | | | | | | | | We updated to v39 in 6235893d54b8fbf5c8bd54e33cd82b55042555f1 Task-number: QTBUG-94410 Change-Id: I73d539d677c9066dc5ceb6b4fc65fb544f39ac7f Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit 20a31b1a39931e06d69e932d2e6890f7c375e20b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix date parsing when local time lacks the start of the dayEdward Welbourne2021-06-141-13/+26
| | | | | | | | | | | | | | | | | | | | The case where a parsed date-time fell in a transition, but only because the default value for some field lead it there, only dealt with the case of parsing a date-time, which is the only time it should be relevant. However, since the date and time do get combined as a date-time (even when only one of them is relevant) the same problem could arise when parsing a date (on which the current time-zone happened to make a transition at the start of the day) or a time (if the default date happens to be one on which the current zone had a transition). So handle both of those cases, as well as the date-time case. Fixes: QTBUG-91120 Change-Id: I565d115eb85cd2ee69fa500fcd40b05bcf8f6fff Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit f9469990d0fb1ae9444d415390ec8be483ec4ab3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNetworkInformation: Rename the plugins and typeMårten Nordheim2021-06-1217-15/+15
| | | | | | | | | | | To better match other plugins in Qt Change-Id: I6ab19603f13c80a8afe4fe69f64669559a0eea15 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Yuhang Zhao <2546789017@qq.com> (cherry picked from commit d245e3a7883ccb2c8beabbca5094de54ec963644) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Mention that you cannot order QVariants anymoreKai Köhne2021-06-121-0/+4
| | | | | | | | Task-number: QTBUG-87263 Change-Id: I3d1332c43e4c06d47b249e4b9adb32685070f56a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 1f242e0ab0736c76515b95687858a0f0e9096a7d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix reading gamma from PNGs without ICC profileAllan Sandfeld Jensen2021-06-121-2/+2
| | | | | | | | | | | The decoding of PNG_INFO_gAMA to QColorSpace was incorrect, the PNG gamma is the inverse of the gamma value we use. We revert it everywhere else, just not here. Change-Id: Ic0ae1963b2dde3004cac8a6430ddaf99e7096915 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> (cherry picked from commit de2c3ccd49cb89e0c6912da3b03705a36ef03946) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Fix Qt tool apks not to be built as part of default all targetAlexandru Croitor2021-06-121-16/+35
| | | | | | | | | | | | | | | | | | | | | | | | | The code already checked for QT_BUILDING_QT to decide whether the 'apk' target should be part of the default 'all' target, but it only worked properly for qtbase. The 'apk' target was created before the value of QT_BUILDING_QT is set when building other repos like qttools. Postpone the decision on whether 'apk' should be part of 'all' to the first call of qt_add_executable -> qt_android_add_apk_target. At this point QT_BUILDING_QT will be defined. Achieve that by relying on an additional 'apk_all' target as an implementation detail. Amends 8b8679f73d6cfb513141cc0a9f4925a64ca19455 Fixes: QTBUG-94442 Task-number: QTBUG-94264 Change-Id: I92ff0a7eef2caad244340ab7835e77c9fb3377c0 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 1d05dcb3ec677a301a5a626384b2bf8003af2663) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Deliver WindowActivate/Deactivate events to QWindowVolker Hilsheimer2021-06-122-1/+10
| | | | | | | | | | | We need those events to trigger palette color group changes in QQuickItem without having to connect every item to yet another QWindow signal. Task-number: QTBUG-93752 Change-Id: I8534808cdaab828e5876f8fda31567aeb1b4272a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit b65159a5ea8db05165b2eaab8e180a12f30063e4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove old Android code that have now has alternative public APIsAssam Boudjelthia2021-06-115-2901/+3
| | | | | | | | | | | * Remove the old qjni private APIs. * Remove the Android permission private APIs. * Remove runOnAndroidThread(). Change-Id: I37ba8b4cb87a099f067e2e0b6744b8d01a0f9bbc Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit 03eb44394e4cdf3d2a9aa7be632b487313519fbb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Hangul composition: use < base + count checks, not <= checksEdward Welbourne2021-06-111-2/+2
| | | | | | | | | | | | | | | | Before Unicode 4.1.0 there was an error in the example code for Hangul normalization that used <= on the ends of some ranges of values, where they should have used < tests. This was faithfully copied but the need for correction has only lately come to light. Thanks to Ma Lin for pointing this out and providing the fix and test-cases. Fixes: QTBUG-71894 Change-Id: I5c7fec1f9fac1f7a25b2d5e9c3109a90a7ff49e1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 182afbe335a8bd494a86defc5d32da3ae8ec7920) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix unaligned specialData formatsAllan Sandfeld Jensen2021-06-111-4/+9
| | | | | | | | | | Handle the case were a format was applied that does not align with the fragments. Change-Id: I27593a50c587a5ec0290ff9d0a7a9767a3981cac Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> (cherry picked from commit d93fac3290bc0890a529886a4f991daa77fd6a6e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* macOS: close visible gap between tab bar base line and tabsVolker Hilsheimer2021-06-112-2/+2
| | | | | | | | | | | | | | | | | Dock widgets enable the QTabBar::drawBase property, but the clip region left a gap of 3 pixels on each side between the base line and the tabs. Correct the size of the hole cut into the clip region accordingly. Visually tested on macOS 10.15.7 and macOS 11.2.1 using the dockwidgets and tabdialog example. As a drive-by, fix a spelling mistake in related documentation. Fixes: QTBUG-86362 Change-Id: Iada027999467741d0590576ee4508e6f41fb056d Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit f5d6f8dca0c45f311b19731128a495392884ec8c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* In headers with only the arrow styled, prevent overlapping with textVolker Hilsheimer2021-06-101-2/+19
| | | | | | | | | | | | | | | | | | | A style sheet that styles only the header arrow, but not the header section or label, resulted in an overlapped text and header if the text was also right aligned. To prevent this, add the space required by the arrow to the size calculation, and shorten the space accordingly before rendering the right-aligned label. Make corresponding adjustments to vertical headers with bottom-aligned labels. Fixes: QTBUG-84117 Change-Id: I782d9538b695ad55d2d70b6d230f66059598768f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit 308845cd720969a5f3456caa8cf72023f120aecf) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Correctly support style sheet for toolbutton menus and arrowsVolker Hilsheimer2021-06-101-25/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | QToolButton can show an arrow instead of an icon, and that arrow can, as per the documentation, styled via the ::down/up/left/right-arrow pseudo element. This was not working at all, as the implementation confused the down-arrow with the menu arrow. Implement this correctly for all arrow types. A QToolButton can also have different ways to show a menu, either by using a separate section of the button that can be clicked; this section can be styled via ::menu-button and ::menu-arrow. Or by instant or delayed menu popup when clicking the button itself, in which case the button shows an indicator in the button itelf; that indicator can be styled via the ::menu-indicator pseudo element. The old implementation confused the various options, and the name of the PseudeoElement_ToolButonDownArrow didn't help with that. So rename that element to PseudoElement_ToolButtonMenuIndicator, and render it when there is no separate drop down. Fixes: QTBUG-27640 Change-Id: Ia142a5d7498fa717e70f4e5382305e305b29effa Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit 2b2e7b2ac50e5b4f6e1888e594f6e32338dd2a80) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix QColorTransform on RGBA64_PremultipliedAllan Sandfeld Jensen2021-06-101-6/+15
| | | | | | | | | | The lack of an unsigned pack 32bit->16bit without SSE4, meant the premultiplied path would saturate color values over 32735. Change-Id: Ia76e0369fd11a6767e8db78bf9a10eea30d91d2c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 19faa03620d030dd406dff353866526ad6b9b653) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Check scrollbar ScrollBarOverlap when computing QListView marginsZhang Hao2021-06-101-0/+1
| | | | | | | | | | | | | | | | | | When the listview setWordWrap is true and ScrollBarPolicy is ScrollBarAsNeeded, if QStyle::PM_ScrollView_ScrollBarOverlap returns true, the text displayed an empty line. Fix this by not reserving the width of the vertical scrollbar if the flow is TopToBottom and the vertical scrollbar, and QStyle returns true for PM_ScrollView_ScrollBarOverlap. Amends aeef92c3c33e4ebcb7e5d8dd955020f4f4600e84 Fixes: QTBUG-94248 Done-with: Volker Hilsheimer <volker.hilsheimer@qt.io> Change-Id: I4d47c7e86bbb86474cb1a99bb26d8b67f0e8a7e2 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 0242be90606b377864c6fd02d5a8e0afaf635acf) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add shortcut for QImage::applyColorTransform on indexed imagesAllan Sandfeld Jensen2021-06-101-0/+7
| | | | | | | | | This also helps preserve bitmaps. Change-Id: I8aa1ea63dc7dfb948a9c8821f0fe1ddd07f1bc3a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> (cherry picked from commit f044f68e9f1f496a9d28803457b89c689eb92c20) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add the check for linker capabilities to resolve circular dependenciesAlexey Edelev2021-06-101-1/+15
| | | | | | | | | | | | | | | 'ld' only capable to resolve circular dependencies by wrapping the suspected static libraries and objects using --start/end-group arguments. We want to detect if linker is 'ld' at configure time to decide how to link the resource objects if finalizers are not enabled. The qt_config_compile_test function is extended with an extra argument since it's required to pass custom cmake flags to the ld-related test. Change-Id: I484fcc99e2886952d8b0232f37e4e6a35d072931 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 4e901a2f99cbfda3b479253ea54b16f02e1c3aa5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* JNI: check if clazz is null before doing a jni callAssam Boudjelthia2021-06-101-8/+16
| | | | | | | | | | | Also add missing \since keyword. Task-number: QTBUG-92952 Change-Id: Ia1472f04955809fb5132a4b6239dbcbdf63cca93 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit 60e104aed84759f1e0cf324f47781eed5b055761) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* JNI: state that findClass() returns a global refAssam Boudjelthia2021-06-101-11/+13
| | | | | | | | | | Fix docs to state that findClass() returns a global ref from the cached classes list. Change-Id: I7c45cc4c9e1c6e109db7cf7d926a250592798972 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit 49b51425bfeb10aa511b65f92067ee721208a849) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>