summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Clang 10: Fix missing-exception-spec error on WindowsKai Koehne2020-09-111-0/+1
| | | | | | | | | | | | Fix error qtbase/src/plugins/platforms/windows/qwindowsdropdataobject.cpp:67:25: error: 'GetData' is missing exception specification '__attribute__((nothrow))' [-Werror,-Wmissing-exception-spec] QWindowsDropDataObject::GetData(LPFORMATETC pformatetc, LPSTGMEDIUM pmedium) Follow the example of just disabling microsoft-exception-spec here. Change-Id: I61feb59e188bff7fdfb30e88f8a06c61ec808828 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Doc: Improve WinTab license informationKai Koehne2020-09-111-2/+2
| | | | | | | | | | | | | | | | | | Do categorize the license as LCS-Telegraphics License. Although SPDX doesn't know about the license (yet), DejaCode does: https://enterprise.dejacode.com/licenses/public/lcs-telegraphics/ So it's more helpful for the user to give the license a name, then to just call it 'Custom'. [ChangeLog][Third-Party Code] Changed classification of the wintab license from "Custom" to "LCS-Telegraphics License" Pick-to: 5.12 Pick-to: 5.15 Change-Id: Iba7538f67b43ceca2e599fc1ede520962d4a7e43 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* CMake: Fix qt-configure-module for modules without qt_cmdline.cmakeJoerg Bornemann2020-09-111-2/+4
| | | | | | | | | | Some repos/modules don't have configure.json files and thus no qt_cmdline.cmake files. Make qt-configure-module check for the file's existence. As drive-by fix, surround the configure.cmake's path by double quotes. Change-Id: If1a91a0bba0c2fd282cfa08fa6ff2bb20f0a15ba Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* CMake: Fix running qt-configure-module.bat without argumentsJoerg Bornemann2020-09-111-0/+1
| | | | | | | We need to make sure to create a config.opt file, even if it's empty. Change-Id: If1e41cea2f3b5f3ce67f30285b77c58f7376546a Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* CMake: Take MODULE_INCLUDE_NAME into account when installingJoerg Bornemann2020-09-111-8/+9
| | | | | | | | | For modules that have MODULE_INCLUDE_NAME set (for example ActiveQt) we must use this name for the installation rules too. Fixes: QTBUG-86484 Change-Id: I1b97cf534ea5e41655c7b3fdd0330b2f58356a3a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Revert "Remove timeStep parameter from QAnimationDrive::advanceAnimation"Lars Knoll2020-09-114-16/+21
| | | | | | | | | | This reverts commit f51b690e91bb2d7c8a03c5cef42abca37d97f8bb. The commit made all animation tests in qtdeclarative on macOS flaky. Change-Id: I4ccaa879df7e2ba7e253657de01cbabc9b2c655f Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QAuthenticator: condition using GSSAPI on credentials availabilityMårten Nordheim2020-09-115-17/+68
| | | | | | | | | | | | AFAICT with GSSAPI the normal workflow is to run kinit or similar and authenticate before running programs relying on it. Therefore we can try to get the credentials before we choose whether or not to use Negotiate. Pick-to: 5.15 Task-number: QTBUG-85123 Change-Id: If0478fdd45389b2939ad87c2f582776fe56959bb Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* GitHub Actions: Fix workflow fileCristian Adam2020-09-111-6/+5
| | | | | | | | -no-iconv configure parameter was removed and various changes to the configure parameters. Change-Id: I8716388b20846cdd1ba63a715308813a312dea65 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Rename QMetaSequence's "elements" to "values"Ulf Hermann2020-09-115-221/+221
| | | | | | | | | | This is so that they are in line with the "value_type" usually found in containers. Associative containers have "key_type" and "mapped_type" and we will use those names for access to elements in QMetaAssociation. Using "value" as name for sequential containers improves consistency. Change-Id: I628b7e1446bb2d56843b843bca72d279a6b247e6 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Prepare QSequentialIterable for non-const operationUlf Hermann2020-09-112-12/+66
| | | | | | | | | Introduce a smart pointer that saves its constness, even if the constness of the parent object changes. This allows us to implement the const and mutable iterators in the same class. Change-Id: I156e564c7fa2ecc8981c6d71861d796a5cbfec66 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QAuthenticator: move debug printing to a logging categoryMårten Nordheim2020-09-111-1/+5
| | | | | | | | | The GSSAPI thing is a bit noisy and not useful unless you're debugging it specifically. Pick-to: 5.15 Change-Id: I4a8c14159ec889776d06e0970ddf66083d788b63 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* QAuthenticator: Don't reset phase on every set* callMårten Nordheim2020-09-111-11/+30
| | | | | | | | | | | | | | In QAuthenticator "detach()" does not do what you expect. First off it doesn't detach at all, and secondly it will reset the phase that the authentication is in. This last part is intended, but it has one issue: if setUser/setPassword is called with the same arguments every time we ask for credentials then we never reach a fail-state since it thinks we will have a new chance to authenticate. Pick-to: 5.15 Change-Id: I02e2e42242220f3fced3572323e6492429cf173e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* tst_QNetworkReply: Avoid race in ioGetFromHttpWithAuthMårten Nordheim2020-09-111-1/+5
| | | | | | | | | | | | | | | | | | | | | Our authentication code is race-y by design: 1. When two requests are fired off and queued at the same time in the same QHttpNetworkConnection then if one of them encounters "authentication required" then it will copy whatever credentials it got to all the other channels in the connection. This is likely what the first part of the test is testing. 2. If a later request is fired off and it includes credentials in the url then the newly included credentials should be used instead of the cached ones. The race here can occurr when one socket either takes too long to connect or the connected signal is not received early enough. Then the first socket is used for both requests and then we can hit case #2 when the url contains credentials. Pick-to: 5.15 Change-Id: I646a5378d8c1256b2de98b51912953df29f68cb2 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* QAuthenticator: Don't assume we haven't tried the URL credentialsMårten Nordheim2020-09-111-3/+4
| | | | | | | | | | | | | It's problematic if we have already used these credentials and it failed. Since then we emit authenticationRequired only for QNAM to intercept it and "helpfully" suggest we use the same credentials again. By moving on we can check the cache or ask the user about the necessary credentials. Pick-to: 5.15 Change-Id: Idaac5ae71167462369b66194ab6b1f77113d636a Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* QAuthenticator: Don't assume cached credentials are newMårten Nordheim2020-09-111-1/+2
| | | | | | | | | | | | Although this is more of a QNAM thing. In some cases what we load from the cache might be credentials we have already tried (and failed with, thus leading us to emit the authenticationRequired signal). With this patch we will fall through more often and ask the user for credentials. Pick-to: 5.15 Change-Id: If2a556883c3ea5b0b225f4df273d38353b552b54 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* rhi: gl: Fix shader cache with unstable vertex input locationsLaszlo Agocs2020-09-112-38/+74
| | | | | | Task-number: QTBUG-86531 Change-Id: I9bcd314e06662e3c6cc4204b24689d61ee6cb298 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* CMake: Implement configure -ltcgJoerg Bornemann2020-09-114-5/+56
| | | | | | | | | | | | | | | | | | | This configure switch sets the CMake variable CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG> per release config to ON. The feature 'ltcg' is enabled if any of the variables CMAKE_INTERPROCEDURAL_OPTIMIZATION, CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG> are ON. In order to implement the check, configurejson2cmake had to be extended to be able to write extra CMake code before and after the feature definition. This extra code can be added to a feature mapping below the keys "cmakePrelude" and "cmakeEpilogue". Task-number: QTBUG-85373 Change-Id: Ia2eb907edcf087f137977a9b090705397f83eb05 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Fix build with -trace lttngJoerg Bornemann2020-09-114-2/+17
| | | | | | | | | | | | Fix superfluous space in qtgui.tracepoints and make tracegen more lenient towards unknown types (the ETW implementation outright ignores those). Pick-to: 5.15 Fixes: QTBUG-86546 Change-Id: I71cc323afa1009dbaefe20e55818ecb6c0b09c59 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
* Interbase: Add support for the boolean typeAndy Shaw2020-09-114-6/+32
| | | | | | | | | | | | | This is added to Interbase in v7 and Firebird in v3 which has been available for sometime now. This means the minimum supported for Interbase is now v7. [ChangeLog][QtSQL][Interbase] The minimum required version for Interbase is now v7. Fixes: QTBUG-83401 Change-Id: I9927fd962f25c935be8ed5d2b7c76c00fb88cd8c Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
* Android: Pass the parsed URI if it fails to get permission on 23 or lessAndy Shaw2020-09-111-0/+4
| | | | | | | | | | | In Android API level 23 or lower it will still be able to open the file even if the permissions are not provided. If the system is not going to allow it then it will prevent it later on. So we trust the system to block access if need be. Pick-to: 5.15 Change-Id: If663e3cf0a10818931577988abdc0fb8ec2650db Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* macos: Rename macos style to macOSRichard Moe Gustavsen2020-09-115-5/+5
| | | | | | | | | This change shouldn't matter much to widgets, since style names there are case insensitive. But for controls style names are case sensitive, and in that case, "macOS" looks more correct. Change-Id: Ia1d442bce465692ff58fecba1cc68ecbb2e52549 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QVariant: guard usage of fromType.metaObject()Richard Moe Gustavsen2020-09-111-1/+1
| | | | | | | | | | | | | | | | This patch amends 19874d6a63. That patch caused a crash to occur when running the auto test tst_QQuickApplicationWindow::attachedProperties(). The crash can be traced back to QMetaType trying to access fromType.metaObject(), which is null. This patch will add a guard to ensure that we don't try to call a function on an object that is null. Fixes: QTBUG-86517 Change-Id: Idafd154a7b6a43e16126038fc5f9b30d7871f0d0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* [QtCore] QDateTime: switch from newRow to addRow in unit testsAndreas Buhr2020-09-111-4/+4
| | | | | | | | | Instead of doing string formating first and then using QTest::newRow, we can do both at the same time using QTest::addRow Change-Id: Ia5c90eb705a806e37b96a1fa174a6557f91bee6d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* [QtCore] Adapt QDateTime unit tests to use QByteArrayAndreas Buhr2020-09-111-8/+8
| | | | | | | | | | | To not have to bother with encodings, a few QStrings are changed to QByteArrays. This way, a few calls to QString::fromLatin1 and to QString::toLocal8Bit can be removed Change-Id: Ia0cf27fc2a86f9842ed0f3ebe47b050bb8a3f4e6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* CMake: Implement configure -qpaJoerg Bornemann2020-09-112-1/+2
| | | | | Change-Id: I38a938cda91a525d2af22deec864c6a12af3e29d Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Do not expose xlib as public dependency of QtGuiJoerg Bornemann2020-09-116-3/+8
| | | | | | | | Consumers of QtGui should link explicitly to xlib if needed. Fixes: QTBUG-86421 Change-Id: Ibc94eb1c1ac405b53749b320c388b037bf693a08 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Do not expose ATSPI as public dependency of QtGuiJoerg Bornemann2020-09-113-3/+3
| | | | | | | | | | | | | | | This was always a compile-only dependency and atspi includes are only used in private headers. The atspi headers can never be a requirement for consumers of QtGui. In Qt5 this code was part of the QtLinuxAccessibilitySupport private module, and for that module the atspi dependency was public. This only affected users that explicitly instructed qmake to pull in the linuxaccessibility_support-private module. Task-number: QTBUG-86421 Change-Id: I23c6a1c466f86b2015dde13fca605fd26299c9db Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Introduce qt-configure-moduleJoerg Bornemann2020-09-113-0/+93
| | | | | | | | | | | | | Add a convenience script to configure a Qt module separately. This script reads and interprets the qt_cmdline.cmake files of the Qt module to be configured and eventually calls qt-cmake-private. Example usage: <install-prefix>/bin/qt-configure-module <source-root>/qtdeclarative -qml-network -- --trace-expand --trace-redirect=cmake.trace Change-Id: I026f1a050cd3f4df740611c32ba8c03161bba7a3 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* CMake: Re-generate src/gui/CMakeLists.txtJoerg Bornemann2020-09-112-24/+44
| | | | | Change-Id: Id2666c3021bcfbeec0e661129c7998977411aaee Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix markdown syntax in cmake/README.mdJoerg Bornemann2020-09-111-1/+1
| | | | | | | | | Make this file parsable by tools that are less lenient than github. Triple-backquotes are for fenced code blocks. Inline code uses backticks (or double backticks if you have code with backticks). Change-Id: Ic49d946fbcaa6f7e97702eadf4a0b0c726fc3217 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove the -no-compile-examples configure switchJoerg Bornemann2020-09-118-29/+1
| | | | | | | | | | | | If '-make examples -no-compile-examples' was specified, sources of Qt's examples would be installed, but the examples would not be built. This switch has always been a source for confusion and is only interesting for distributors, who can just package the examples directory tree. Change-Id: I0291d70e4951d98b553a4abf217db49d05316d3a Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Remove most compiler warnings about missing overridesLars Knoll2020-09-11151-772/+808
| | | | | | | | | | | | Remove around 1000 compiler warnings about missing overrides in our auto tests. This significantly reduce the compiler warning noise in our auto tests, so that one can actually better see the real problems inbetween. Change-Id: Id0c04dba43fcaf55d8cd2b5c6697358857c31bf9 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Document that this method got added in 6.0Lars Knoll2020-09-111-0/+1
| | | | | | Change-Id: I6a7f35f81b9df83f911781516ec7e0ed82e09303 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* tst_QTimer::remainingTime(): get rid of QTest::currentTestFailed()Jarek Kobus2020-09-101-8/+11
| | | | | | | | | | | | | Looks this is redundant in fact and unneeded. The check can never be evaluated to true, since if so, it would mean it had failed in the previous iteration, in which we already handled the exit from the loop. Fixed also some comments. Task-number: QTBUG-83419 Change-Id: I4fe56bfac39cd58b1166967f3ccb80cdff882748 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* QAuthenticator(Negotiate): Try provided credentialMårten Nordheim2020-09-101-4/+17
| | | | | | | | | | Windows only so far, need a similar patch for *nix, or an alternate approach when there is no server set up. Pick-to: 5.15 Task-number: QTBUG-85123 Change-Id: Iff7a6b1540a2f1984153a237eea07c7bb1970064 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* QAuthenticator: Don't use Negotiate if unsupportedMårten Nordheim2020-09-101-0/+2
| | | | | | | | | If we compiled without support for it then we shouldn't consider it an option either. Pick-to: 5.15 Change-Id: If6e0a6afa738f375e360bf3d439196b39e47bee8 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Get rid of qtconcurrentexception.hLars Knoll2020-09-103-67/+0
| | | | | | | | It only contained two aliases that have been deprecated since 2012. Change-Id: I6f65aa5144aca2d8d99f8a6e586b805f685afad2 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* QNAM: Enable HTTP/2 by defaultMårten Nordheim2020-09-105-15/+16
| | | | | | | | | | | | | | | It has been in Qt for some years now and 6.0 marks a good point to enable it by default. The exception is connectToHostEncrypted where we still require the users to enable it explicitly since there's no logical way to disable it. [ChangeLog][QtNetwork][QNetworkAccessManager] HTTP/2 is now enabled by default. Fixes: QTBUG-85902 Change-Id: Ia029a045727cc593d77df9eb3a5888522ad19199 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Doc: Compile snippets only when running testsPaul Wicking2020-09-106-32/+42
| | | | | | | | | | Turn snippets projects into subdirs with libraries to avoid messy dependencies. Fixes: QTBUG-86497 Pick-to: 5.15 Change-Id: Idb2c43f97d56c9b8d9992617ef716bde40fff5b7 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* Doc: Clean up widget snippets projectPaul Wicking2020-09-1014-27/+27
| | | | | | | | | | The main snippets project must be a subdirs project. Move some files and update the affected documentation. Task-number: QTBUG-86497 Pick-to: 5.15 Change-Id: I60073d1b8bd53aa09600eeccf06ba8457ac7c708 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* CMake: Fix generation of XXX_tracepoints.cppJoerg Bornemann2020-09-101-1/+1
| | | | | | | | The include directive was incorrectly written. This amends 5c092c2b401. Change-Id: Ia72ca3a5d5e1486ade4d71a764550d36979640f6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Fix race condition in -trace configured buildJoerg Bornemann2020-09-101-0/+5
| | | | | | | | | | | | qt_create_tracepoints(Core) creates a dependency from Core to Core_tracepoints_header, but the helper library Core_qobject also uses qtcore_tracepoints_p.h and must therefore depend on Core_tracepoints_header too. This amends 5c092c2b401. Change-Id: I0ed51f3ab9accea00f524c170cd319bb8af11df7 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* CMake: Fix call to tracegen when cross-compiling toolsJoerg Bornemann2020-09-101-2/+10
| | | | | | | | | | We need to use the imported host tracegen target to generate files, not the one we're going to cross-build. This amends 5c092c2b401. Change-Id: Ib74dd2d87110383c31216872eb55bebf5d90df37 Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
* Introduce QProcess::startCommand(QString, OpenMode)Joerg Bornemann2020-09-104-3/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The removal of the QProcess::start(QString, OpenMode) leads to more porting work than anticipated. A call like QProcess p; p.start(cmdline); must be transformed in the following cumbersome way: QProcess p; QStringList args = QProcess::splitCommand(cmdline); QString program = args.takeFirst(); p.start(program, args); This patch revives QProcess::start(QString, OpenMode) and renames it to QProcess::startCommand. This is still source-incompatible, but the transformation is much simpler: QProcess p; p.startCommand(cmdline); [ChangeLog][QtCore][QProcess] Added QProcess::startCommand(QString, OpenMode) as replacement for the removed QProcess::start(QString, OpenMode). Change-Id: I5499bbb39a025e115042c43a4cc63affddae585c Reviewed-by: hjk <hjk@qt.io>
* CMake: Re-generate configure.cmake filesJoerg Bornemann2020-09-103-2/+15
| | | | | Change-Id: I9c325db8031e14cf2a2cfb49e5080e3043a0811a Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* configurejson2cmake: Handle expressions of the form "foo != 0"Joerg Bornemann2020-09-101-0/+2
| | | | | | | Such expressions were translated to "foo NOT = 0" which is invalid code. Change-Id: I8b485bfe1d1f553c08df3b5d59b0f39f2dcbd5c0 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* CMake: Document more configure argument mappingsJoerg Bornemann2020-09-101-57/+66
| | | | | Change-Id: I4f96fd59566d011088e426342db9cc6536d63a71 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Android: use bin for instead of QT6_HOST_INFO_BINDIRAssam Boudjelthia2020-09-101-3/+3
| | | | | | | | | | | ${QT6_HOST_INFO_BINDIR} is returning an empty string making the tools paths unusable, and android apps building fails. Partially revert 09ac1bdfc5d2ee7a537c63e54348a8cf8d905fcf. Task-number: QTBUG-86557 Change-Id: I1522b3a4b45fbcb41894ea3bd7c714f7a79eb954 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Cleanup ProString::append/prependLars Knoll2020-09-102-55/+38
| | | | | | | | | | Don't use evil hacks that make assumptions about QString internals. Change-Id: I663602d197f0fcf62886dbfb9a87547097cdab04 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* [macOS] Add native virtual key code to modifier keysMichael Brüning2020-09-101-9/+18
| | | | | | | | | | | | | | Not forwarding the native virtual key code when sending key events in the flagsChanged handler caused a number of problems, e.g. the inability to determine which of the Alt or Shift keys were pressed. Use handleExtendedKeyEvent to include the native virtual key code. Patch inspired by Nyan Pasu. Fixes: QTBUG-69608 Change-Id: I15e9ff1069528d4b50ee4638ab2d8a6fd279db0b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>