summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Use stdint.h in qopengl headers on MSVC toov5.5.0-beta1Laszlo Agocs2015-05-022-2/+2
| | | | | | | Task-number: QTBUG-45774 Change-Id: I1505b4ebeb99371ec2099657c9ce05418dd54224 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QRegularExpression: add error strings from PCRE 8.37Giuseppe D'Angelo2015-05-011-1/+2
| | | | | | | Change-Id: Id62abd91c1584e4e63b95afec0520995125fe807 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QSortFilterProxyModel: improve formal argument naming for lessThanGiuseppe D'Angelo2015-05-012-6/+6
| | | | | | | | | | | | Make it clear (just like the other methods) that the indexes refer to the source model, not the proxy model. There was already a note in the documentation, but it was at the end of it; instead, change the formal arguments names. Change-Id: Ia9592f2b080ff276a62de1713a9623e0f3a50cf6 Reviewed-by: Tobias Koenig Reviewed-by: Sérgio Martins <sergio.martins@kdab.com> Reviewed-by: David Faure <david.faure@kdab.com>
* [QTextStream::read.*] Return earlier when nothing has been readKonstantin Ritt2015-05-011-3/+3
| | | | | | | There is no any sense in detecting the encoding of an empty string ;) Change-Id: I1c7af07bd7c3e7e7cf67421a2cb3a1123ca57650 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QFileDialog: Stabilize tests.Friedemann Kleint2015-05-012-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The init()/cleanup() code in tst_qfiledialog and tst_qfiledialog2 currently differs and fails to clean up the settings file since it only removes the legacy settings under the Qt group and instantiates a new QFileDialog while the QSettings class is still in scope. Also, it has no means of clearing the setLastVisitedDirectory(), which causes the tst_QFiledialog::completer() and tst_QFiledialog::history() tests to interfere, leaving the settings in an invalid state. tst_qfiledialog2 does not use QStandardPaths::setTestModeEnabled((). - Ensure the last visited URL is always clean by making QFileDialogPrivate::setLastVisitedDirectory() static and calling it from init(). - Introduce a cleanupSettingsFile() function to the tests that cleans both groups and call it from initTestCase() and cleanup() to ensure a clean state. - Add QStandardPaths::setTestModeEnabled() to tst_qfiledialog2. Fixes sporadic test fails when executing tst_QFiledialog::completer() and tst_QFiledialog::history() in a sequence. Task-number: QTBUG-45764 Change-Id: I24de3caabf77be067b385d64ff11b7a07fe12b72 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* [QFontDatabase] Get rid of QtFontEncodingKonstantin Ritt2015-05-011-30/+8
| | | | | | | | This one has not been unsed for ages (since Qt3?). Change-Id: Iaf514db1b698b34a303f34c150b72db989eb176c Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* [QFontDatabase] Drop QtFontDesc's familyIndex memberKonstantin Ritt2015-05-011-4/+1
| | | | | | | | Many times set but never used. Change-Id: I297f21d4b9878e5f9559a2dfdb2d3de34107bb7d Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* [QFontDatabase] Get rid of some dead codeKonstantin Ritt2015-05-011-3/+0
| | | | | | | | | 1. Checking if `db->count == 0` inside the `for (int x = 0; x < db->count; ++x)` loop makes absolutely no sense; 2. The family gets loaded just a line above (ensurePopulated()). Change-Id: I72dbd42565c4f5a5d9ff8879f10ee0ece7298fa7 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Minor optimization to QWidgetPrivate::setFont_helper()Konstantin Ritt2015-05-011-1/+1
| | | | | | | There is no sense in comparing fonts with different resolve_mask-s. Change-Id: Icfdaf494fce8a59b7138d96fdf7354cc0514ca6a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Optimize QFont::resolve(const QFont &other)Konstantin Ritt2015-05-011-4/+2
| | | | | | | | | When resolve_mask is 0, the font inherits just everything, and there is no need in checking for any resolved attributes; the resolved font always inherits dpi, so do not check it either. Change-Id: Ie5d7ced0859d46a9237447e29051a22569480a51 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Add missing RGB32 <-> RGB30 convertionsAllan Sandfeld Jensen2015-04-301-34/+86
| | | | | | | | Completes the inplace converters so that we can rely on inplace conversions to succede as long as the image depth is the same. Change-Id: Ia1ae34b5de1bc16e87ff5403bdacfcae44a22791 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Fix QImage format after inplace conversionAllan Sandfeld Jensen2015-04-301-34/+92
| | | | | | | | | | | | | Some inplace conversions would not set the requested image format in the returned image, due to the same conversion being used for several destination formats. This patch ensures all inplace conversions return the right format, and adds testing infrastructure to easily test iterate over all formats so that they all can be tested. Change-Id: I68ab17a713ddb2aa8ed6aaf0a0a1ec8bbcb56090 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Windows QPA plugin: Fix debug formatting.Friedemann Kleint2015-04-308-104/+124
| | | | | | | | | | | | | | | | - Introduce QDebugStateSaver for all debug operators. - Remove the "Flags=" from enumerations since their type is now output by default. - Added some spaces since the previous formatting relied on space=true as a result of some debug operators erroneously returning debug.space(), which is now fixed in qtbase. - Fixed formatting, added noquote() where necessary, added some newlines, used stream modifiers instead of QString::number(n, 16) to output hex numbers. - Fix indentation. Change-Id: I64123a4262916e21448cda2aa61ae1100f07291a Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Fix two errors in RGB30 conversionsAllan Sandfeld Jensen2015-04-301-2/+2
| | | | | | | | | The one converters from RGB30 was misplaced in the method table, and the unpremultiplication from A2RGB30 to RGB30 had an underflow mistake when alpha was 2. Change-Id: I92c11ede28611a3dbdce72aca1898845c120c209 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* xcb: Fix updating physical screen sizeAlexander Volkov2015-04-302-7/+19
| | | | | | | | | | | | | | | X server may return an empty physical screen size, for example on VNC, Xephyr or some not very well supported hardware. In this case it's possible to use the size of the virtual desktop, but until now it was done only in the QXcbScreen constructor. Move it to QXcbScreen::updateGeometry() and calculate physical screen size using the DPI of the virtual desktop. Task-number: QTBUG-45564 Change-Id: I6b757818a2fcefdd7b2c0aa31b840a88d625d6ae Reviewed-by: Daniel Vrátil <dvratil@redhat.com> Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Fix QTreeView ending up in wrong state when dragKatja Marttila2015-04-291-1/+1
| | | | | | | | | | | Changed state in MouseRelease so that QTreeView does not end up in wrong state if drag is started but not completed. Task-number: QTBUG-44773 Change-Id: I0b665d2944f2b696bc4b7e79689d110aefa3f194 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* Convert opaque indexed images over RGB32Allan Sandfeld Jensen2015-04-281-5/+7
| | | | | | | | There is no reason to use the more expensive ARGB32 conversions when there is no alpha channel involved. Change-Id: Ifcb325352b8c806ef755db385121a2939c5825b2 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* QStateMachine: optimize conflict calculation.Erik Verbruggen2015-04-281-8/+22
| | | | | | | | Done by using in-place removal from the list of transitions using iterators. Change-Id: I6dced4b214b49b3dcd3ba19ca4cd81a601f81bb6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Add support to set text/uri-list mimedata via setData()Marko Kangas2015-04-281-1/+16
| | | | | | | | | Fixed issue that text/uri-list mimedata got from QMimeData::data() was corrupted after setting it back via QMimeData::setData() Change-Id: I2377523a9286519402ab9127ed7f3fa66e39a679 Task-number: QTBUG-45486 Reviewed-by: David Faure <david.faure@kdab.com>
* Preserve QImage metadata in image transformsAllan Sandfeld Jensen2015-04-282-31/+28
| | | | | | | | | Some QImage methods were not preserving image metadata, or only preserving some of it. This adds the missing parts and adds a test for metadata. Change-Id: Ib5892a23e49dfde5ea26074d3deaa887fa930c6b Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* QIODevice: fix data loss when reading large amounts from sequential devicesMarc Mutz2015-04-281-0/+4
| | | | | | | | | | | | | | | | | In certain situations, when reading a large amount of data from sequential devices with QIODevice::readAll(), content was lost when passing a qint64 value > QByteArray::MaxSize into QByteArray::resize(), which takes an int. The result of the conversion to int is either negative or calculated mod 2^32. In any case, it will at some point be < QByteArray::size(), which prompts QByteArray to truncate, losing already-read content. Fix by adding an explicit size check before calling QByteArray::resize(). This shows once more that an API that uses int for sizes is dangerous. Esp. on 64-bit platforms. Change-Id: I30fbfad0bf37476c34141b6f3786e7e0fc8e1e74 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* QSystemTrayIcon: Fix the placement of title and message in a balloonAlexander Volkov2015-04-271-1/+1
| | | | | | | | | Swap title and message parameters in the QBalloonTip::showBalloon() call. It was wrong in f277c074675389eba0b27f2ccadddd98869fdfbb on xcb platform. Task-number: QTBUG-43428 Change-Id: I18e354703d9fa9c196b2789e6df263debdb7ce06 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Moc: test if superclass list is not empty before accessing first()Jacek Całusiński2015-04-271-1/+2
| | | | | | | | | | Accessing QList().first() with an empty superclassList caused assertion fail. Added check to fix it. Change-Id: I1aff35e0d267fc0e670beadba1bd196b175a4da8 Co-authored-with: Olivier Goffart <ogoffart@woboq.com> Task-number: QTBUG-45790 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Windows: Add "Segoe UI Emoji" and "Segoe UI Symbol" as fallback fonts.Friedemann Kleint2015-04-271-0/+2
| | | | | | | | This enables rendering of Emoji symbols. Task-number: QTBUG-45811 Change-Id: I7cb128dab717870929e02ea9ec253f36fef29804 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Android: Make foreign windows expect global coordinates.Christian Strømme2015-04-271-23/+3
| | | | | | | | | | | | | | | The foreign window implementation was trying to handle parent/child relationships, but it's not supported by the platform implementation and was therefore causing more problems then it was solving. E.g., even simple use cases, such as the parent moving or re-sizing its geometry would not be handle correctly. With this change the parent/child relationship is removed and the geometry of the foreign window will always expect the geometry to be in the global coordinate system. Task-number: QTBUG-43391 Change-Id: I02a1f9cb9eb9fb5ace9b7e912c523bda7c5bfd5c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Avoid setting a swap interval for pbuffersLaszlo Agocs2015-04-271-1/+1
| | | | | | | | As per GL_EXT_swap_control this results in BadWindow. Task-number: QTBUG-45705 Change-Id: Ia3e3f66f326d8f6145d82f33f964b0d6996f0959 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* qdoc: Resolve base classes for a class declared in a namespaceTopi Reinio2015-04-271-3/+4
| | | | | | | | | | | | | | For classes declared in a namespace, QDoc needs to take account the fact that its base classes typically are not qualified with the namespace name if those base classes are from the same namespace. There already was code for this, but it was disabled by a macro. This change re-enables it, and adds an additional check to restart the search in valid namespaces only. Change-Id: Ia07dcb783b59de5fc9ddcfd43000a63c6c74ebe1 Reviewed-by: Martin Smith <martin.smith@digia.com>
* Doc: Bring QSizeF/QPointF::isNull() documentation up to dateTopi Reinio2015-04-272-12/+4
| | | | | | | | | | | | Since Qt 5.0 (commit 09dd19df) sign is ignored when testing whether a QPointF or QSizeF is null. This updates the documentation accordingly. Change-Id: I3de1c748f3caa63b8bd8990006de5ba572eac83e Task-number: QTBUG-45669 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* qdoc: Sanitize anchors in URLs for functionsTopi Reinio2015-04-274-58/+58
| | | | | | | | | | | | | | | | | | When QDoc constructs the full path to a documentation node, it must construct a clean anchor reference. Intra-page links use a different code path, so the links e.g. from Member Functions list to their detailed descriptions always work, but using the link command to link to functions with certain characters (such as 'operator==') failed because the node name was used as-is and not sanitized ('operator-eq-eq'). This change moves HtmlGenerator::cleanRef() static function to its parent class, Generator, and takes it into use in Generator::fullDocumentLocation(). Change-Id: Ic939ffa3ae0f4495ef2a30eff0d4a1de65ea3e8f Task-number: QTBUG-45629 Reviewed-by: Martin Smith <martin.smith@digia.com>
* MySQL: Add support for the timeout options via the connectionOptionsAndy Shaw2015-04-272-12/+32
| | | | | | Task-number: QTBUG-321 Change-Id: I0bbc1ae713fb0278a9973f8e87f28f1b3f1c49ce Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* QMainWindow::restoreDockWidget(): Fix positioning of floating docks with ↵Friedemann Kleint2015-04-261-2/+8
| | | | | | | | | | | native decoration. Use QWidget::move() to position floating dock widgets. Add a test for QMainWindow::restoreDockWidget(). Task-number: QTBUG-45780 Change-Id: I945917728a663916e8c225b9d3d2a75fa508d68f Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QGenericMatrix: remove one of two non-initializing ctorsMarc Mutz2015-04-261-10/+8
| | | | | | | | | ...and port to the remaining one. Can't do the same for QMatrix4x4, because that class is exported. Change-Id: I5448921af9e9194532be1b9f8d739b5c418a5e0b Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* QGenericMatrix: remove copy ctorMarc Mutz2015-04-261-9/+0
| | | | | | | | The compiler-generated one is just fine. Change-Id: Iaacc56d4224c69b66823cc64640a00117c44d3cc Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QDir: sort-by-size remove two unconditional branchesNikita Baryshnikov2015-04-251-1/+1
| | | | | | | | | recent change ad03511256a8279a8f55069e5a3a3465a9e122ec made r be arbitrary, not just -1, 0, +1, and now it doesn't make sense to have two unneeded unconditional branches in the sort-by-size case Change-Id: I9d80210846e89e3e8c574f0c32e04b05202b8a5b Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Short-cut SSE4 unpremultiplyAllan Sandfeld Jensen2015-04-251-2/+4
| | | | | | | | Even with SSE4 optimized unpremultiply it is still significantly faster to skip the calculation on alpha values 0 and 255. Change-Id: Iafe658fea8eacf35a857f292952b0c1ee056139c Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Simplify QQuaternion::operator!=()Marc Mutz2015-04-241-1/+1
| | | | | Change-Id: I5043c86362f5126c52d768b51774086869429e08 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* QVector: Save one copy-CTOR call if we don't reallocSérgio Martins2015-04-241-5/+12
| | | | | Change-Id: Ie0f2eb922500bc3d76852939cf2c5d28d65a43ae Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Remove unused counter variableGatis Paeglis2015-04-231-2/+0
| | | | | Change-Id: I4069fdb75c2ef27fd4ac30de0963472c89165b20 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Fix typo when resolving EGL extension.Gunnar Sletta2015-04-231-1/+1
| | | | | Change-Id: I28a237660e0f6b2583014f79a3a13edc46ef6d0e Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Fix inplace double mirroring on odd sized imagesAllan Sandfeld Jensen2015-04-231-2/+10
| | | | | | | | | | | | | | The QImage inplace mirroring method, failed to handle the middle line when mirroring both ways (rotate 180). In both other mirroring cases the middle can be left untouched, but in this case it needs to be mirrored half way. To make the logic simpler, double mirroring will now mirror half the lines instead of half of every line. Change-Id: Iaa1f1e1c3f7dedfb78891fc93207f6d0c64bcafe Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* uic: Delay the setting of QPushButton::default.Friedemann Kleint2015-04-231-1/+6
| | | | | | | | | | | For the property to take effect, the button must have its parent set. This might not be the case when a container like for example QTabWidget is involved. Move the setting of the property to the bottom of setupUi. Task-number: QTBUG-44406 Change-Id: Ic2013865a020986475fa28f2e3805c63d4de8ed0 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Windows: Fix QLockFile hanging when file cannot be created.Friedemann Kleint2015-04-231-1/+12
| | | | | | | | | | | | | | Return QLockFile::PermissionError when file does not exist, preventing the stale file detection logic from triggering. Add Windows-only autotest trying to create a lock file in a system folder guarded with checks for elevated processes and UAC virtualization. Task-number: QTBUG-45631 Change-Id: I1790f8f925660f6bf1df94c2ced901e6ec57cbb0 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* Add debug operator for QPrinterInfo.Friedemann Kleint2015-04-234-0/+84
| | | | | | | | | | | | Add formatting helper to private class QPrintDevice and use that to implement debug operators for QPrintDevice and QPrinterInfo. Sample output: (QPrinterInfo(id="HP_Color_LaserJet_CM6030_MFP", state=0, name="HP Color LaserJet CM6030 MFP", makeAndModel="HP Color LaserJet CM6030 MFP Postscript (recommended)", default, defaultPageSize=QPageSize("Letter", "Letter", 612x792pt, 2), supportsCustomPageSizes, physicalPageSize=(278, 396)..(907, 1296), defaultResolution=600, defaultDuplexMode=0, defaultColorMode=1, supportedMimeTypes=( "application/pdf" "application/postscript" "image/gif" "image/png" "image/jpeg" "image/tiff" "text/html" "text/plain"))) Task-number: QTBUG-44991 Change-Id: I187414d2f68871e38ace0bd66661d2e37712f662 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Fix FPE in QApplicationPrivate::dispatchEnterLeave() due to invalid cursor ↵Friedemann Kleint2015-04-231-1/+4
| | | | | | | | | | | | | | | | position. QGuiApplicationPrivate::lastCursorPosition is initialized to qInf(), qIn(). Under some circumstances, this is passed to dispatchEnterLeave() which causes an FPE in QPointF::toPoint(). Move the invocation of QPointF::toPoint() to the if-branch handling the enter list, which already fixes the FPE. To be extra sure, clamp to QWIDGETSIZE_MAX. Task-number: QTBUG-45501 Change-Id: I2d1407415e6360196730d23ee319d1ee6981d1f5 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Revert "Remove separate SSE4 unpremultiply function"Allan Sandfeld Jensen2015-04-236-45/+39
| | | | | | | | | | | Could causedSSE4 instructions to be used on non SSE4 machines in cases when qUnpremultiplywas not inlined. This reverts commit 964ccc58534aac436529007000d1c38d76c88834. Change-Id: Ic676ade8f75129e8d37c4d96cbfb2bdb5b794919 Task-number: QTBUG-45741 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* qsystemdetection.h: Check existence of define WINAPI_FAMILY_PHONE_APP.Friedemann Kleint2015-04-221-1/+1
| | | | | | | | | | It is missing in MinGW and causes warnings like: src/corelib/global/qsystemdetection.h:109:24: error: "WINAPI_FAMILY_PHONE_APP" is not defined [-Werror=undef] in QtScript and headersclean failures in Active Qt. Task-number: QTBUG-45666 Change-Id: I167d9d5b33faddfbbcf44bdcce5e86fb43614fa9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QStateMachine: replaced Q_FOREACH with foreach.Erik Verbruggen2015-04-221-16/+16
| | | | | Change-Id: I2bd0f9d7ef1d6f236e2afa9fc5b75c5a6f61a250 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Cocoa: Stop using deprecated -convertBaseToScreen:.Erik Verbruggen2015-04-221-3/+4
| | | | | | | Replaced by -convertRectToScreen:. Change-Id: I38e2b5918a5ee528d6ce65f676e542e365d610a3 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Cocoa: stop using the deprecated NSInputManager.Erik Verbruggen2015-04-222-7/+3
| | | | | | | Replaced by NSTextInputContext. Change-Id: I694b28b766f8bf1d37e0ee87ff503e33d205f8ab Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Cocoa: fix compiler warning.Erik Verbruggen2015-04-221-1/+1
| | | | | | | | | | /Users/erik/dev/qt5-stable/qtbase/src/plugins/platforms/cocoa/qcocoaapplication.mm:137:18: warning: case value not in enumerated type 'NSEventSubtype' [-Wswitch] case QtCocoaEventSubTypePostMessage: ^ Change-Id: Ib496e61a6939f021c90234fef3689b1643003ddd Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>