summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright to 2014 for accessibilityFrederik Gladhorn2014-07-042-2/+2
| | | | | Change-Id: I4210456122bf8a6d3730f017f3ce6dd1a1bcb3f5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Accessibility Linux: Implement set focus actionFrederik Gladhorn2014-07-041-0/+50
| | | | | | | | | | | This is used by Orca for geometric navigation (aka flat review) to move the focus around. It is also generally sensible to be able to programatically move the focus around. This way of moving the focus is redundant with the action interface's focus action. Task-number: QTBUG-40048 Change-Id: I1b61ea843f6bfc3dc00007772e0e5102555ca752 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Add initializer list support in QJsonArrayJędrzej Nowacki2014-07-041-0/+52
| | | | | | | | | | | | | | It allows to create a QJsonArray instance in C++ by using a similar expression to JSON. For example: QJsonArray a = {1, 2, 4}; [ChangeLog][QtCore][QtJson] QJsonArray now supports C++11 initializer lists. Task-number: QTBUG-26606 Change-Id: Icc352e518d9649d24176c89e7113d200d5c50b0d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Windows clipboard: Deny CF_DIB support for images with alpha.Friedemann Kleint2014-07-032-11/+77
| | | | | | | | Support CF_DIBV5 for these images so that transparency is preserved. Task-number: QTBUG-11463 Change-Id: I51881ae8bfbd05b92abd309766f4da9a7ea26c2d Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Add tests for assignment operatorJoão Abecasis2014-07-031-0/+49
| | | | | | Change-Id: I3265cb75c4d785faaf1efc183d8c1293dfff9165 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Ensure that QTemporaryFile clears all file mappings.Friedemann Kleint2014-07-031-0/+5
| | | | | | | | | | | Factor out code to clear all mappings into QFSFileEnginePrivate::unmapAll() and call that from QTemporaryFile. Task-number: QTBUG-39976 Change-Id: Ic1ceeba0ba4451866f1081fee430e5c458c0819d Reviewed-by: Jonathan Liu <net147@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make it possible to know when a screen is being removedAleix Pol2014-07-022-2/+12
| | | | | | | | | | | | | | | | | So far, we had to listen to the QObject::destroyed signal from the QScreen class to figure out whether a screen was removed. Often, this is already too late, given that most of the QWindows have been moved by then and we don't get to react before the windows are being set to the primary screen. This patch introduces a new signal that will notify about a screen removal before the screen is started to be destroyed, so that the application gets to decide what to do with the screens before Qt decides to move things around. [ChangeLog][QtGui][QGuiApplication] Added QGuiApplication::screenRemoved signal to inform that a screen has been removed, before Qt reacts to it. Change-Id: I99304179f4d345cae581a87baac6cff7b8773dea Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Use the standard functions in GLES3 builds in VAOsLaszlo Agocs2014-07-022-1/+25
| | | | | | | | | | | | | | | | There is no guarantee that the OES extension is present and the standard functions are not required to be dynamically resolvable on ES. By performing the ARB-style lookup for the suffixless function names we can also support ES3 compatible contexts on desktop GL. This also fixes the problem of picking up the APPLE extension functions instead of ARB when both are available. vaoFuncsType was set to ARB correctly but the helper has to take the preference of ARB into account too. Task-number: QTBUG-38168 Change-Id: If7402320e8f96891017674f3c43bc57c4b5d29f3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Add support for initializer_list construction in QFlagsAdam Majer2014-07-021-0/+24
| | | | | | | | [ChangeLog][QtCore][QFlags] Added initializer_list constructor Task-number: QTBUG-39786 Change-Id: I36967c67b489c2a893fb031954f46f5243aba2c4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QGuiApplication::paletteChanged(const QPalette &palette) [signal]J-P Nurmi2014-07-021-0/+27
| | | | | | | | | This allows QQuickSystemPalette to listen to palette changes without installing an expensive event filter on the application object. Change-Id: I8b693e047d993c444e393d7a714a5709692c3560 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Merge "Merge remote-tracking branch 'origin/5.3' into dev" into refs/staging/devFrederik Gladhorn2014-07-0124-70/+580
|\
| * Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-07-0124-70/+580
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/qnx-x86-qcc/qplatformdefs.h src/corelib/global/qglobal.h src/network/socket/qnativesocketengine_winrt.cpp src/plugins/platforms/android/androidjniaccessibility.cpp src/plugins/platforms/windows/qwindowswindow.cpp Manually adjusted: mkspecs/qnx-armle-v7-qcc/qplatformdefs.h to include 9ce697f2d54be6d94381c72af28dda79cbc027d4 Thanks goes to Sergio for the qnx mkspecs adjustments. Change-Id: I53b1fd6bc5bc884e5ee2c2b84975f58171a1cb8e
| | * tst_qcollator: Exclude failing test cases for non-ICU/Windows.Friedemann Kleint2014-06-301-4/+7
| | | | | | | | | | | | | | | Change-Id: I17912ddb34337216805259dab9d90eb2c9ac64cc Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
| | * Android: Fix compilation of qtcpsocket testEskil Abrahamsen Blomfeldt2014-06-301-2/+2
| | | | | | | | | | | | | | | | | | | | | No pthread_yield() in the Android NDK. Change-Id: I5ff77c55f30c172ee7fefb1129bdf475b318449e Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix compilation of qhostaddress testEskil Abrahamsen Blomfeldt2014-06-301-0/+4
| | | | | | | | | | | | | | | | | | | | | The sockaddr_in struct is defined in netinet/in.h header. Change-Id: I67a3421094c96a5e948968a26723ec8c21f85c93 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix compilation of qpluginloader testEskil Abrahamsen Blomfeldt2014-06-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The almostplugin has an unresolved symbol, and on Android we compile with -no-undefined. Change-Id: Ia631193890dfe8e7ac8e58087475164222d876fc Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Fix QRingBuffer::readPointerAtPosition()Alex Trotsenko2014-06-241-0/+7
| | | | | | | | | | | | | | | | | | | | | Fix condition to allow return a valid pointer when head != 0. Change-Id: I5215f7dfc44924016c2d9b67ab2d9935b5164d7a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * network internals: do not try to cache a deleted entryPeter Hartmann2014-06-241-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | We were keeping a dangling pointer to a non-existent QIODevice around which would lead to a crash. Task-number: QTBUG-17400 Change-Id: Ie374cbb94bb45c9b0fbef46287b3317f60154123 Reviewed-by: Richard J. Moore <rich@kde.org>
| | * Simplify mirroring code and add tests for non-aliged 1 bit imagesLaszlo Agocs2014-06-231-31/+55
| | | | | | | | | | | | | | | Change-Id: I309714bc52de87c702194a4a82803d383f6ac3b3 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| | * Correct grammar of missing Q_OBJECT macro warning.Mitch Curtis2014-06-231-0/+6
| | | | | | | | | | | | | | | Change-Id: Ifb84220285e38ce6940595035ca9fe012c350b79 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * tst_qicon: Resolve all files using QFINDTESTDATA().Friedemann Kleint2014-06-221-24/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The local files in availableSizes() were not resolved. Introduce member variables for the file names, resolve them in the constructor and add initTestCase() to verify. Task-number: QTBUG-39287 Change-Id: If841e904700fe76b6c9265124ccba7764911fdc9 Reviewed-by: aavit <eirik.aavitsland@digia.com>
| | * Fix data race on QLoggingCategory when using qDebug from multiple threadsDavid Faure2014-06-202-1/+41
| | | | | | | | | | | | | | | | | | | | | setEnabled() would race with isEnabled()/isDebugEnabled()/etc. Change-Id: I2004cba81d5417a634b97f5c2f98d3a4ab71770d Reviewed-by: David Faure <david.faure@kdab.com>
| | * Correct QImage::fill(uint) on RGBA8888 formatsAllan Sandfeld Jensen2014-06-201-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QImage::fill(uint) was incorrectly performing ARGB->RGBA conversion when called on RGBA8888 formated images. This patch moves the color conversion to QImage::fill(QColor) where it belongs so that fill(uint) can behave consistent with documentation and how it treats other formats. The fill(uint) method had no automated tests, and this patch adds one. [ChangeLog][QtGui][QImage] QImage::fill(uint) now fills the given pixel value unconverted when used on RGBA8888 image, making it consistent with the documentation and treatment of all other image formats. Change-Id: I00a9d810c61d350dbdd7c4b9ad09e5ce11896b6d Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
| | * Remove the widget from the stylesheet cache before polishingAndy Shaw2014-06-201-7/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the widget exists in the style rules cache before it polishes for the first time then it should be removed from styleSheetCache too so that the latest set stylesheet is used for the polishing. Task-number: QTBUG-39427 Change-Id: Ic1e7988afe530f16ea9996bae56543ed554d6be9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Use QModelIndex to get the data from underlying modelFriedemann Kleint2014-06-191-1/+42
| | | | | | | | | | | | | | | | | | | | | Change-Id: Ibeb70079afd566c78289168540296b926f36d1af Initial-patch-by: Irfan Omair <irfan.omair@gmail.com> Task-number: QTBUG-27597 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * Merge remote-tracking branch 'origin/stable' into 5.3Sergio Ahumada2014-06-141-0/+90
| | |\ | | | | | | | | | | | | Change-Id: Icd073d40ce10ab4733b997036815795dd3fbaac1
| | | * Fix case insensitive comparisons using QCollatorLars Knoll2014-06-121-0/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In ICU the strength parameter decides whether a comparison is case sensitive or not. Fix mac comparison code. It can't have worked before. Added some basic automated testing for QCollator. Change-Id: I2646c464fd22ccd3a93c461fa3dba4bd1d4c7b4b Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | * | Revert "Suppress move/resize events if they are the result of call to ↵Friedemann Kleint2014-06-131-45/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | move()/resize()." This reverts commit a1c5198387fdb7db44a02bb94c56187874e67304. The idea of detecting non-spontaneous events by comparing against the widget's crect has problems when sequences of programmatic resizes occur. In addition, QWindowSystemInterface's queueing of events is problematic for this. Task-number: QTBUG-39611 Task-number: QTBUG-32590 Change-Id: I4674d8d5d5d432d938f7226b5790543335665c1f Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * | QProcess: Handle spurious socket notifications for stdout and stderrThiago Macieira2014-06-128-2/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Unix systems where the GUI event dispatcher uses a notification system for socket notifiers that is out of band compared to select(), it's possible for the QSocketNotifier to activate after the pipe has been read from. When that happened, the ioctl(2) call with FIONREAD might return 0 bytes available, which we interpreted to mean EOF. Instead of doing that, always try to read at least one byte and examine the returned byte count from read(2). If it returns 0, that's a real EOF; if it returns -1 EWOULDBLOCK, we simply ignore the situation. That's the case on OS X: the Cocoa event dispatcher uses CFSocket to get notifications and those use kevent (and, apparently, an auxiliary thread) instead of an in-thread select() or poll(). That means the event loop would activate the QSocketNotifier even though there is nothing to be read. Task-number: QTBUG-39488 Change-Id: I1a58b5b1db7a47034fb36a78a005ebff96290efb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * | Merge "Merge remote-tracking branch 'origin/stable' into 5.3" into ↵Sergio Ahumada2014-06-113-13/+47
| | |\| | | | | | | | | | | | | refs/staging/5.3
| | | * tst_qtcpsocket: fix comment, the slot goes to 512David Faure2014-06-091-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: Ia0c5b29d6e02c9fda0b1da4a2779f1cbe9b1d747 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Cocoa: Re-implement QCocoaScreen::topLevelAt()Morten Johan Sørvig2014-06-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous implementation used [NSApp orderedWindows] which does not return NSPanel subclasses, which is used by Qt dialogs and pops. Use [NSWidow windowNumberAtPoint:belowWindowWithWindowNumber] instead, which hit-tests on all window types. This can potentially include windows from other processes and non-Qt windows which needs to be filtered out. Add EXPECT_FAIL to tst_MacGui::nonModalOrder. The correct topLevelAt() implementation now exposes that this test is failing. Task-number: QTBUG-39322 Change-Id: I81afa3da964e08fe682802220d8fe81e9284205e Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | | * Suppress move/resize events if they are the result of call to move()/resize().Friedemann Kleint2014-06-061-12/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWidget::resize() or QWidget::move() set the new size/position values and send events. The spontaneous events generated by the platform should be ignored in that case. Task-number: QTBUG-30744 Task-number: QTBUG-38768 Task-number: QTBUG-32590 Change-Id: I9c0ae38842ed76a8a88ca64fdc9bbe106b2766b7 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * | QWidget: fix documentation for isEnabledTo(0)David Faure2014-06-111-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is NOT always the same as isEnabled(). Added a unittest to prove it. Change-Id: I7717126835923e8c091249bfcdf81767c44fb5f7 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| | * | Add missing detach() in QPixmap::convertFromImage()David Faure2014-06-111-0/+15
| | |/ | | | | | | | | | | | | | | | | | | Task-number: QTBUG-18519 Change-Id: I5d929cf6eda3f34130314edac95487fb00a95db5 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | / Accessibility: Password QLineEdit should use * as text replacementFrederik Gladhorn2014-07-011-3/+3
|/ / | | | | | | | | Change-Id: Ie07e86f1b6dff3096cab462f918994efa07b2a87 Reviewed-by: Caroline Chao <caroline.chao@digia.com>
* | Add QEnableSharedFromThis classRoman Pasechnik2014-06-291-0/+223
| | | | | | | | | | | | | | | | | | It enables you to get a valid QSharedPointer instance to 'this', when all you have is 'this'. Task-number: QTBUG-7287 Change-Id: I3ed1c9c4d6b110fe02302312cc3c4a75e9d95a0c Reviewed-by: Richard J. Moore <rich@kde.org>
* | Windows: Fix setting of geometries in minimized state.Friedemann Kleint2014-06-271-0/+23
| | | | | | | | | | | | | | | | | | Use SetWindowPlacement() to set the normal position when applicable as is done in Qt 4. Task-number: QTBUG-39544 Change-Id: Ia158b968ea15361d9937619f07b56eb8a0312a13 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* | Introduce qUtf8Printable() macro to qglobal.hTakumi Asaki2014-06-271-0/+64
| | | | | | | | | | | | | | | | | | | | This macro is equivalent to arg.toUtf8().constData(). It is usable for "%s" arguments of qDebug(), qWarning(), qFatal(), qCritical(). Change-Id: I2d9956e6651271e1e2183dce9c835511cf923bf3 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Expand the compiler test with C++11 and C++14 compiler testsThiago Macieira2014-06-273-2/+811
| | | | | | | | | | | | | | | | This allows us to quickly test if a compiler actually supports what it claims to support. Change-Id: Ia32212a11774aa7947ddffae30837c53665374f3 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Accessibility: improve text attribute rangesFrederik Gladhorn2014-06-261-44/+103
| | | | | | | | | | | | | | | | | | Improve consistency and use QTextDocument functions to find ranges instead of coming up with our own scheme. This is important since QCursor's char format depends on block positions. Change-Id: I94eb137882dc6b5f7b01fa7693b4a536cc48d02a Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* | Fix crash when inserting the same instance widget more than onceJorgen Lind2014-06-261-0/+18
| | | | | | | | | | | | | | Task-number: QTBUG-39324 Change-Id: Ib1e0e107cd411311344aa5d85c3ca4c34211448b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* | Export QStateMachine running property.BogDan Vatra2014-06-261-2/+272
| | | | | | | | | | | | | | It is needed to control a QStateMachine object from QML. Change-Id: I19271d97718af2d688c477647d6341f70fdef3ea Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | Unduplicate the implementations of next power of twoAllan Sandfeld Jensen2014-06-261-0/+119
| | | | | | | | | | | | | | | | | | | | | | Qtbase contains four identical implementations of next power of two, these should be shared and the implementation made available to other qt modules, as it is also used many places outside of qtbase. [ChangeLog][QtCore][QtMath] Introduced qNextPowerOfTwo methods. Change-Id: Id23fbe5ad6bae647b30d5a4212c0330e48a50278 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Introduce std::string conversion to QByteArrayAllan Sandfeld Jensen2014-06-251-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | Add conversion methods similar to those in QString to QByteArray. This is often more useful than the QString version since std::string like QByteArray are byte arrays. [ChangeLog][QtCore][QByteArray] Added convenience methods to convert directly to and from std::string. Change-Id: I92c29d4bb1d9e06a667dd9cdd936970e2d272006 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | winrt: Use native threadingAndrew Knight2014-06-251-24/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using std::thread, use the WinRT ThreadPool to manage threads. This allows for setting the scheduling priority, and provides a path to enable XAML integration (which requires Qt run on a background thread). QThread::terminate() is still unsupported, and only the winmain thread can be adopted due to the behavior of the thread pool when creating tasks from the GUI thread. The associated tests are now skipped, and all other QThread tests pass. Task-number: QTBUG-31397 Change-Id: Ib512a328412e1dffecdc836bc39de3ccd37afa13 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | QAbstractProxyModel: Forward drop-related API.Friedemann Kleint2014-06-251-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | Forward canDropMimeData() and dropMimeData() to the source model. [ChangeLog][QtCore][QAbstractProxyModel] QAbstractProxyModel now forwards the drop-related API. Task-number: QTBUG-39549 Change-Id: Ib81fcec862586e4ecfb99b9e0f4eb1a16eace762 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | QGuiApplication::layoutDirectionChanged(Qt::LayoutDirection) [signal]J-P Nurmi2014-06-251-0/+27
| | | | | | | | | | | | | | | | This allows QQuickApplication to listen to layout direction changes without installing an expensive event filter on the application object. Change-Id: I2d7d8906acecbc092657c4bd918bbdc9aad9744c Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Suggest candidates when non-existent method passed to invokeMethod().Mitch Curtis2014-06-201-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QMetaObject::invokeMethod: No such method Object::someMethod(SomeType) becomes: QMetaObject::invokeMethod: No such method Object::someMethod(SomeType) Candidates are: someMethod(SomeOtherType) someMethod(YetAnotherType) Change-Id: I3566bca64423e2f8150d0d544fb4e35a5262b19e Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Accessibility Linux: Fix methods returning rects as iiii for AT-SPIFrederik Gladhorn2014-06-201-8/+16
| | | | | | | | | | | | | | | | | | | | According to the spec rects get returned with iiii but we were directly serializing QRect resulting in (iiii) as signature. This would trip up Orca when trying to use flat review in text edits. Task-number: QTBUG-39702 Change-Id: I8d6769688586e678d27cc4341de5176a91f057fc Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>