summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Remove QByteArray's methods taking QString and their usesSona Kurazyan2020-06-253-247/+0
| | | | | | | | | | [ChangeLog][QtCore][QByteArray] Remove method overloads taking QString as argument, all of which were equivalent to passing the toUtf8() of the string instead. Change-Id: I9251733a9b3711153b2faddbbc907672a7cba190 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* CMake: Fix qmake mixing with static build and system_xcb_inputJoerg Bornemann2020-06-251-2/+3
| | | | | | | | | | | The .prl generation uses a very simple generator expression evaluator that cannot cope with the $<TARGET_EXISTS> expression used in src/plugins/platforms/xcb/CMakeLists.txt. Replace this genex with a conditional qt_extend_target call. Change-Id: Id17a230d66f701eb0938d10d6b6b7b680290b1c8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Fix pcre2 compilation with intelcet part 2Alexandru Croitor2020-06-252-0/+80
| | | | | | | | | | | | | I somehow forgot that we build the pcre2 sources not only as part of the bootstrap library and qmake, but also as separate library as well. Apply the flags to the bundled library. Amends 976fa5134aea52741df7b25a196fa36251dc932f Amends fa98adbd04de9d44ce921436b92589a41f285dcd Change-Id: Ia1db3a8bd731c7e3ee4d7109be8e2ef98c594070 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Avoid converting supersized QRectF to QRectAllan Sandfeld Jensen2020-06-251-3/+8
| | | | | | | | | | | Check that the sizes are even representable when checking if clipping is necessary. Fixes oss-fuzz 23630 Pick-to: 5.15 5.12 Change-Id: I95d6873d28b0e4f47aae7666f7ee96b745dc997b Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Use QList instead of QVector in sqlJarek Kobus2020-06-2510-16/+16
| | | | | | Task-number: QTBUG-84469 Change-Id: I942aec7d949331a52d7f12fa2725d8d9707f605f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Android: Don't pause when in multi window modeAndy Shaw2020-06-251-1/+2
| | | | | | | | | | When the application is in multi window mode then when pausing it should not suspend the application as it can still be visible in the background. Change-Id: I03a561459b2aa04c808b7d4220cd3e558671dd17 Pick-to: 5.15 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Fix compile warnings when passing short ints into printf formattingVolker Hilsheimer2020-06-251-2/+2
| | | | | | | Use %hd instead of %d. Change-Id: I0062a507140d70263770cd7fe923efe94822d00e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Allow qMin, qMax and qBound for types that can be losslessly convertedLars Knoll2020-06-251-0/+43
| | | | | | | | | | | | | | | | Add overloads for qMin and friends where the arguments are of different type, but one can be easily promoted to the other. Return the promoted type. Promotions are only allowed if both types are either signed, unsigned or floating point numbers. This should simplify writing code in many case (as for example qMin(myint64, 1)) and also help reduce source incompatibilities between Qt 5 and Qt 6, where the return types for sizes of our containers changes from int to qsizetype. Change-Id: Ia6bcf16bef0469ea568063e7c32f532da610d1cd Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Skip proxy widgets that can't take focus when (back)tabbingVolker Hilsheimer2020-06-251-4/+6
| | | | | | | | | | | | | | Fixes regression introduced in b4981f9d4ca914c6ecaa49bfdd69e51806a3671a, due to which it was possible to back-tab into a widget even though it or its focusProxy had a NoFocus policy. As a drive-by, split the complicated if-statement up a bit for improved readability. Change-Id: Ib0ac2604076e812e340b11534c23ae8ae958d082 Fixes: QTBUG-76924 Pick-to: 5.15 5.12 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* QMetaObject: Compare threadIds when checking receiver threadMike Achtelik2020-06-251-9/+16
| | | | | | | | | Comparing threadIds is faster, especially if invoked from a non qt thread, where QThread::currentThread() needs to create a QAdoptedThread/QThreadData first. Pick-to: 5.15 Change-Id: I44b3013283754f1a5ac9d62debcf4c82be77c554 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix conversion of QVariant() in QJsonArrays and Objects (through CBOR)Thiago Macieira2020-06-241-7/+3
| | | | | | | | | | | | | | | | | | | | | When I wrote the QCborValue to QJsonValue conversion, I used QJsonValue::Undefined because it allowed to keep some level of compatibility in CBOR, despite the function documentation saying that CBOR undefineds became JSON nulls. Which they did. But when we converted QJson{Array,Object} to be backed by CBOR classes, that Undefined meant the insertion into the array/object actually deleted the entry. [ChangeLog][JSON] Fixed a regression from 5.14 that caused values of default-constructed QVariants in QVariantLists, QVariantMaps and QVariantHashes to disappear when converting to JSON via fromVariant{,List,Map,Hash}. Fixes: QTBUG-84610 Pick-to: 5.15 Change-Id: Ic0987177fe463f352db9bd84993f116e2bdacc75 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QPointingDevice: Parent the default mouse to QCoreApplicationUlf Hermann2020-06-241-1/+2
| | | | | | | Otherwise it will leak. Change-Id: I1c522dace0139dac3e626399963f58c56f052aba Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* forkfd/linux: add support for RISC-VAndreas Schwab2020-06-231-1/+1
| | | | | | Pick-to: 5.15 Change-Id: I758a401abd6851839908e09aec51edbe4aa95925 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* forkfd/linux: handle failure from sys_cloneAndreas Schwab2020-06-231-0/+2
| | | | | | Pick-to: 5.15 Change-Id: I98a28a816fdc089cefcbf8f42053ddffedc10cdf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix living QLibrary member after shutdown of QCoreApplicationMike Achtelik2020-06-231-1/+19
| | | | | | | | | | | | LibResolv uses a QLibrary which is a QObject that must be deleted if the QCoreApplication is being destroyed to release the underlying library. A Q_GLOBAL_STATIC won't release any memory and is not able to manually release it. Pick-to: 5.15 Task-number: QTBUG-84234 Change-Id: I97fe5faca309e9c1e85435f602ad7f8c3f633b48 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add a warning and tidy some triviaEdward Welbourne2020-06-231-8/+3
| | | | | | | | | | | | | An attempt to setSpec(TimeZone) gets treated as setSpec(LocalTime), as the method has no parameter to carry *which* zone; this was done silently, but should be brought to the caller's attention. So warn. Moved a declaration closer to its use, folded an if/else into a single assignment using ?: and removed a fatuous \fn just before the function it desribed. Change-Id: Ia35c87e0ba373675d3ae1e6ef3bf05016c06c48d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Save DST status when computed for a mutable QDateTimeDataEdward Welbourne2020-06-231-0/+1
| | | | | | | | | | Most calls to localMSecsToEpochMSecs() happen from functions that can't save the DST status it repots (due to the data being const); but refreshDateTime() can and (given its name) clearly should. Pick-to: 5.15 Change-Id: Ib53c88d2233925da275f0ac52f768cada92c5d2d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix living QObject member after shutdown of QCoreApplicationAndré Klitzing2020-06-231-2/+19
| | | | | | | | | | | | | | QHostInfoLookupManager has a QThreadPool as member. QThreadPool is a QObject and must be deleted if the QCoreApplication is being destroyed to release the underlying ThreadData. A Q_GLOBAL_STATIC won't release any memory is not able to manually release it. Pick-to: 5.15 Task-number: QTBUG-84234 Change-Id: I96be4601c3af38fa7c753a6f7acb8273ee277a27 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Simplify QSqlResultPrivate::fieldSerial()Andy Shaw2020-06-231-15/+1
| | | | | | | | | | Now that the bound values are kept in placeholder order we can depend on that and not have to ensure that fieldSerial() would give us something that is in alphabetical order should it end up being sorted. Change-Id: I3a3e443bef150a06f455e18e3502235b1ae4d242 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QString: add char8_t overload of fromUtf8()Marc Mutz2020-06-233-0/+19
| | | | | | | | | | | | | Use the overload-with-template trick from P1423 to avoid ambiguities when existing callers pass 0 or nullptr. Add a qdoc-ignored macro to hide the fact that the overload is a template. [ChangeLog][QtCore][QString] Added char8_t overload of fromUtf8(). Change-Id: Iaa2d365bfa161ef36cc73fa3bad50aabf34d01db Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix living QObject after shutdown of QCoreApplicationAndré Klitzing2020-06-232-4/+11
| | | | | | | | | | | | QThreadPool is a QObject and must be deleted if the QCoreApplication is being destroyed to release the underlying ThreadData. A Q_GLOBAL_STATIC won't release any memory is not able to manually release it. Pick-to: 5.15 Task-number: QTBUG-84234 Change-Id: Ia82bcff2b564b753ed687f025ff86fa1bed1e64c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QCborMap: remove the optimization not to detach from non-const find()Thiago Macieira2020-06-231-8/+4
| | | | | | | | | | | | | | | | | All our tests were find() == end() or !=, which depends on the evaluation order of the arguments to operator==(). If end() is called first, then the detach happens before find() and all is well. But if find() is called first, it may return end() before end() detaches. [ChangeLog][QCborMap] Fixed a bug that could cause the iterator returned from a failing key search with find() not to match end(). Now, every call to find() will detach in shared QCborMaps; to avoid this, use constFind() and constEnd(). Fixes: QTBUG-84583 Pick-to: 5.15 5.12 Change-Id: I552d244076a447ab92d7fffd161793496a8d03a8 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* QMimeDatabase/zlib: fix build with z_const macro emptyThiago Macieira2020-06-231-1/+1
| | | | | | | | | | | The next_in pointer in z_stream is defined as "z_const Bytef *" but z_const is actually an empty macro in most builds. Since our data is read-only constexpr, we need this const_cast to compile. Fixes: QTBUG-84457 Pick-to: 5.15 Change-Id: Ied637aece2a7427b8a2dfffd1612a01ae46f7c1a Reviewed-by: David Faure <david.faure@kdab.com>
* Prospective fix for trying to build FontConfig on WindowsFriedemann Kleint2020-06-223-3/+7
| | | | | | | | | | Strawberry Perl has been found to ship a libfontconfig. Change the exclusion to win32. Fixes: QTBUG-85184 Change-Id: Ic953ba3226c275a204720ff83161fba138eae0cb Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* QVarLengthArray: add missing move special member functionsMarc Mutz2020-06-223-0/+73
| | | | | | | | | | | | | | | | A QVLA is copyable, so it should be movable, too. Added a helper function a la P1144's uninitialized_relocate_n to deal with the QTypeInfoQuery stuff. This way, the code is re-usable everywhere it's needed. The same cannot be said for QArrayDataOps, which only a parent can love... [ChangeLog][QtCore][QVarLengthArray] Added missing move constructor and move-assignment operator. Task-number: QTBUG-39111 Change-Id: If0dc2aa78eb29062d73dcd3dc4647ba345ae39e6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Use QList instead of QVector in mocJarek Kobus2020-06-225-59/+75
| | | | | | Task-number: QTBUG-84469 Change-Id: Id95a656e6277a7c348c02c3267a45ac176c1643b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Use QList instead of QVector in uicJarek Kobus2020-06-226-162/+162
| | | | | | Task-number: QTBUG-84469 Change-Id: I2ce8ca51409c8e29a84d88bdda968e6dec419bea Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Use global share context in QRhiGles2Jüri Valdmann2020-06-221-0/+4
| | | | | | | | Needed for using native textures in WebEngine. Task-number: QTBUG-78682 Change-Id: I8458b17767bb992357064d85f159781ea24e61dc Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Avoid Freetype synthesizing for large font sizesEirik Aavitsland2020-06-221-1/+1
| | | | | | | | | | Freetype's fake emboldening does not give good results for large font sizes. Pick-to: 5.15 Fixes: QTBUG-84570 Change-Id: I1a7722c1482e3450e5a549c31c9766d930fcd13a Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Remove confusing comment in CoreText font engineEskil Abrahamsen Blomfeldt2020-06-221-1/+0
| | | | | | | | | | The comment says we don't need synthetic italic for oblique, but synthetic italic actually *is* oblique, since there is no way to synthesize italic. So just remove the comment as it is unclear what its purpose is. Change-Id: I72f727b958e817e376d73f6c001d410a5f55a152 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Enable access to the VAO resolvers through QOpenGLContextPrivateGiuseppe D'Angelo2020-06-225-37/+62
| | | | | | | | | | | | | | | | | | | This is a commit in preparation for an upcoming change in QtQuick. We want to store the resolved functions for managing VAOs somewhere; the "least worst" choice is next to the all other function resolvers, which are in QOpenGLContext(Private). To avoid moving the VAO resolvers themselves, leave a hook in QOGLCPrivate, similar to e.g. the texture function resolvers. The hook gets populated when the VAO resolvers for a given context are requested. This removes memory management burden from the users of those functions (again, just like other function resolvers), and makes the initialization of the functions automatic. Change-Id: I0eba30a85bf8ad82946a5d68e91009d8b4bd91cf Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* QNAM: Make QNetworkConnectionMonitor able to move to another threadMårten Nordheim2020-06-224-14/+51
| | | | | | | | | | | | | | | | | Requires moving construction and destruction of the IConnectionPoint (contained in QNetworkListManagerEvents contained in QNetworkStatusMonitorPrivate) and the calls to CoInitialize and CoUninitialize to start()/stop() so it can be taken down and brought up in a reasonable way. Partial squashed cherry pick of bde6b27882143acbafa8c0b2e8055c3808ae3dd4 and the following fixup patch 84be436ef0f8253af87cdd2742858107e54c228b. Task-number: QTBUG-84031 Change-Id: I9d644261c6c730ea511e28d75da91bd34504bd03 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit bde6b27882143acbafa8c0b2e8055c3808ae3dd4) (cherry picked from commit 84be436ef0f8253af87cdd2742858107e54c228b)
* QSslSocket: remove certificate-related settersTimur Pocheptsov2020-06-223-208/+3
| | | | | | | | | | They were deprecated with replacements in QSslConfiguration proposed (and some without alternative, which we'll provide if there is any demand in such an API). Special thanks to M.N. for a nice hint on how to amend the test without introducing a new API. Change-Id: I7841a5b3f30469d8204b61cb65921c34275e0650 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Replace "no devices registered" warnings with qCDebugShawn Rutledge2020-06-222-9/+12
| | | | | | | | | | The idea was to keep nagging us to update all the platform plugins to do device registration. But besides being annoying, it would cause test failures if we start adding QTest::ignoreMessage() all over, and then some platforms start doing device registration properly. Change-Id: Ia0fbb64cf86f33532be032ec9eebe6e4ad607f20 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Use QList instead of QVector in QtConcurrentJarek Kobus2020-06-225-5/+5
| | | | | | | Task-number: QTBUG-84469 Change-Id: I99e41c1fef5459d7358b20a97a1dbefcd43bb4e5 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Move UNIX themes into QtGuiFriedemann Kleint2020-06-2248-149/+108
| | | | | | Task-number: QTBUG-83255 Change-Id: I9e3aecd8e172b60121f472c840eaf2a5538af438 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Change boundValues() to return a QVariantListAndy Shaw2020-06-224-32/+83
| | | | | | | | | | | | | This enables the order of boundValues to be consistent as with a QMap it could have been reordered which can be a problem for positional bindings. [ChangeLog][QtSQL] Changed signature of QSqlQuery::boundValues() to return a QVariantList Fixes: QTBUG-51609 Change-Id: I1c80fa8522fa7352723420b6fc9ec466406315fb Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* xcb: Remove need for QXCBScreen to resolve QXcbGlIntegrationTor Arne Vestbø2020-06-211-2/+1
| | | | | Change-Id: I9de4f47bfdf88c92959f210e05c1fc1e8a459cde Reviewed-by: Liang Qi <liang.qi@qt.io>
* xcb: remove multi-connection code pathGatis Paeglis2020-06-215-64/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code was introduced in 2011 as an experimental feature and have been untested/unmaintained ever since. It's time to remove it for the following reasons: - It has never been documented in QGuiApplication under "Supported Command Line Options". The intended command line was: ./app -platform xcb:address:display - I am not aware of other toolkits that would provide this functionality - connecting to several X displays simultaneously. - XCB plugin respects the "-display" command line and DISPLAY envvar which should be sufficient. So the "workaround" to get your window on 2 X displays is: ./app -display :0 ./app -display :1 - There are no JIRA bugs where users would complain that this feature does not work. AFAICT it has not worked for years. Almost all functions care only about the "default" connection, and don't attempt to support multi-connection. - This will stop confusing people who want to contribute to the XCB plugin. [ChangeLog][Platform Specific Changes][X11] Connecting to multiple X servers simultaneously within the same application is no longer supported. Task-number: QTBUG-52408 Change-Id: I61ce23480702bb89b02c6028fa0986fe63481978 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Remove deprecated QStyleOption::init()Christian Ehrlicher2020-06-2119-38/+31
| | | | | | | | Even it was not marked as deprecated the replacement function initFrom() is available since Qt4 times (and init() is deprecated since then) Change-Id: I09a4ebbf66b01fbe7aec67691dc68d2e42d1cd78 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Android: Fix android accessibility not being set activeVikke Matikainen2020-06-213-1/+17
| | | | | | | | | | | | | | Android platform event of activating accessibility might be received, before the platform plugin is initialized, thus disregarding the activation step. This change saves the activation event state and defers setting it in platform integration. Fixes: QTBUG-77320 Pick-to: 5.15 5.12 Change-Id: I06aab76159d1de0e72c0c535dbe80c2858f8e79b Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Move implementation of QVector/List back to qlist.hLars Knoll2020-06-2026-1131/+1106
| | | | | | | | | | | | | And name the main class QList. That's also the one we document. This gives less porting pain for our users, and a lot less churn in our API, as we use QList in Qt 5 in 95% of our API. In addition, it gives more consistent naming with QStringList and QByteArrayList and disambiguates QList vs QVector(2|3|4)D. Fixes: QTBUG-84468 Change-Id: I3cba9d1d3179969d8bf9320b31be2230d021d1a9 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Only add file url if it references a local fileMichael Brüning2020-06-201-1/+2
| | | | | | | | | | | | Remote URLs were converted to local file urls and converted to relative paths, which led to bugs when copying URLs from e.g. the web sites and pasting them into the command line. Original patch by Allan Sandfeld Jensen. Task-number: QTBUG-80243 Change-Id: I2cd41635b34b2ead424441719795705ef19d37f2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Remove deprecated roles BackgroundColorRole and TextColorRoleChristian Ehrlicher2020-06-203-8/+0
| | | | | Change-Id: I2729102d1efa9f3809ec22c29517961800e7dc6d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QtSql: remove unused includesChristian Ehrlicher2020-06-202-5/+0
| | | | | Change-Id: I6d47daa8fe17bf4be3b100f1a04d63dee4851daa Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QRect(F): remove deprecated functionsChristian Ehrlicher2020-06-202-38/+0
| | | | | | | They were deprecated since Qt5.0 so it's time to go away. Change-Id: Ib0192f9048ff15c9d47fb1a23046ccfe0ee7d807 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove deprecated QStyleOptionFooVx typedefsChristian Ehrlicher2020-06-202-122/+0
| | | | | | | They were not used the whole Qt5 lifetime. Change-Id: I1452b90d63bbeed3cc9131b04ed5263b38ad89b3 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QSortFilterProxyModel: remove deprecated functionsChristian Ehrlicher2020-06-202-29/+0
| | | | | Change-Id: I1775fafc6cca88c0c65032a1fd126dc3b42975c9 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QTreeWidget: remove deprecated function items()Christian Ehrlicher2020-06-202-13/+0
| | | | | | | | | It does not return anything and was already deprecated in Qt4.8 (and already returned an empty QList back then) Change-Id: I3a2f1b79081d3289d13ba9fdee346aa730d16114 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Move QTextCodec support out of QtCoreKarsten Heimrich2020-06-2058-45009/+30
| | | | | | | | | | * Assume UTF-8 on all Unix like systems * Export some functions to be able to compile QTextCodec once moved to Qt5Compat. Task-number: QTBUG-75665 Change-Id: I52ec47a848bc0ba72e9c7689668b1bcc5d736c29 Reviewed-by: Lars Knoll <lars.knoll@qt.io>