summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Removes spacing when widget is hidden in QGridLayoutKarim Pinter2016-04-211-3/+7
| | | | | | | | | | | Removes spacing in QGridLayout when the QWidgets inside of the QGridLayout are hidden, by checking if the sibling is empty, thus duplicate spacing can be avoided. Task-number: QTBUG-52357 Change-Id: I45475e7b264f94ef3bec5f9a4b8cbaa1d53ec6dd Reviewed-by: Karim Pinter <karim.pinter@theqtcompany.com> Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
* Adding notification feature to SQLite driverKarim Pinter2016-04-212-3/+84
| | | | | | | | | | | | This modification enables to use notification feature of SQLite with Qt SQL driver, enables to subscribe for notifications and also to remove notifications. close() is added to destructor to unregister notifications in case it is used in multiple threads. [ChangeLog][QtSql][SQLite] Adding notification feature to SQLite driver Change-Id: I8b98787f5214a406357646a98711a8ff6045a0dd Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
* Remove window flags WindowOkButtonHint, WindowCancelButtonHint.Friedemann Kleint2016-04-202-12/+1
| | | | | | | | | | | They were duplicating other enumeration values (WindowTransparentForInput, WindowOverridesSystemGestures) and were only supported on Windows CE. Task-number: QTBUG-42897 Task-number: QTBUG-51673 Change-Id: I993a933ee2a3dc8a0ebd7ba6aef80b456f50a657 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Remove dynamic loading of functions that are present in Windows Vista onwards.Friedemann Kleint2016-04-198-129/+55
| | | | | | | | Invoke functions directly and add libraries accordingly. Task-number: QTBUG-51673 Change-Id: Ie19d1fc6aa932d6e93a7d310048e4c162fb81046 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* Remove the -qconfig command line argumentLars Knoll2016-04-196-1406/+0
| | | | | | | | This functionality will get replaced by a new and more flexible system to configure Qt. Change-Id: I04cf694ab1671eeed39b79a660566595a22f54a7 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* initializeInflateStream - assert that stream is not nullTimur Pocheptsov2016-04-191-0/+2
| | | | | | | | | | | Coverity is not happy with us testing a pointer (not null) in a couple of places but not in initializeInflateStream. In fact we _always_ test this pointer _before_ calling initializeInflateStream. Anyway, let's make this pre-condition clear by Q_ASSERT()ing it. Change-Id: Ibce99ef6ff1d4e09e3a446a672fa28fc93ab832c Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Avoid nullptr deref in Q_ASSERTSTimur Pocheptsov2016-04-1924-692/+1038
| | | | | | | | | Found by Coverity, CIDs: [159014-159383]. Indeed, Q_ASSERTS can go into the block controlled by the corresponding if-statements, otherwise - why 'if' at all? Change-Id: Ibc99cd48b97287ec132e082d14f3c39350d547f9 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Add support for initializing QSharedPointer from nullptrThiago Macieira2016-04-193-9/+32
| | | | | | | | | | std::shared_ptr supports it. To resolve an ambiguous overload when a literal 0 is passed as a parameter, the normal constructors needed to be made a template, like std::shared_ptr. Task-number: QTBUG-52569 Change-Id: Id75834dab9ed466e94c7ffff14451417892d2148 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Android: Fix crash on startupChristian Stromme2016-04-181-3/+10
| | | | | | | | | | | All internal settings are stored as strings, if the requested setting value doesn't exist, or the type conversion fails, then an exception is thrown. Instead of making use of the convenience functions we can just get the original string an convert it ourself. Task-number: QTBUG-52574 Change-Id: Ic410244a373318e167437eea4381335a907ccbf9 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Change the way we handle features that have sub-featuresLars Knoll2016-04-156-38/+29
| | | | | | | | Make sure we always set the base feature as a flag in qtconfig, and set the sub-feature in addition if it's being used. Change-Id: Icfeb0ec1ac9e1a615b5b22eb5fcce47e0e7fc153 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* OGLTextureCache::insert - make sure it did not failTimur Pocheptsov2016-04-151-1/+2
| | | | | | | | | | | QGLTextureCache is using QCache internally, QCache in theory can delete the object we are trying to insert (in case the cost > maxCost). Vague comments in the code suggest that this can never happen. Q_ASSERT assert this. Found by coverity, CID 11765 Change-Id: I34ef114b9607926cd5e7d2baed4b63051cf87cff Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Uninitialized variable in QTouchEventTouchPointPrivateJesus Fernandez2016-04-151-1/+2
| | | | | | | | Non-static class member rotation is not initialized in this constructor nor in any functions that it calls. Change-Id: I2dde99a8cd2107b0cfb4201f641d40b4d0823aa2 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Implement QFormLayout row removalSamuel Gaist2016-04-142-12/+326
| | | | | | | | | | | | | | | | QFormLayout currently allows to remove a row only through takeAt, which doesn't resize the internal structure used to store the layout-related data. The implementation of rowCount uses that structure so it returns a row count that doesn't match what the user sees. The removeRow methods complement that be doing a "real" removal which will also keep the row count in sync. [ChangeLog][QtWidgets][QFormLayout] Added removeRow(), takeRow(). Task-number: QTBUG-15990 Change-Id: I204b219a837887e4bf95d1bc77407f1c53ae9819 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Windows CE cleanup.Friedemann Kleint2016-04-1412-10335/+1
| | | | | | | Remove remaining CE-specific files and #ifdefs. Change-Id: I407e14cade64c9eaa414f333764b4f82a75befde Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Improve QHttpNetworkReplyPrivate::readStatus()Alex Trotsenko2016-04-141-2/+1
| | | | | | | Check HTTP signature only once in cycle. Change-Id: I06f6b778429243ed17cd4175e532ef201f1e5551 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Take the size and the icon size for MDI buttons from a styleAlexander Volkov2016-04-135-22/+39
| | | | | | | This way they can be DPI-dependent. Change-Id: I117c337aaa3e2bf6fb85cb3b04bbbccd9db41070 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* Implement ordered dithering for image format conversionsAllan Sandfeld Jensen2016-04-125-53/+146
| | | | | | | | | | | QImage::convertToFormat was ignoring its conversion flag argument, only performing dithering when converting to indexed formats. This patch updates the documentation and implements ordered dithering for other conversions. Change-Id: I807353d61669694185b7e595ef262d80d9fbb3f1 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* deliver stationary touchpoints which have changed velocityShawn Rutledge2016-04-121-4/+12
| | | | | | | | | | | | | When using TUIO, and the finger or token comes to a stop, the last event has a stationary touchpoint with zero velocity, but the previous event had movement, with non-zero velocity. If the UI is going to do something with the velocity values, it needs to know when that goes to zero. So this is an exception to the rule that we don't deliver stationary touchpoints. Task-number: QTBUG-52510 Change-Id: Iaa9f72a3749130f6806f2f63512a6ffddca06bce Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Fix documentation of qOverload with clang based qdocOlivier Goffart2016-04-121-0/+3
| | | | | Change-Id: I4c9dbefff0e51753fdd6c06a8d0cf1733b8d3d85 Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
* Fix the naming of the CFLAGS/LIBS for Gtk3Lars Knoll2016-04-121-2/+2
| | | | | | | | The feature is called gtk3, so the naming of the CFLAGS/LIBS should reflect that. At the same time, remove the unused QMAKE_LIBS_QGOBJECT variable. Change-Id: I565a098aaa80f380de0da534d058f315e77a33f6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* QUrl documentation: fix clang parsingOlivier Goffart2016-04-111-0/+8
| | | | | | | | | | QUrl::FormattingOptions need to be declared with Q_DECLARE_FLAGS for documentation purposes. But it's actually a QUrlTwoFlags and need to be so in order to get the default arguments parsed without errors. So hack it by introducing a fake internal QFlags specific to QUrl Change-Id: I851aca2ab3fd4c10d9cb2dc4d6a0f236813d20ad Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
* Cleanup conversion parametersAllan Sandfeld Jensen2016-04-119-109/+115
| | | | | | | | Removes the now unused QPixelLayout parameter, simplifies the colorTable passing and prepares for adding dithering. Change-Id: Iaf7698b248b857804d8921bf118e7cfabbabff87 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-04-1198-5996/+6789
|\ | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qobject.cpp src/gui/painting/qpaintengine_raster.cpp Change-Id: I74e1779832f43d033708dcfd6b666c7b4f0111fb
| * xcb: Optimize non-shm backing store flushingLouai Al-Khanji2016-04-101-21/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Unfortunately the functions in xcb-image are quite slow, both for the subimage generation and the byte order swapping. xcb_image_subimage is implemented as a pixel by pixel copy, and the xcb byte swapping is done manually without utilizing potential CPU instructions to accelerate the swap. Replace both with their Qt equivalents. Change-Id: I1fe1fe5d9576fdf2bab4a8c401d2a6bb842c2727 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
| * Remove unused variables.Volker Krause2016-04-101-2/+0
| | | | | | | | | | Change-Id: I44f4e4f454d86e7a53b44a9b3eb51879f97ae9c6 Reviewed-by: David Faure <david.faure@kdab.com>
| * QDateTime: don't allocate memory in fromOffsetString()Anton Kudryavtsev2016-04-091-9/+12
| | | | | | | | | | | | | | | | Manual splitting instead of QStringRef::split() Change-Id: I27ccf1c4e44ead5b13f85f2cdbd990cb3b874a7a Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * QDateTime: add some constAnton Kudryavtsev2016-04-092-2/+2
| | | | | | | | | | | | | | | | For CoW types const methods will be called. For QDate we can use new const getDate() method. Change-Id: Ie3a4fe48b3635d270a79c9ac5205b835b3442eae Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * Do not clip or rasterize paths completely outside the device rectAllan Sandfeld Jensen2016-04-091-2/+6
| | | | | | | | | | | | | | | | | | | | The controlPointRect is a conservative area that is guaranteed to contain the path, if that does not intersect with the painter's device rect, the path must be fully outside the painted area, and can be ignored. Change-Id: If14d7dbaf916aa284b941d01e773da3365dce5bf Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * X11: Better support non-32bit visualsLouai Al-Khanji2016-04-0914-290/+366
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch improves support for non-32bit screen configurations on X. The patch mostly touches the xcb platform plugin but the changes to the glx convenience functions do affect e.g. the offscreen plugin as well. Since QWindow instances are now by default of type RasterGL instead of Raster the majority of all windows are in fact instances of QXcbGlxWindow. This means that the eventual QSurfaceFormat that we use is chosen based on the available OpenGL configurations. Here the GLX config resolution code did not do a very good job in trying to find the closest match relative to the requested QSurfaceFormat, instead preferring higher bit depths. This is an issue since many configurations support 32-bit windows even if the screen itself has a root window with depth 16. In particular, servers supporting both GLX and Render are very likely to have such visuals. Particularly affected are remote X connections - even if the application itself makes no use of OpenGL at all! The changes introduced by this patch are as follows: 1. Improve the GLX visual selection logic 2. Improve the xcb visual selection logic 3. Remove duplicated visual lookup for OpenGL-enabled windows 4. Configure the default QSurfaceFormat to match the primary screen depth Change-Id: Id1c176359e63a4581410e20350db5ac2c083e1cf Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
| * QtBase: use erase and std::remove_if with QList and QVectorAnton Kudryavtsev2016-04-088-51/+60
| | | | | | | | | | | | | | ... instead of using removeAt in a loop, with quadratic complexity. Change-Id: I38b49e56b12c396db9fc0f1b75d8fb43c503a7f6 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * add cross-platform tablet->mouse event synth; enable on AndroidShawn Rutledge2016-04-087-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's urgent to fix the issue that on Android, it became impossible to interact with any widget or MouseArea which handles only mouse events but not tablet events, using the stylus, because stylus events are sent only as QTabletEvents. Before 5.6 (change 01d78ba86a631386a4d47b7c12d2a359da28f517) they were sent as touch events, and mouse events were synthesized from those. Whereas on other platforms, every QTabletEvent is followed by a synthesized QMouseEvent. This fix proceeds in the direction that event synthesis should be done in cross-platform code so that platform plugins don't have to repeat it, following the same pattern as for touch->mouse synthesis. Just as in that case, the application can disable it, and the platform plugin can also report that it's unnecessary for Qt to do the synthesis because the platform already does. So QTBUG-51618 is fixed, but QTBUG-47007 requires us to remove the tablet->mouse synthesis from all platform plugins, because the plugin does not know whether the tablet event was accepted or not, so it does not have enough information to decide whether to synthesize a mouse event. Synthesis has been unconditional until now, which contradicts what the documentation says: the mouse event should be sent only if the tablet event is NOT accepted. We can now gradually make this promise come true. [ChangeLog][QtCore][Tablet support] A synthetic mouse event will no longer be sent after every QTabletEvent, only after those which are not accepted (as documented). Task-number: QTBUG-47007 Task-number: QTBUG-51618 Change-Id: I99404e0c2b39bbca4377be6fd48e0c6b20338466 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
| * toCurrencyString() - Add missing documentationDan Cape2016-04-081-1/+7
| | | | | | | | | | | | | | | | Documentation was missing for the new toCurrencyString() function that adds a precision value. Change-Id: I16c10cdd18dfc37839fccb907470b0942f100e5d Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
| * Remove redundant QT_PREPEND_NAMESPACETimur Pocheptsov2016-04-081-1/+1
| | | | | | | | | | | | | | | | | | | | We are already QT namespace, no need in QT_PREPEND_NAMESPACE. The original code had invalid '::' thus referencing a name from a global scope, it was fixed by QT_PREPEND_NAMESPACE, but just removing '::' is enough. Change-Id: Icda2a2ce8e474a358b74edd49bca487621608e78 Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
| * Add flag for showing document terminator in textEskil Abrahamsen Blomfeldt2016-04-083-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 208496091d994c2ffe44ea41368fb659978c1581, the behavior of QTextOption::ShowLineAndParagraphSeparators was changed to also include a section symbol at the end of the document. This was an unnecessary behavioral change. Instead we add a separate flag for this marker. [ChangeLog][QtGui][Text] Added QTextOption::ShowDocumentTerminator flag. Task-number: QTBUG-52048 Change-Id: I2f6f7e5c9c894f46525682f2c6520a7003fa09bc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * xcb: replace qt.xcb.glintegration logging category with qt.qpa.glShawn Rutledge2016-04-085-12/+12
| | | | | | | | | | | | | | | | This is more concise, consistent with Windows, and fits the pattern that all logging categories in QPA plugins should begin with qt.qpa. Change-Id: Ica169b547cb3d816e6e2c0449f0e4a0c58883b9a Reviewed-by: Gatis Paeglis <gatis.paeglis@theqtcompany.com>
| * Re-generate QLocale data from CLDR v29Konstantin Ritt2016-04-084-5315/+5697
| | | | | | | | | | | | | | | | | | | | | | * A bunch of fixes and additions to the locale data * Add new scripts from Unicode 8.0 and 9.0 * Map some potentially useful languages and territories [ChangeLog][QtCore] QLocale data updated to CLDR v29 Change-Id: I759ccb27fe19be2722be913c5c2e6aa5f36e5c14 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * OpenGL, PlatformSupport: use QStringRef to optimize memory allocationAnton Kudryavtsev2016-04-076-13/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | Replace substring functions that return QString with corresponding functions that return QStringRef where it's possible. Create QString from QStringRef only where necessary. While touching the code, also port loops to C++11 style. Change-Id: Ib94d29b6ecec1cdab2604d0277a743e8b340be5e Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * Reduce verbosity for QT_XCB_GL_INTEGRATION=noneGatis Paeglis2016-04-071-9/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | When QT_XCB_GL_INTEGRATION=none we were printing: 1) qt.xcb.glintegration: QT_XCB_GL_INTEGRATION is set to "none" 2) qt.xcb.glintegration: Choosing xcb gl-integration based on following priority () 3) qt.xcb.glintegration: Failed to create xcb gl-integration Omit line 2 (useless) and line 3 (misleading). Change-Id: If5e65a5bc8cc4a1fa97858049a26aac9a9535950 Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| * QStringRef: add missing {c,}r{begin,end}()Marc Mutz2016-04-072-18/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Most containers have them in Qt 5.7, so add them to QStringRef, too. Brush up the docs, use the const_iterator typedef in the API, for consistency with QString's docs. [ChangeLog][QtCore][QStringRef] Added reverse iterators, rbegin(), rend(), crbegin(), crend(). Change-Id: I3d2884a1b2faae02c610ab3871552b65bc6e2521 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-04-0737-218/+311
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/network/access/qftp.cpp src/widgets/itemviews/qheaderview.cpp src/widgets/itemviews/qlistview.cpp tests/auto/network/access/qftp/tst_qftp.cpp Change-Id: I9f928f25d45d8944dd60bb583f649fc1615bc5d9
| | * QFtp: Use UTF-8 encoding.Friedemann Kleint2016-04-071-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to RFC 2640, FTP uses UTF-8 encoding. Fix the conversions accordingly. Task-number: QTBUG-52303 Change-Id: I615199b3d074fc3861f25df113dda672525766b6 Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Richard J. Moore <rich@kde.org>
| | * Fix QPrinter PDF output using fonts with spaces in the PostScript name.Jake Petroules2016-04-061-3/+4
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-52352 Done-with: Andy Shaw <andy.shaw@theqtcompany.com> Change-Id: Id8dcb4a57520c2cc53483672f6578e5ab0bb5de5 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * QFontDialog: re-enable X close button in window decorationMarc Mutz2016-04-061-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: Id8d9dab7a0e4cf22abefd9bdc7bf2fd4cba1f445 Task-number: QTBUG-32240 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * QStringRef: fix some QStringRef <> const char * relational operatorsMarc Mutz2016-04-061-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Their implementations were swapped. Found while extending tst_qstringapisymmetry, which only exists in dev, so test will be added to dev once this change has merged up. [ChangeLog][QtCore][QStringRef] Fixed relational operators against (const char*) to return the correct result. Change-Id: I3f331037571b9a543a6885802836b768143d1c1a Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | * Avoid unnecessary allocation in QClipData::setClipRegion()Gabriel de Dietrich2016-04-061-1/+1
| | | | | | | | | | | | | | | Change-Id: I1280a496478ec6839ac432ffd63ecea28dbb972a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * Refactor QWindowsXPStylePrivate::drawBackground() and helpers.Friedemann Kleint2016-04-062-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pass the DC obtained drawBackground() to drawBackgroundDirectly(), saving a call to hdcForWidgetBackingStore() to find it. Pass the error code from the Win32 API DrawThemeBackground() to the calling functions. Change-Id: I1c25241f53d87e4429ad924f7b2e29da215d7e4f Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| | * Windows QPA: Scale hotspot of custom cursors correctly.Friedemann Kleint2016-04-061-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Separate factors in QWindowsCursor::createPixmapCursor() and apply factor to the hotspot. Task-number: QTBUG-52276 Change-Id: Ia5a5db39ddc2bc4215a23ff8625431af9b4a76d8 Reviewed-by: Adam Light <aclight@gmail.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| | * Remove empty first lines of files.Friedemann Kleint2016-04-063-3/+0
| | | | | | | | | | | | | | | | | | | | | They might upset licensing related tools. Change-Id: I858d21fc418ba16959c88847b559b11bea29ed6b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * Direct2D QPA: Fix build with clang-cl.Friedemann Kleint2016-04-061-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove overzealous constexpr triggering errors like: in file included from .\qwindowsdirect2dpaintengine.cpp:44: ./qwindowsdirect2dhelpers.h(58,37) : error: constexpr function never produces a constant expression [-Winvalid-constexpr] Q_DECL_CONSTEXPR inline D2D1_RECT_F to_d2d_rect_f(const QRectF &qrect) ^ ./qwindowsdirect2dhelpers.h(60,12) : note: non-constexpr function 'RectF' cannot be used in a constant expression return D2D1::RectF(qrect.x(), qrect.y(), qrect.x() + qrect.width(), qrect.y() + qrect.height()); ^ C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\um\d2d1helper.h(160,5) : note: declared here RectF( ^ Task-number: QTBUG-50860 Change-Id: I0bb4d17b7a7db69c5cc7e286ef0b8ff104f72b2e Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| | * Explain QTimeZonePrivate::isValidId a bit more carefully.Edward Welbourne2016-04-061-17/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Its "rules" are actually guidelines, its suggested regex was wrong, its actual implementation was fuzzier than its documentation suggested and the exception it tacitly permitted should be distinguished from the stricter rules it otherwise appears to implement. There was also a redundant check ('-' had been handled earlier in the chained if). Explain why the situation is tricky, fix the regex mentioned (making it more readable, too) and note what might be worth doing a little more fussily, without actually changing code behavior. Change-Id: I93fa0da0640a134e5d84011b435a186576824063 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>