summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix build error with Intel Compiler 15 on WindowsThiago Macieira2015-01-062-0/+4
| | | | | | | | | | | | | | | | | If the constructor is inline, the generated code needs access to the vtable, which gets emitted with the first virtual function (in QtGui), but somehow icl.exe can't find it in debug. Looking at the .obj files it generates and comparing to MSVC, it seems that: - both generate and export the inline constructor from Qt5Guid.dll - MSVC will call that constructor from qoffscreenintegration.obj - icl.exe will inline the constructor and requires a symbol not exported from Qt5Guid.dll I can't explain why (probably a compiler bug). Change-Id: I0ab9c078ae4fc794826025d68d364124c7247e80 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* Give ICC-as-Clang a Q_CC_CLANG version number tooThiago Macieira2015-01-061-0/+4
| | | | | | | Give it version number 3.5 for current compatibility. Change-Id: Ia023d29b3b3946f8642a0550279ae63cbb803fc5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* iOS: Remove QIOSKeyboardListener self-change assert/guardTor Arne Vestbø2015-01-061-2/+0
| | | | | | | | | We're fairly confident self won't change in that case, and the assert was causing warnings in release builds. Change-Id: I4a826579bb4cedef8423e8d43cb370e1f3b80407 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Make QDBusConnection and QDBusServer return an error on default objectsThiago Macieira2015-01-063-6/+6
| | | | | | | | | | The error of "Not connected". This incidentally solves a crash when QDBusServer().lastError() is called but libdbus-1 couldn't be found. Change-Id: Id93f447d00c0aa6660d4528c4bbce5998d9186a8 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Autotest: fix a race condition in verifying a peer D-Bus connectedThiago Macieira2015-01-066-14/+52
| | | | | | | | | | | | | | | On the unit test side, everything is sequential: we first ask for the connection, verify that it is connected, then ask the remote side via the session bus if it is connected. Unfortunately, the remote site may handle things in a different order: it may handle the incoming function call to "isConnected" before doing accept(2) on the listening socket. So, instead, make the local side block until the connection is received on the other side. On the remote, we don't block, instead we use the feature of delayed replies. Change-Id: Ie386938b8b39dd94a9d7e5913668125fb4a3c7da Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Re-enable constexpr for ICC 15Thiago Macieira2015-01-061-0/+1
| | | | | | | | | The bug noted in d88e4edcd548e5bb024e75016c5a3449d103bd8d appears to be resolved. Change-Id: Id20906ff83f74bd16267d44bf447626b81187e71 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Fix change-of-sign warnings with ICCThiago Macieira2015-01-061-3/+3
| | | | | | | | | | qlocale_p.h(427): error #68: integer conversion resulted in a change of sign We hadn't enabled Q_COMPILER_CONSTEXPR for ICC. Change-Id: Ie7e3070b9f8f2cf512d2745001312865e698596b Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* windeployqt: add clean step to toplevel makefileMaurice Kalinowski2015-01-061-1/+2
| | | | | | | | | | Currently you could only invoke windeployqt for debug and release builds, but not windeployqt_clean resulting in artifacts after the clean step. Change-Id: I3a93e4909a017f3594cc5b0c2249ed25b777c008 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com> Reviewed-by: Andrew Knight <qt@panimo.net>
* Android: Fix QCryptographicHash testEskil Abrahamsen Blomfeldt2015-01-062-0/+11
| | | | | | | Include test data in qrc when building on Android. Change-Id: I611ca24fe8764eb709b6ce27e814840ea919d4f1 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Fix QCommandLineParser testEskil Abrahamsen Blomfeldt2015-01-061-0/+9
| | | | | | | | | Skip the tests that require building and deploying an external command line application, since that's not how we do things on Android, and it's really not very relevant for that platform. Change-Id: I2c1985687e25fb0cf124b1d57c8ba60e37d2ff96 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Fix QCollator testEskil Abrahamsen Blomfeldt2015-01-061-0/+5
| | | | | | | | On Android the POSIX implementation of QCollator is used, and this does not support setting other locales than the default. Change-Id: I25d23949341fc555e8be4f6836ae68cc8813cc46 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Fix QChar testEskil Abrahamsen Blomfeldt2015-01-062-0/+10
| | | | | | | Include test data in qrc when building on Android. Change-Id: Id80623324788dac21bd5ddbeef8108f54d6bc8f7 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Fix QByteArray testEskil Abrahamsen Blomfeldt2015-01-062-0/+10
| | | | | | | Include test data in qrc so it can be found on Android. Change-Id: Iaca8422120f1ef842aafeb0cc209cb9fdd70f05f Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Fix QTranslator testsEskil Abrahamsen Blomfeldt2015-01-063-1/+30
| | | | | | | | Bundle test data in qrc on Android. Extract it, as the tests expect to find it in the file system. Change-Id: I251eca3c23141a608b1cbac5ee0b7164c068f9b4 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Check XML output and optionally stop on fail.BogDan Vatra2015-01-061-0/+41
| | | | | | | | The failures will be printed in red color. Use -f param to stop on fail. Change-Id: Ife58f9264a9ac859d739842c6d1359acde807ce7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* JPEG: Fix reading of EXIF orientation.Friedemann Kleint2015-01-063-12/+27
| | | | | | | | | | | The orientation is unsigned short, read it as such. In JPEG-files created by Ricoh/Pentax cameras, the data is saved in Motorola format. Reading the wrong data size will produce invalid values when converting the byte order. Change-Id: I8f7c5dc5bfc10c02e090d3654aaefa047229a962 Task-number: QTBUG-43563 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Windows: Fix QColorDialog's live updates while picking outside colorSérgio Martins2015-01-063-5/+48
| | | | | | | | | | | | Microsoft's SetCapture() doesn't work on windows owned by other processes, so instead we use a timer. This is the same approach as used by qttools/src/pixeltool. The mouse move approach however is more elegant and doesn't hammer the CPU with QCursor::pos() calls when idle. For this reason the workaround is Q_OS_WIN only. Task-number: QTBUG-34538 Change-Id: I40a6f7df5bf2a3a29ade8fe4a92f5b5c4ece7efb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Don't bind to QHostAddress::Any if we want to do IPv4 multicast opsThiago Macieira2015-01-051-3/+3
| | | | | | | | Linux gracefully allows us to do that and treat the v6 socket as if it were v4. Other OS (notably OS X) aren't so forgiving. Change-Id: I13dd3274be2a4b13e8b1eef93cbc2dd17b648f96 Reviewed-by: Richard J. Moore <rich@kde.org>
* tst_QLockFile: simulate a crash betterMarc Mutz2015-01-041-4/+4
| | | | | | | | | | | Instead of leaking the QLockFile instance, which causes leak-checkers to emit false positives, simply call exit(), which doesn't run the destructors, yet doesn't lead to leak-checker warnings. Change-Id: Ia61010671e5218ae412e2bcf873e66255a2c5a99 Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix a memleak in QAssociativeIterable::value()Marc Mutz2015-01-042-16/+39
| | | | | | | | | | | | | | | | QtMetaTypePrivate::QAssociativeIterableImpl::{find,begin,end}() allocate a new _iterator, so when they're used outside of the ref-counted world of QAssociativeIterable::const_iterator, their lifetime needs to be manually managed. Instead of going to that length, which failed in previous iterations of this patch, implement value() in terms of (new) find() and let find() operate on const_iterator. Because of forwards compatibility between patch releases, use (unexported) friend functions for now with the intention to make them proper member functions come Qt 5.5. Task-number: QTBUG-41469 Change-Id: I43b21eae0c2fc4c182369e669a8b3b457be68885 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Link against QMAKE_LIBS_EXECINFO when using backtrace(3).Raphael Kubo da Costa2015-01-034-0/+6
| | | | | | | | | | | | | Add a new mkspec variable, QMAKE_LIBS_EXECINFO, for platforms where backtrace(3), backtrace_symbols(3) and others are not in libc, but rather in a separate library -- on the BSDs, this is libexecinfo. Use it in corelib/global/global.pri so that libqt5core links against it and has the proper dependency when necessary. Change-Id: I62ac36c9b3ba7ab0719420cb795087d43ec138a4 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Doc: fix the type listed for the functions in QAtomicIntegerThiago Macieira2015-01-022-91/+91
| | | | | | | The "int" was a left over when this was documentation for QAtomicInt. Change-Id: If7b7688982d27cbbd42f080eff7d08344b587f44 Reviewed-by: Richard J. Moore <rich@kde.org>
* Autotest: Forward stderr of the sub-processesThiago Macieira2015-01-025-1/+4
| | | | | | | So we can get the output when running with QDBUS_DEBUG=1. Change-Id: I6a6b8e0d82727c522914fb90a7ce594c86307d8f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* Autotest: Be nicer when asking the sub-processes to exitThiago Macieira2015-01-028-17/+32
| | | | | | | | | | Instead of killing them outright (and note that terminate() doesn't work on Windows), ask them nicely to exit on their own. This way, if we run them in valgrind, valgrind gets a chance to print the leak check output and summary. Change-Id: Ib6cc8d4560ff0bf255f94980eb220e97592c00f0 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* Added ROUND test for PostgreSQLIsrael Lins2014-12-301-13/+17
| | | | | | | The ROUND function for PostgreSQL only accept NUMERIC field as argument Change-Id: I0c3753bfe4167cd47158e21b407cca8771816104 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* [QDateTime] ISO Time zone designators can be [+-]HHIsrael Lins2014-12-302-5/+12
| | | | | | | | | Added support on QDateTime::fromString to read correctly dates on ISO format with Time zone designators at format [+-]HH Change-Id: Ied5c3b7950aee3d0879af0e05398081395c18df5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* QODBC: fix converted string values empty SQLServer 2012Maximilian Hrabowski2014-12-301-1/+11
| | | | | | | | | | | | | | SQL Server 2012 Native Client (version 11.0.2100.60) or later introduced a change in the behavior of the SQLGetData method when converted string values are involved. In older version a (sometimes wrong) size was returned. Now always SQL_NO_TOTAL is returned which signals to read as much data as available. SQL_NO_TOTAL was handled like SQL_NULL_DATA in the code before which indicates a NULL value so the returned string was empty. See link for more info: http://msdn.microsoft.com/en-us/library/jj219209.aspx Change-Id: Ia0d2296caf593890b301ee1848d1bf3eb8d7b6fe Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Added timezone support for datetime fields in PSQLJulien Blanc2014-12-303-27/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds correct timezone support in PSQL plugin. Prior to this patch, no timezone support was provided, so only the following case worked : * using local time in both client application and postgresql server * datetime were using second precision This patch tries to take care that postgresql has two different datatypes for date time, respectively : * timestamp with time zone * timestamp without time zone Both are internally stored as UTC values, but are not parsed the same. * timestamp with time zone assumes that there is a time zone information and will parse date time accordingly, and then, convert into UTC before storing them * timestamp without time zone assumes that there is no time zone information and will silently ignore any, unless the datetime is explicitly specified as having a time zone, in case it will convert it into UTC before storing it Both are retrieved as local time values, with the following difference * timestamp with time zone includes the timezone information (2014-02-12 10:20:12+0100 for example) * timestamp without time zone does not include it The patch does the following : * parse the date retrieved by postgresql server using QDateTime functions, which work correctly * always convert the date to UTC before giving it to postgresql * force time zone so that timezone information is taken into account by postgresql * also adds the milliseconds when storing QDateTime values The following configurations are tested to work : * client and server using same timezone, timestamp with or without tz * client and server using different timezone, timestamp with tz The following configuration will *not* work : * client and server using different timezones, timestamp without tz Because data will be converted to local time by the postgresql server, so when returned it will be different from what had been serialized. Prior to this patch, it gave the illusion to work because since TZ information was lost, time was stored as local time from postgresql. Lots of inconsistencies occurred, though, in case client tz changes... I don't expect this to be an issue since having different TZ in server and client and *not* handling this is a broken setup anyway. Almost based on changes proposed by julien.blanc@nmc-company.fr [ChangeLog][QtSql] Added timezone support for datetime fields in PSQL Task-number: QTBUG-36211 Change-Id: I5650a5ef60cb3f14f0ab619825612831c7e90c12 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* configure.exe: improve error message by adding the filename.David Faure2014-12-301-1/+1
| | | | | | | | | | | | | Before: Could not find output file: No such file or directory After: Could not find output file 'arch.exe' or 'arch' in C:/Qt/qt5/qtbase/config.tests/arch : No such file or directory (it turned out that linking in that directory failed because of a wrong %PATH%) Change-Id: I948d7f10f7e82f77a08ac9a8db76d97536c42dd0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* tst_QUdpSocket: Fix inverted logic in getting a non-"any" addressThiago Macieira2014-12-281-23/+18
| | | | | | | | We want to use "localhost" if the server's address is "any", as some OS can't send datagrams to "any" (e.g., OS X and FreeBSD). Change-Id: I1004bc2282e7f930cdb7ed394aa9f4b5a1cfcf82 Reviewed-by: Richard J. Moore <rich@kde.org>
* Don't hardcode port numbers in tst_QUdpSocket wherever possibleThiago Macieira2014-12-281-10/+15
| | | | | | | | On my Mac Mini, port 5000 is in use, which means the broadcasting test fails. Change-Id: Ifb0883263e277f388342430349ea7315d42f324a Reviewed-by: Richard J. Moore <rich@kde.org>
* Fix silly QSKIP for IPv6 in tst_QUdpSocket::multicastThiago Macieira2014-12-281-1/+1
| | | | | | | | It was unconditional. Someone forgot to check for IPv6 support before skipping IPv6 tests. Change-Id: I7b11528ad02560f0db9defde3c64f76f48a6c1f8 Reviewed-by: Richard J. Moore <rich@kde.org>
* Report QHostAddress::Any explicitly in qDebug()Thiago Macieira2014-12-281-1/+4
| | | | | | | | With toString(), it was printing "0.0.0.0", which is the same as QHostAddress::AnyIPv4, making it difficult to tell the two apart. Change-Id: I4668ec3337c25ddfdc2fa3bbacc83b9d34316b1f Reviewed-by: Richard J. Moore <rich@kde.org>
* Fix win32-g++ build due to -WerrorSérgio Martins2014-12-261-0/+4
| | | | | | | | | | | qwindowsprintdevice.cpp:182:85: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] && DeviceCapabilities((LPWSTR)m_id.utf16(), NULL, DC_PAPERSIZE, NULL, NULL) == paperCount MinGW DeviceCapabilities is returning an int, although microsoft documents it as returning DWORD. Change-Id: I3acd76dde0b8b83f8a785ec84e3413115c847cb2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Silence warning in tst_QUdpSocket::multicast for Any+IPv4Thiago Macieira2014-12-242-3/+9
| | | | | | | | | | QUdpSocket doesn't support binding to QHostAddress::Any and then joining an IPv4 multicat group since QHostAddress::Any is really an IPv6 socket with v6only = false. The test did check this case, but failed to ignore the warning. Change-Id: I62d782408319a6e566e0ff1a6081b706ac1f669c Reviewed-by: Richard J. Moore <rich@kde.org>
* Fix tst_QUdpSocket::multicastLeaveAfterCloseThiago Macieira2014-12-241-3/+6
| | | | | | | | | With IPv6, you cannot bind to a multicast address. You need to bind to a local address only. The previous tests either checked this or didn't check the result of bind(). Change-Id: Ief70887d8988fc1bc4394cf6ff34b5d560e5748e Reviewed-by: Richard J. Moore <rich@kde.org>
* Glib config test: fix compiler warningsGiuseppe D'Angelo2014-12-241-1/+2
| | | | | | | Remove warnings: "assigned but not used" and "uninitialized usage". Change-Id: I247e1de020e78c35787b8e1e30421174ac232fd5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QNX: Revert the change to give higher precision timers.Roger Maclean2014-12-241-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous change (SHA 82c2118c) to provide better than 1ms accuracy for timers on QNX is not safe. According to the docs, ClockCycles is not guaranteed to return consistent information if called from different CPUs. While this can be addressed by locking the thread to a single CPU, you wouldn't want to do that here. On some systems (e.g. BB10) the behavior is extremely bad since ClockCycles only has 32 bits of precision. This results in overflows in the calculations making short timers run very slowly (16ms timers were around 1s). Also ClockCycles wraps in under three minutes causing even more problems. I've talked to the kernel developers and there is currently nothing that will give you better than 1ms accuracy. An individual program could use ClockCycles to calculate more accurate times if they want. It's not clear to me what benefit one would get with increased accuracy. Unless I've missed something, these times are only used to calculate timeouts for calls such as select. These timeouts will themselves have the same resolution as clock_gettime provides so the increased accuracy would appear to be for naught. Change-Id: Ia38b154ca41949becbd0b8558a9ff4ddd5e01a43 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Fix silly mistake: 0 is a valid file descriptorThiago Macieira2014-12-241-1/+1
| | | | | Change-Id: I60baa01f0ef9419a73535c761c4722c5abd6f26e Reviewed-by: Richard J. Moore <rich@kde.org>
* Stabilize tst_QUdpSocket::broadcastingThiago Macieira2014-12-241-1/+1
| | | | | | | | | Sending 100*8 packets of each type of message is WAY overkill. That's a stress test without limiting. My Linux system starts reporting EAGAIN on the socket, so reduce the amount of data sent. Change-Id: I153f44cf3b91d37526dac580b400114cc80b1769 Reviewed-by: Richard J. Moore <rich@kde.org>
* Don't try to send broadcasts over IPv6Thiago Macieira2014-12-241-4/+7
| | | | | | | | | | IPv6 has no such thing, so don't try to bind to an IPv6 address to send broadcasts (even though that works) and it's a poor idea to bind to IPv6 to receive broadcasts. Moreover, skip any IPv6 network addresses (broadcast() is invalid). Change-Id: I2829b042c000158565adfd92db682f37d67dacae Reviewed-by: Richard J. Moore <rich@kde.org>
* Suppress silly shell warning during qmake of qtcpsocket.proThiago Macieira2014-12-241-1/+1
| | | | | | | | If you don't have /etc/lsb-release, you'd get sh: line 0: [: =: unary operator expected Change-Id: Idb5c79f799879e4d32cd640ef74fb388227f831e Reviewed-by: Richard J. Moore <rich@kde.org>
* Autotest: Disable multicast testing with proxiesThiago Macieira2014-12-241-10/+1
| | | | | | | | | It doesn't make sense because there is no command to ask the proxy server to join a multicast group. At best, we could write a datagram via proxy without joining, but we definitely can't receive. Change-Id: Icc6b54572a053fb7821dfca1f4111f2046ff8686 Reviewed-by: Richard J. Moore <rich@kde.org>
* Remove a memory leak in the custom sort filter model exampleGiuseppe D'Angelo2014-12-231-5/+5
| | | | | Change-Id: Ie14f07bc2ee2215da2a81a75d816d4763fac085f Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QRawFont: improve the thread-safety checksGiuseppe D'Angelo2014-12-231-1/+14
| | | | | | | | | | | | | | 384388f2 introduced some checks, and used an assignment in an assert; that sets off compiler warnings about expressions with side effects into an assertion. Hence, that code needs to be reworked a bit. Unfortunately, there's no single define we can use to know if assertions are enabled or not in Qt, so simply use QT_NO_DEBUG to enable/disable those checks. The actual "thread" data member is kept around to avoid break ABI depending on debugging flags. Change-Id: I8b07e7ff6f81359d6b0653a1d9cc2b720541d1b9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Temporarily disable the QtDBus tests if the session bus isn't availableThiago Macieira2014-12-231-1/+10
| | | | | | | | | | This is a temporary measure while the Qt CI system is updated to have the correct D-Bus configuration. Once it is fixed, this commit should be reverted, so that we don't run into the situation in which the tests aren't getting run on some configurations and we never know about it. Change-Id: I7192d4d95a60dcb63acfa6cc90bfdc58592b0664 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Fix include headers for qsslcertificate_qt.cppThiago Macieira2014-12-231-2/+2
| | | | | | | | | | | | The order is: 1) own header 2) own private header, if any 3) other headers Commit f17d7a124f0fa817a7e1a2dda6f48098432c0dc0 broke the order. Change-Id: I7225024691db91fd936a057accdad65bacb3f979 Reviewed-by: Richard J. Moore <rich@kde.org>
* Doc: corrected broken links qtbaseNico Vertriest2014-12-236-16/+11
| | | | | | | Task-number: QTBUG-43115 Change-Id: Ib441326083294a6d59d75510142b1481f7b0bc35 Reviewed-by: Topi Reiniö <topi.reinio@digia.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* Check screen before changing cursorJoni Poikelin2014-12-231-1/+2
| | | | | | Task-number: QTBUG-43508 Change-Id: I6b525cab2a3958f4e3528ed8102d07984f152e60 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Check for valid receiver before sending gesture events.Jason Haslam2014-12-231-0/+3
| | | | | | | | | | | | Gesture events sent to a disappearing tooltip can crash. This can most easily be seen by scrolling over a tooltip on OSX with a magic mouse middle scroll gesture. Task-number: QTBUG-42826 Change-Id: Id5510895f63297ca157e3d24a3f4e3a6034586e8 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>