summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup Widgets examples - foreachChristian Ehrlicher2019-01-2318-49/+54
| | | | | | | | | Cleanup the Widgets examples - replace foreach with range-based for loop in the remaining directories Change-Id: I321e6c0f414401a1ae4fb65762b97d894b725afa Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Luca Beldi <v.ronin@yahoo.it>
* Cleanup Widgets examples - foreachChristian Ehrlicher2019-01-2313-94/+74
| | | | | | | | | Cleanup the Widgets examples - replace foreach with range-based for loop in graphicsview subdirectory Change-Id: I9093b3ae89d73d0b860d29929943881c90074bce Reviewed-by: Luca Beldi <v.ronin@yahoo.it> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Cleanup Widgets examples - foreachChristian Ehrlicher2019-01-2318-69/+82
| | | | | | | | | | | Cleanup the Widgets examples - replace foreach with range-based for loop in mainwindows and painting subdirectories Change-Id: I3c1556dffd22e29dd0a5ba960e699291c496278a Reviewed-by: Konstantin Shegunov <kshegunov@gmail.com> Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Luca Beldi <v.ronin@yahoo.it> Reviewed-by: Martin Smith <martin.smith@qt.io>
* QtCore: mark obsolete functions as deprecatedChristian Ehrlicher2019-01-238-6/+31
| | | | | | | | | | | | | | | Mark the following obsolete functions as deprecated so they can be removed with Qt6: - QDataStream::unsetDevice() - QDir &QDir::operator=(const QString &path) - QDir::addResourceSearchPath() - QResource::addSearchPath() - QResource::searchPaths() - QSettings::setSystemIniPath() - QSettings::setUserIniPath() Change-Id: I5edfb2b4ce1ad843fa5fcd5b4c475ab9352b05f7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Use VPMASKMOV in the epilogue ARGB->ARGB{32,64} AVX2 epiloguesThiago Macieira2019-01-231-97/+47
| | | | | | | | | | | | | | Instead of stepping down to 4 pixels, then 2 px, then 1, with essentially the same code, let's use maskload and maskstore to only load and store the effective portions (instructions new in AVX2). The secondary loop gets run at most twice, since there can be at most 7 pixels left. This fixes an off-by-4 bug in the previous implementation (lines 1041 and 1186 should have had 7 instead of 3). Change-Id: I4d4dadb709f1482fa8ccfffd157862e77ac508f6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* uic: Fix broken icon code generationFriedemann Kleint2019-01-233-9/+14
| | | | | | | | | | | | | Change b86d0b62156993936bf93169a895a92ad60adf7d rearranged the sequence of function calls when generating code adding QTabWidget and QToolBox pages, not taking into account that the iconCall() has a side effect (writing out icon definition) Revert that part and add a comment. Fixes: QTBUG-72980 Task-number: PYSIDE-797 Change-Id: Ie8fbaa36f21cd4408fb1f491195da5c260708e6c Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* Add class QOcspResponse, providing a bit more detailsTimur Pocheptsov2019-01-238-5/+484
| | | | | | | | | | | | | | about why a certificate was revoked (if it was) and the responder's certificate, if we managed to verify a signature, as was previously shortly discussed in the 'OCSP stapling' patch-set. Auto-test update will be in a separate patch. [ChangeLog][QtNetwork][Ssl] Added class QOcspResponse as a part of OCSP stapling support. Change-Id: I4e17fb6fc4c3dae0b8ad04ff2897a4823736d16e Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Allow more fine grained control over QFlags debug outputTor Arne Vestbø2019-01-232-21/+102
| | | | | | | | Useful in contexts such as other QDebug operators, where the class is already known, and the full scope of the flags is not needed. Change-Id: I546381b1722c9c846e2412e56763563b8f625212 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Allow more fine grained control over QMetaEnum debug outputTor Arne Vestbø2019-01-232-13/+90
| | | | | | | | Useful in contexts such as other QDebug operators, where the class is already known, and the full scope of the enum is not needed. Change-Id: Ibd04b1fd4f0f914c7224a007fc248d4ebabcde3e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add convenience enum for QDebug's verbosity levelsTor Arne Vestbø2019-01-232-5/+19
| | | | | Change-Id: I9b7ad39c64d4b5787ce59db91b9ddadb82646e31 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add QDebug convenience for changing the verbosity levelTor Arne Vestbø2019-01-232-0/+13
| | | | | | | qDebug().nospace().verbosity(3) << myObj; Change-Id: Idea3094294d1afbff302e472e47a55a01d3b7735 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove useless fall-back network interface of Dante-serverRyan Chu2019-01-232-8/+8
| | | | | | | | | | Setting the fall-back network interface of danted's environment to eth0 by docker-compose file is redundant because the value of danted's configuration (danted.conf) has been set to eth0 by default. Change-Id: If2dea8daaf851577a573e201e9c50684916e5206 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
* Fix QNetworkReply ServiceUnavailableError in macOSRyan Chu2019-01-231-0/+10
| | | | | | | | | | | | | | | | | | | | | | | For macOS and Windows, the test-server containers are deployed in the VirtualBox (Boot2Docker). Because Boot2Docker is a lightweight Linux distribution made specifically to run Docker containers, it doesn't install avahi-daemon and support mDNS discovery. To resolve this problem, Docker compose file supports "extra_hosts" to add hostname mappings inside containers. BFAIL items: tst_QNetworkReply::headFromHttp(...+proxy...) (ten cases) tst_QNetworkReply::ioGetWithManyProxies(http-on-http) tst_QNetworkReply::ioGetWithManyProxies(http-on-http2) tst_QNetworkReply::ioGetWithManyProxies(http-on-multiple-http) tst_QNetworkReply::ioGetWithManyProxies(http-on-http+socks) tst_QNetworkReply::ioGetWithManyProxies(http-on-ftp+http+socks) tst_QNetworkReply::ioPostToHttpFromSocket(...+proxy) (twelve cases) tst_QNetworkReply::ioPostToHttpFromSocket(...+proxyauth) (ten cases) Change-Id: Iec55966a9b5f191b7446985a15b49a8b09dcf407 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
* Use environment variables to replace the hard-code value of domain nameRyan Chu2019-01-233-19/+32
| | | | | | | | | | Docker compose file supports variable substitution. When running docker-compose up, Compose looks for the environment variables from shell and substitutes the values at runtime. Change-Id: I5255ead82276fac7db24ee74af453f83ca20bbe6 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Docker-based test servers for network-related Qt autotests on WindowsRyan Chu2019-01-239-19/+175
| | | | | | | | | | | | | There is no docker bridge on Windows. Docker document recommends using port mapping to connect to a container. The problem is that it causes a port conflict if the user is running a service that binds the same port on the host. This change applies the same solution of macOS to deploy the docker environment into VirtualBox and use the host network option. Task-number: QTQAINFRA-2294 Change-Id: Iedcb8daa39373f02adb59f02eae2775f02870c54 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Extend the default retry times of QtNetworkSettings::verifyConnectionRyan Chu2019-01-231-2/+2
| | | | | | | | | | | | Apparently, it is not enough to just retry 10 times (10 seconds) in the CI network. It happens from time to time that a test fails due to server port is unreachable. Especially, the docker containers are running in a virtual machine on Windows and macOS platforms. In such cases, it needs more time to warm up the service depending on the system loading. Change-Id: Ia0234bff2a82988b62f451e20b50671708784008 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
* Android: Set minimum supported version to android-21Eskil Abrahamsen Blomfeldt2019-01-2313-127/+27
| | | | | | | | | | | | | | | | | | With the current distribution, this is 90% of active devices, and it was released in 2014. Qt 5.12 is LTS and will continue to support older Android versions for a long time to come. This is to reduce the testing needed on outdated platforms and allow ourselves to use some newer APIs unconditionally in Qt. Android 21 was chosen because it is the minimum version that supports 64 bit builds. [ChangeLog][Android] Increased the minimum supported Android version to Android 5.0 (API level 21). Fixes: QTBUG-70508 Change-Id: Ia7b4345e42ca05a25a292f11ccbb8cbd692cf8f0 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Cleanup Widgets examples - nullptrChristian Ehrlicher2019-01-2354-90/+91
| | | | | | | | | Cleanup the widgets examples - replace 0 with nullptr Change-Id: Id4bf119b9a41f6d10117f3a613a6e604128fa196 Reviewed-by: Konstantin Shegunov <kshegunov@gmail.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Cleanup SimpleTreeModel exampleChristian Ehrlicher2019-01-235-37/+31
| | | | | | | | | | | Cleanup the SimpleTreeModel example: - include own headers first - use nullptr - add sanity checks Change-Id: If57d608e3919368b2022ff86aede8de9c2ba7369 Reviewed-by: Luca Beldi <v.ronin@yahoo.it> Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
* Schannel supportMårten Nordheim2019-01-2218-17/+2428
| | | | | | | | | | | | | Adds support for Schannel, an SSL backend for Windows, as an alternative to OpenSSL. [ChangeLog][QtNetwork][Ssl] Added support for Schannel on Desktop Windows. To build Qt with Schannel support use '-schannel' during configure. Task-number: QTBUG-62637 Change-Id: Ic4fb8ed3657dab994f9f4a4ac5cbddc7001a0a46 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Add QStringList::indexOf/lastIndexOf for QStringView and QLatin1StringAlbert Astals Cid2019-01-224-28/+165
| | | | | Change-Id: I42eac69c1f7ab88441d464b9d325139defe32b03 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update manual qsslsocket test to use HTTP/2 instead of spdyMårten Nordheim2019-01-221-6/+6
| | | | | | | | | Some of the spdy/3 tests don't pass anymore because those services no longer support spdy/3. Solve this by updating it to HTTP/2 (h2). Change-Id: Ib3ef6109b75f4298fed15c1c7922deca35459df9 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* OCSP - simplify feature testTimur Pocheptsov2019-01-221-4/+0
| | | | | | | | Make it more like feature 'dtls' test. Change-Id: I29f5e9337d99440015431a8cfb001f5fb28e1c5f Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2019-01-21117-838/+1043
|\ | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ibfcb30053f3aacb8ec2ec480e146538c9bf440ea
| * tst_QPrinter: stabilize qprinter testChristian Ehrlicher2019-01-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | The CreationDate entry in the two PDF files can potentially be different depending on when the test is run. 97b4c5a5746a33a27076d72ceb3533fbd54b9642 already accounts for it but the current tag for creation date is '/CreationDate'. Therefore check if the line contains 'CreationDate' instead. Change-Id: I1fc069cf935bba07084ac4a0743ff05312374d10 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * tst_QString: fix localeAwareCompare() when using ICUChristian Ehrlicher2019-01-201-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | tst_QString::localeAwareCompare() is failing since ab448f731ecd8437c7c5c8b96a0e7f419ec3a7ca because the 'C' locale no longer initializes ICU and falls back to simple QString comparison. Fix it by explicitly setting the locale for the testdata to en_US so the QCollator is properly initialized. Task-number: QTBUG-73116 Change-Id: I9d4d55e666c5c52f93298dedb7e22da01a25318d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Android: fix NPE on m_editPopupMenuVyacheslav Koscheev2019-01-171-2/+4
| | | | | | | | | | Change-Id: Id6d4aea91d621194cf85f604b1b9acdc916bede1 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * QSqlRelationalDelegate: compile with QT_NO_CAST_FROM_BYTEARRAYChristian Ehrlicher2019-01-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | QSqlRelationalDelegate::setEditorData() does not compile when QT_NO_CAST_FROM_BYTEARRAY is defined. Since it's a public header this will break user code. Fix it by calling QByteArray::data() instead of relying on the implicit cast. Fixes: QTBUG-72764 Change-Id: I9c111dd25f48c9c9780d9f9a5b6b75eed0c8d6ed Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| * Eliminate some stray misleading paths from expected output filesEdward Welbourne2019-01-165-12/+12
| | | | | | | | | | | | | | | | | | The output files for the tuplediagnostics selftest of testlib had a stray non-canoical path fragment in them; so replaced with its canonical form. Change-Id: Ib421380036c3fb1b91447eb8c87be4ad0dfe5c96 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| * Update bundled libpng to version 1.6.36André Klitzing2019-01-1628-639/+634
| | | | | | | | | | | | | | | | | | | | The remaining diff to clean 1.6.36 is archived in the qtpatches.diff file. [ChangeLog][Third-Party Code] libpng was updated to version 1.6.36 Change-Id: Ia9d20c5abca115d509ed0aaf9eebfc85a88bef1d Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
| * clang-cl: use GCC -m CPU feature flag optionMårten Nordheim2019-01-161-0/+21
| | | | | | | | | | | | | | | | To enable non-default options Change-Id: I2d2f5dc8368a8235fd91e7f9986df4402612a823 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * tst_qsyntaxhighlighter: fix no-op QTRY_VERIFY checkMårten Nordheim2019-01-161-1/+2
| | | | | | | | | | | | | | | | The bool is assigned on the previous line: QTRY_VERIFY will not do anything because the statement is already true. Change-Id: I067290e19ffd100819b2b631af431c6013623a00 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| * QSyntaxHighlighter: cancel delayed highlight if done manuallyMårten Nordheim2019-01-162-0/+20
| | | | | | | | | | | | | | | | | | | | It was an implicit effect before which stopped working after dec7961709c90f6977d2447f7fa6c6625af41cb2. Reintroduce it as some projects used this side-effect as a way to abort the initial highlighting. Change-Id: I5340ee9882a242bc8b5f7f843f1cfe793a65d357 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| * Add the command line option --no-strip to androiddeployqtJoerg Bornemann2019-01-161-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | There are certain use cases for keeping debug information on the device, for example collecting stack traces when the app crashes. [ChangeLog][Android] Added the --no-strip command line option to androiddeployqt. Change-Id: I96574c2c57d85fb23d5fc65380e471fa892b6543 Fixes: QTBUG-57771 Reviewed-by: Volker Krause <volker.krause@kdab.com> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| * Fix multiple emission of QGuiApplication::lastWindowClosed() when native ↵Friedemann Kleint2019-01-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | child widgets are used Run the handling in QWindowPrivate::maybeQuitOnLastWindowClosed() for top level windows only. Fixes: QTBUG-73061 Change-Id: I74deb50b06a64e8ef0e438d2abf14888f778a46e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
| * QMacStyle - take into account that native controls are transparent nowTimur Pocheptsov2019-01-161-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We use NSButton to emulate tabs in QTabWidget. Starting from 10.14 in dark theme those button objects tend to be somewhat transparent, thus widget's frame is visible through tab buttons. This is true for native controls also - NSButton, NSSegmentedControl, NSTabView - they all show the similar behavior. The only difference is NSTabView, which is the closest control to our QTabWidget - tab buttons are transparent, but they (AppKit) it would appear just do not draw the frame under this area. Let's do the same, but using clipping. Task-number: QTBUG-71741 Change-Id: I9f19014d0db5f36bacf76ee0068fae6eee793c0f Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * Update QOpenGLTexture::generateMipMaps for ES 3Michael Brasser2019-01-151-4/+3
| | | | | | | | | | | | | | Per the Khronos documentation, this operation is not permitted on ES 3. Change-Id: Iff70ef83d48228277b883df588011432ba80f4bd Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| * testlib: Add missing header files to .pro fileOliver Wolff2019-01-151-1/+16
| | | | | | | | | | | | | | | | With all the headers missing, Creator's clang code model just gives up and it's impossible to work on testlib in Creator. Change-Id: I8814264db10992eeec6f45625580f6788d23b56b Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| * Fix default rpath dirs on Apple platformsTor Arne Vestbø2019-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The @executable_path relative framework directory is one step below the executable, as in: Foo.app/Contents/Frameworks not: Foo.app/Contents/MacOS/Frameworks The former is what Xcode defaults to for new projects. Change-Id: Id08f3f1d80f1c84d76fb71676c5df4a3a6b3da36 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * Fix alignment-warnings about Q_DECLARE_PRIVATE's castsEdward Welbourne2019-01-152-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Q_DECLARE_PRIVATE gets used in the declaration of the public class, where the private class is typically visible only as a forward-decl, with no knowledge of what it's based on; consequently, the macro is obliged to use reinterpret_cast<>, which is subject to warnings when the compiler *can* see both types and their alignments differ. The same applies to Q_DECLARE_PRIVATE_D. So suppress gcc's -Wcast-align around the d_func() return statements. (If we get similar problems with other compilers we can add their suppressions likewise; but, for now, we've only seen this on MIPS64, where we use gcc.) This tripped over one use of Q_DECLARE_PRIVATE in a private Q_SLOTS: section; for some reason, gcc didn't like the semicolon on the friend declaration. Changing the context to plain private fixed that. Fixes: QTBUG-72885 Change-Id: I5edc11d46bd4eb820713adede79d53191a7e2736 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Boxiang Sun <daetalusun@gmail.com>
| * fix out-of-bounds access on trailing percent sign in tr() argumentOswald Buddenhagen2019-01-143-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | tr() recognizes %n and %Ln. it offers no way to escape lone percent signs, which implies that they must be interpreted verbatim, which is what the code actually does. except that it would run off the end if the % appeared at the end of the string. Fixes: QTBUG-57171 Done-with: Mateusz Starzycki <mstarzycki@gmail.com> Change-Id: Icf81925c482be1ea66ec8daafb3e92ad17ea7fab Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
| * Bump versionKari Oikarinen2019-01-141-1/+1
| | | | | | | | Change-Id: I80954f7a3f33dbc8f04b61ebe5b5ed8b6ecb7b6a
| * QLocale: fix crash when using qDebug() in a global destructorDavid Faure2019-01-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | `kdevelop -s doesnotexist` led to ASSERT failure in Q_GLOBAL_STATIC: "The global static was used after being destroyed because of a qDebug() statement in some "unregister" method called by a global object's destructor. This is normally fine, but with %{time} in QT_MESSAGE_PATTERN, qDebug() ends up using QLocale after its global objects (systemLocalePrivate and defaultLocalePrivate) were destroyed. Change-Id: I8d8b34e0197ad1eda8283fcf36d2c250385bb1a3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * macOS: Use tool environment to ensure tests load matching Qt librariesTor Arne Vestbø2019-01-122-11/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Linking with a framework suffix to pick up the debug version of libraries doesn't work as long as the dependencies picked up from prl files are not rewritten to also include the suffix. The result is that we end up loading both release and debug versions of the Qt libraries. Use the target environment (target_wrapper.sh) to set the image suffix instead, which means 'make check' will automatically work. Change-Id: I60b0840760f68e579c270245d394e1dd609a0ebb Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * qmltestcase: Fix generation of Visual Studio project filesOliver Wolff2019-01-111-1/+2
| | | | | | | | | | | | | | | | | | Mimicking the approach from testlib_defines.prf, DEFINES containing a path surrounded by quotation marks have to be handled differently for Visual Studio projects. Change-Id: I26f6a45d4df154f599e8be15b3aa3905cf703a1f Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * QtOpenGLExtensions: Unify license headersKai Koehne2019-01-112-2/+2
| | | | | | | | | | Change-Id: If410c0dc739657a65732d29d45a86a35bee359de Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
| * Documentation: Add \nullptr macro and use where applicableFriedemann Kleint2019-01-1036-61/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt for Python users reading the documentation assume that int(0) can be passed for pointer parameters. Use the newly introduced \nullptr to disambiguate this. In a follow-up step, the \nullptr macro can be defined as None when generating the Qt for Python documentation. Task-number: PYSIDE-903 Change-Id: I3a45f87175a0668ab5f3f95f0aff409f7e3ef027 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * Doc: mention that some filtered events need to be explicitly acceptedMitch Curtis2019-01-101-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QKeyEvent's detailed description already documents this: "A key event contains a special accept flag that indicates whether the receiver will handle the key event. This flag is set by default for QEvent::KeyPress and QEvent::KeyRelease, so there is no need to call accept() when acting on a key event. For QEvent::ShortcutOverride the receiver needs to explicitly accept the event to trigger the override. Calling ignore() on a key event will propagate it to the parent widget. The event is propagated up the parent widget chain until a widget accepts it or an event filter consumes it." However, someone looking at eventFilter() won't see this, resulting in the shortcut not being consumed and propagating elsewhere, so mention it in the docs for eventFilter() too. Change-Id: I14fece52133be641ccdabd81f75706cd10b64669 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * qWaitFor: Prevent being stuck in QCoreApplication::processEventsTor Arne Vestbø2019-01-099-10/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using the overload of QCoreApplication::processEvents that takes a maxtime argument, the function will keep processing events until there are no more events, or until it times out. The problem is that the function doesn't distinguish between events that were on the event queue when the function was called, and events generated by processing events as part of its own execution. If for example a widget calls update() in its paintEvent, the function will spin for the entire duration of maxtime. That doesn't work for qWaitFor, where we need to check the predicate between each pass, so we use the overload of processEvents that doesn't take a maxtime. That's fine, as we have our own timeout logic. Change-Id: I9738d7d0187c36d4a5ddfcd3fd075b0bd84583c4 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * Increase sysctl argument buffer size to include null characterRoland Rossgotterer2019-01-091-5/+5
| | | | | | | | | | | | | | | | | | | | An UUID is 36 characters long, but sysctl and sysctlbyname return a null terminated string with 37 characters. That was too long for the provided buffer. Surprisingly the return code was still 0 instead of -1. The returned buffer was empty though. Change-Id: Ic4d20ecc1b2b3a3e98468d31ac304957d56deee9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>