summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Move QtPlatformCompositorSupport into QtOpenGLTor Arne Vestbø2020-05-2839-99/+61
| | | | | | Task-number: QTBUG-83255 Change-Id: Id9ea654db8efb00b487d53aea03d7f23a7ab1a54 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Fix ExtendedRgb and Rgb encoding comparisonsAllan Sandfeld Jensen2020-05-282-0/+30
| | | | | | | | ExtendedRgb should be treated as Rgb as it can be an automatic upgrade. Pick-to: 5.15 Change-Id: I2942a1067ed5cacb2f60f303f467887cb44c36dd Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* CMake Build: Rename cmake_command to cmake_languageCristian Adam2020-05-281-1/+1
| | | | | | | The function name has been changed upstream (3.18). Change-Id: I76a26cdc8de71dffa5402a7c7423006a7a01552e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Tidy up qt_get_direct_module_dependenciesAlexandru Croitor2020-05-281-16/+9
| | | | | | | | | | | | It's only calls were with the PUBLIC argument, so remove the argument both in the declaration and call sites, and just return the public dependencies. Fix up the names of the variables as well. Amends b56dc55c3a5c4164ad84fd61c44638a3cb196978 Change-Id: I830c1894376d0d3a2eb2bd4ffa38a1b3b3066292 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Override debug generation request on mac for toolchain.prfMichal Klocek2020-05-281-1/+1
| | | | | | | | | | | | | Override request for debug info during compiler 'test', otherwise call to dsymutil will fail call with /dev/null. Use case here is to pass for example -glldb with CXXFLAGS. Fixes: QTBUG-62953 Fixes: QTBUG-84467 Pick-to: 5.15 Change-Id: Ief8f987afb40d0b90da732195d67d476e7bb3aff Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix most obvious typos in doc commentsIvan Tkachenko2020-05-283-18/+18
| | | | | | | | | | | Just opened some files with spell checker turned on, and corrected what was underlined. Also, see QTBUG-84427. Change-Id: I702b5bf2cfe1f23c928a6a57f117a2f571ad86ea Pick-to: 5.15 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* rhi: Harmonize create-destroy API pattern with the rest of QtLaszlo Agocs2020-05-2839-803/+805
| | | | | | | | | | For historical reasons we use build and release instead of create and destroy. This becomes confusing now that more modules in Qt start taking QRhi into use. Migrate to the more familiar naming, so those who have used QWindow or QOpenGLContext before will find it natural. Change-Id: I05eb2243ce274c59b03a5f8bcbb2792a4f37120f Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* rhi: d3d11: Use qstrncpy to avoid MSVC warningLaszlo Agocs2020-05-281-4/+2
| | | | | | | | | | | | | Switch strncpy to qstrncpy, which internally uses strncpy_s with MSVC. This way we will not get the following warning: qrhid3d11.cpp(933): warning C4996: 'strncpy': This function or variable may be unsafe. Consider using strncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. Change-Id: Iaed86033b0fc182e68804f311ac382c93c72abda Reviewed-by: Christian Strømme <christian.stromme@qt.io>
* Rework QLocale and QDateTime tests that expect CET abbreviationEdward Welbourne2020-05-282-42/+11
| | | | | | | | | | | | | | | | | | | | | | The name CET is locale-dependent; but QLocale doesn't know about localization of time zone names. Such abbreviated zone names are, in any case, potentially ambiguous - various zones around the world have collisions - so they can't be relied on. QTimeZone's various backends have differing handlings of how to abbreviate zone names (MS's provides no abbreviated names at all); and it appears macOS actually follows the relevant localizations. So it is hopeless to hard-code the expected zone abbreviations. Changed the tests to consult QTimeZone for the abbreviation and compare what it gets with the results of checks which should match this. This is less stringent, but it is at least robustly correct, thereby getting rid of assorted kludges and #if-ery. Pick-to: 5.15 Task-number: QTBUG-70149 Change-Id: I0c565de3fd8b5987c8f5a3f785ebd8f6e941e055 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Doc: Fix issues with Qt Test documentation configurationTopi Reinio2020-05-281-2/+2
| | | | | | | | Remove '/' as an example directory. We do not want to retrieve the directory tree of the entire system. Change-Id: I1caa7ef659dfe326515a4d81193682dacb373856 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Actually apply the shadow stack Intel CET flagsGiuseppe D'Angelo2020-05-281-2/+2
| | | | | | | | | | C&P mistake dropped $$ from qmake variables, my fault. Will squash manually in 5.15 to avoid introducing a bug there. Amends fa98adbd04. Change-Id: I3ce33dba16f512cd20c8d3c6adc4c1a09506c1ea Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: Fix qmake .depends info generated for module_private.pri filesAlexandru Croitor2020-05-282-7/+14
| | | | | | | | | | | | | | | | | | | | | | | Previously we checked the LINK_LIBRARIES property of the main module target, but we should instead use the values of INTERFACE_LINK_LIBRARIES set on the FooPrivate module. Because both versionless targets and private targets are interface libraries, we need to properly differentiate between them when following versionless targets to their main associated target. To do that, instead of using string comparison, export an additional private _qt_is_versionless_target property, and query that. Also make sure to set and export the _qt_config_module_name property on the FooPrivate targets. Also make sure to APPEND to EXPORT_PROPERTIES rather than override (looking at you QtFeature.cmake). Task-number: QTBUG-75666 Change-Id: Ia3261e218840e9f5217ab49755e8c876560e294d Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* CMake: Use -fapplication-extension when building Qt libraries on macOSAlexandru Croitor2020-05-284-0/+31
| | | | | | | | | | | | | | | | | Needed to avoid linker warnings transformed into errors, when linking QtWebEngine with qmake mixing. ld: warning: linking against a dylib which is not safe for use in application extensions: The flag is added to libraries and plugins, unless opted out. CMake equivalent of 944110089d4cb1c229dba422989e154db65a67fd Task-number: QTBUG-83929 Task-number: QTBUG-75666 Change-Id: I3e9acca4712c9a266bf54c6e35e2fd2c0096692b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Cache system zone ID when fetched from the file-systemEdward Welbourne2020-05-281-64/+141
| | | | | | | | | | | | | | Record the device and inode numbers when found and assume we can safely re-use the name if those have not changed. Tidy up some preprocessor trivia in the process and moved zone-availability check functions to before the system name lookup. Pick-to: 5.15 Task-number: QTBUG-75585 Change-Id: I3660922ef3c94b553a20f887a676e8921693b30f Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make threadCount a const member of ReduceKernelJarek Kobus2020-05-281-1/+2
| | | | | Change-Id: I8e75263d3e02a6e6a20520ebecfdb4e40b562bbf Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Pass the thread pool into ReduceKernelJarek Kobus2020-05-283-7/+7
| | | | | | | | | This was overlooked when enabling setting a custom thread pool for various concurrent methods. Fixes: QTBUG-53465 Change-Id: I189a7776fa02bbc3e995538cc154a7246ad1ad7a Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Pass the thread pool into BlockSizeManagerJarek Kobus2020-05-282-4/+4
| | | | | | | | | This was overlooked when enabling setting a custom thread pool for various concurrent methods. Fixes: QTBUG-53465 Change-Id: I8b0a0086e46639639051fe99cf52d049f7bb3bb2 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Make some members of IterateKernel constJarek Kobus2020-05-281-5/+6
| | | | | Change-Id: Ifeabebcbb7212a8c2799a37665b290983fd64105 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Add tests for a couple of edge casesDimitrios Apostolou2020-05-281-0/+18
| | | | | Change-Id: I1cd799cc671fa2191e20d4681632588dc79e98dd Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Address Coverity defect about buffer overrunDimitrios Apostolou2020-05-281-3/+23
| | | | | | | | | | | | | | | | Coverity warned that chunk could be >= tldChunkCount (2), and tldData[chunk] (array of length 2) would be accessed out of bounds. This can not happen, but it was unclear. Clarify logic with comments and asserts, that Coverity will hopefully understand now. Change-Id: I2a38c685cfcbc69ed123918e8cbed360b20b1035 Coverity-Id: 178254 Pick-to: 5.15 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Regenerate qurltlds_p.hDimitrios Apostolou2020-05-281-13868/+13941
| | | | | | | | | | With the recent changes in the utility that generates it, it now has improved readability and constexpr arrays, usable in static asserts. It also has an updated list of TLDs. Change-Id: Ibdc986d667feebeb141ff81f6fddbc05b6be8488 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Change const arrays to constexprDimitrios Apostolou2020-05-281-3/+3
| | | | | | | | so that they can be used with Q_STATIC_ASSERT(). Also constify more another array. Change-Id: I1e7208127e06abb33af9bdc46712657af5dc98fe Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Update paths pointing to old locationsDimitrios Apostolou2020-05-281-2/+2
| | | | | Change-Id: I2fb14834b34827ed4e84e9f7dc0791aa810a32ce Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Improve readability of the autogenerated arrays in qurltlds_p.hDimitrios Apostolou2020-05-281-6/+16
| | | | | | | | The next time qurltlds_p.h is generated, array sizes shall be explicit. Also added some helpful comments. And updated copyright date. Change-Id: I2bc9a78bcc2982845fce75a413e2048b0bfd12a0 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Make QDateTimeParser recognize local time offsetsAndrei Golubev2020-05-282-14/+49
| | | | | | | Fixes: QTBUG-84209 Pick-to: 5.15 Change-Id: Iedbc7beafcaa55c72fec3ac5a5f519c6ed5f7770 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* QTableWidget: simplify QTableWidgetSelectionRangeChristian Ehrlicher2020-05-282-47/+17
| | | | | | | | Simplify QTableWidgetSelectionRange by removing the unneeded user-defined functions - the compiler can generate them by it's own. Change-Id: Ia96ea29f595851e58c5b714bb316174406d42b8e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix compilation of PCRE2 under Intel CETGiuseppe D'Angelo2020-05-273-0/+23
| | | | | | | | | | | | Ubuntu 20.04 enables -fcf-protection by default. PCRE2 10.35 sees this but complains that -mshstk is also necessary to build its JIT. Detect whether the compiler is enabling Intel CET automatically, and if so, build PCRE2 with the right options. Pick-to: 5.15 Change-Id: I3440e689b81f4f07055f211a4fa7331a43eb410d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Move windowsuiautomation API support into QtGuiFriedemann Kleint2020-05-2728-74/+42
| | | | | | Task-number: QTBUG-83255 Change-Id: Ibface71931b6384494842ba9744d76f738c5ca85 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* macOS: Fix use of deprecated NSOffStateTor Arne Vestbø2020-05-271-1/+1
| | | | | | Pick-to: 5.15 Change-Id: Ic799c52350f99a14f57efa9907db772d19264ca2 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix qmake builds of Windows applications against a CMake-built QtJoerg Bornemann2020-05-271-0/+3
| | | | | | | | | | | | | | | QMake's windows.prf expects the WinMain library to be named 'qtmain[d].lib' and not 'Qt6WinMain[d].lib'. We're renaming the library to 'qtmain[d].lib' in the CMake build now to avoid adjusting the qmake build of Qt. Also, we have to add the private library shell32.lib to WinMain to make it appear in qtmain.prl and having it linked to Windows GUI applications. Fixes: QTBUG-84425 Change-Id: Ia94090b89e037b17ebfded359b293c8586371d59 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Move CoreText font engine/database to QtGuiTor Arne Vestbø2020-05-2723-47/+47
| | | | | | Task-number: QTBUG-83255 Change-Id: Id34ed1759fdebbb1d09e51009f0370736002167c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QNetworkReplyFileImpl: Fix typoMårten Nordheim2020-05-271-1/+1
| | | | | | | | Causes emission to not happen and prints a warning Pick-to: 5.15 Change-Id: Ie80cc89549741079c243e6fd4269f793bccca9fd Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Move FreeType font engine/database to QtGuiTor Arne Vestbø2020-05-2725-27/+38
| | | | | | Task-number: QTBUG-83255 Change-Id: If6be7057d6bd25b34acd99e18658744161985ed0 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Add a QPropertyAliasUlf Hermann2020-05-274-10/+446
| | | | | | | | | | | | A property alias is the equivalent of the "alias" keyword in QML. It provides the same API as QProperty, but redirects any access to the QProperty it was initialized with. When the original property is destroyed the binding becomes invalid and ignores any further acccess. Task-number: QTBUG-84370 Change-Id: I0aef8d50e73a2aa9e7703d51194d4c5480573578 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Never include windows.h directly in Qt codeLars Knoll2020-05-272-2/+2
| | | | | | | Please use qt_windows.h instead, so we avoid having min/max defined. Change-Id: Ic1b29666c427bf24556da5494af45ee5953ae827 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Run moc on non-PCH sources as wellTor Arne Vestbø2020-05-271-1/+3
| | | | | Change-Id: Idccfc8f7b182169c5becfb28dec5aef4fc7079b1 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix various offset issues with DirectWrite font engineEskil Abrahamsen Blomfeldt2020-05-271-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 318a991907b6c08f52786160bafea1e30d3ad9bd and its follow-up commit beede51bca1a43befe42499ad784af57d2450162. This fix was incorrect and caused regressions elsewhere (QTBUG-84357) The issue in QTBUG-71928 (offsets on emojis) turned out to be much simpler: The emojis are expected to be drawn without any margin, but since we retrieved the margin for A32 there would be a mismatch between the margin used for positioning and the actual margin in the returned QImage from the font engine. Passing the correct margin in bitmapForGlyph() fixes this. But reverting these fixes reintroduces a clipping bug when using software rendering in Qt Quick: QTBUG-80180. This needs to be addressed in Qt Quick. It also exposes an existing issue with positioning in Qt Quick NativeRendering: QTBUG-84454. In addition, it caused an assert when running with ClearType disabled, which turned out to be because we were using the A32 margin in the A8 case in the DirectWrite engine. This was also the cause of QTBUG-50024 before, which is now also fixed. However, it also needs to work with Qt Quick, where the text is currently offset by margin * dpr and glyphs are clipped with the software renderer, possibly because of the offset in position. Task-number: QTBUG-71928 Task-number: QTBUG-84042 Task-number: QTBUG-80180 Task-number: QTBUG-84454 Fixes: QTBUG-84357 Fixes: QTBUG-50024 Pick-to: 5.15 Change-Id: I2c8f9f9e7dfb34d492e9833a02fa0c93e6a19513 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Do a proper convert from [0-65535] to [0-255] on QColor integer readsAllan Sandfeld Jensen2020-05-271-29/+30
| | | | | | | | | We need to divide by 257 and round to undo our setter. Pick-to: 5.15 Fixes: QTBUG-84168 Change-Id: I55d2a8d1d05125d9560309cd77459cc94a92030f Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Remove deprecated QProcess methodsVolker Hilsheimer2020-05-275-373/+16
| | | | | | | | | | | | | Add default parameter for arguments in start, startDetached, and execute for better source compatibility with Qt 5.15. This has the risk of then hiding incorrect calls to the previous overload taking a single "command" strings if code is ported from pre-5.15 or ignores deprecation warnings. This is acceptable, given that the alternative is that all calls to these functions would require a default constructed QStringList as the second parameter. Change-Id: I1ba4df97ac4894d007da5083c8359015d784ddbb Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* QTextMarkdownImporter: allow nesting text span formattingShawn Rutledge2020-05-272-2/+114
| | | | | | | | | | | | | | | The bold+italic combination indicated by ***triple stars*** requires this; but it enables combinations of italics, bold, strikeout, anchor text (and associated link formatting), image alternate text, and inline code formatting (monospace). A code span overrides the formatting from surrounding spans (which might be a bug to fix in another patch, if we compare to how md2html formats code nested in bold-italics for example), but the format stack restores state when any char format span ends. Task-number: QTBUG-81306 Pick-to: 5.15 Change-Id: I289556fa53de400eb50a4d159b9b344eafc517da Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QRhiVertexInputAttribute : Add unsigned int formats for vertex inputInho Lee2020-05-277-5/+80
| | | | | | Task-number: QTBUG-83173 Change-Id: I640cd1fe74227d2cc96672d6c7aaac93e1930bcd Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* QProperty: Support multiple observersUlf Hermann2020-05-275-17/+68
| | | | | | | | | Previously, only the first observer would get notified. Also, make sure that the notifiers are always retained when switching between bindings and values. Change-Id: I9c25c0f2e288dac3a335b68e618f7ddeb44be25a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QProperty: Apply coding style and avoid warningsUlf Hermann2020-05-272-3/+3
| | | | | Change-Id: I14efdb293a4be39b3849b34bd8013fdab016ce7e Reviewed-by: Simon Hausmann <hausmann@gmail.com>
* Update QColor::operator== documentationAllan Sandfeld Jensen2020-05-271-2/+6
| | | | | | | | | We also compare exact encoding, not just the same values in RGB. Pick-to: 5.15 Fixes: QTBUG-84436 Change-Id: Ia50be17864ee42cf1f6d44dd2cad27daca317faa Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Don't queue events in QFutureWatcher when pause is requestedSona Kurazyan2020-05-273-30/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When QFutureWatcher (or QFutureInterface) is paused, it doesn't mean that it will take effect immediately: the pending tasks may still be in progress and keep reporting results. At the moment QFutureWatcher will queue those events and report only with the next resume. This behavior is wrong, QFutureWatcher should not decide when to report events, the sender should decide when is the right time. There's no benefit in reporting already happened events with delay. Because of this, even the pause event itself was being reported after resume. Fixed the behavior by removing the logic of queueing events when the state is set to "paused". It seems unlikely that the users of QFutureWatcher rely on reporting events with delay. [ChangeLog][Important Behavior Changes][QtCore] QFutureWatcher will not immediately stop delivering progress and result ready signals when the future is paused. At the moment of pausing there may be still computations that are in progress and cannot be stopped. Signals for such computations will be still delivered after pause, instead of being postponed and reported only after next resume. Fixes: QTBUG-12152 Change-Id: I9f0b545ac096578c52cc72d60575c018c01e3368 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* moc: handle include directives in enumsFabian Kosmale2020-05-275-0/+69
| | | | | | | | | | | | When including files, moc inserts a MOC_INCLUDE_BEGIN and MOC_INCLUDE_END token into the token stream. Those are already handled in the toplevel Moc::parse function, but parseEnum lacked support so far. Pick-to: 5.15 Fixes: QTBUG-80578 Change-Id: I35c8fd959347d94af20090b3a505dd9e6bfaff88 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QMimeDatabase/xml: use xmlstarlet instead of xmlEric Lemanissier2020-05-261-2/+2
| | | | | | | | some distributions (eg Ubuntu) don't provide xml executable, but only xmlstarlet executable Change-Id: Icc801ded8d4ec1ec4d1dab93289a2365f8cd9cbd Pick-to: 5.15 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Windows: Fix wrong default font sizes after changing scalingFriedemann Kleint2020-05-261-1/+21
| | | | | | | | | | Use the ForDpi versions of retrieving non clientMetrics. Pick-to: 5.15 Task-number: QTBUG-82267 Change-Id: I434f6980c47258bfe40d38723d3f66d71217e186 Reviewed-by: André de la Rocha <andre.rocha@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Document how to use CMake for Qt TestLibKai Koehne2020-05-265-30/+19
| | | | | | Task-number: QTBUG-73058 Change-Id: I6e29a83a1346ea0d2f94fcf445e1de9c07072aa6 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Document how to use CMake for Qt XmlKai Koehne2020-05-267-82/+24
| | | | | | Task-number: QTBUG-73058 Change-Id: I2d19670016c9aef5e96d74b2b7e22c675058f30c Reviewed-by: Paul Wicking <paul.wicking@qt.io>