Commit Graph

1351 Commits

Author SHA1 Message Date
Denis Dzyubenko
0818fce01a Made it possible to run tst_qtjson test from shadow build directory.
Change-Id: I167737c91e01f055a2ce14db54dfcc6b74ad8c28
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-26 15:38:33 +01:00
David Faure
4408bae29a Convert tst_qurl.cpp to UTF-8 (to make it editable in QtCreator)
Change-Id: I9baa445b11f65b28596e5b88746b72c5cf04fe77
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-26 15:23:25 +01:00
Denis Dzyubenko
e62fe9ed4f Fixed QString::operator<(QLatin1String)
QLatin1String now has a constructor that takes explicit length, which makes it
possible to create QLatin1String that do not have null-termination character.
Fixed QString::operator> and < to be safe in that case.

In the same patch fixed qtjson which had operator< implemented in the same way.

QString::compare(QLatin1String) is still broken and will be fixed separately.

Change-Id: I48ec1183a6f44034129cc17312af854795085408
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-26 13:28:16 +01:00
Stephen Kelly
61e8487e8e Mark the single argument containers as movable.
Change-Id: I1557b9f3c2d3ad805e1ab7bf4d49973f08664a79
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
2012-01-26 13:15:47 +01:00
Stephen Kelly
6b4f8a68c8 Automated metatype definition for template types.
If T is defined as a metatype, then QList<T> is too automatically.

So for example, no need to use

  Q_DECLARE_METATYPE(QList<int>)

anymore.

This is a source compatible change.

Change-Id: I2ee8a7b9e28fe6d4775f6a05cce39aca8563e0c5
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-01-26 13:15:38 +01:00
Samuel Rødal
71db6d654e Made QWindow::currentOrientation() a property.
To match the previous QWindow::orientation() property which can be
useful to access from QML. Also, removed the automatic translation of
Qt::PrimaryOrientation to QScreen::primaryOrientation() on the QWindow
level, as it leads to a lot of complexity regarding the
QWindow::contentOrientationChanged() signal, and makes it hard to
distinguish between the case where the window's orientation follows
that of the screen, and the case where the orientation just happens to
be set to that of the screen.

Change-Id: I6950d1337b7f929815eff1328181855090d8066b
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-26 08:32:28 +01:00
Andy Shaw
8eb2546bf2 Fix a couple of edge cases for WildcardUnix matching
Fix a couple of cases where WildcardUnix was not matching when the
string was just [] or ended with a \.

The testWildcardEscaping() test has been extended to account for these
two cases too.

Integrate 7ce3726aea4be2dfdb57966a4482f66fec6f8f57 from 4.8

Task-number: QTBUG-20897
Change-Id: I7a07ac008473fa7a080db752e189f6404842603f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-26 07:02:25 +01:00
Andrew den Exter
4dae8c1aff Remove QTextControl and QLineControl.
QtWidgets and QtDeclarative now both have their own versions of these
so there's no need to keep them around any longer.

Change-Id: I9c2201c8495a0a0816e2af16c8f647fcad991479
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-25 22:35:12 +01:00
Jędrzej Nowacki
aee1f6cc41 Cleanup mess in public type ids.
There is no reason to keep two separated core types sets. It
couldn't be fixed before Qt5 because of binary compatibility promise.

This patch merges QMetaType core types with ext core types.

This "simple" operation consists of:
- QDataStream version was incremented, because type ids are
saved in QVariant's data stream.
- QMetaType LastExtCoreType and FirstExtCoreType were replaced by
LastCoreType, FirstCoreType and new QMetaType::HighestInternalId.
- New tests checking QVariant data stream for Qt4 and for Qt5 versions
were added.

Change-Id: I02dd74d29317365c297a789a4eb7c9c5edc3b231
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-01-25 21:08:08 +01:00
Peter Hartmann
07662f93ac QAbstractSocket / QSslSocket: add API to pause and resume
pause and resume is currently only supported upon emitting the
QSslSocket::sslErrors() signal. The API was added in QAbstractSocket to
also support QAbstractSocket::proxyAuthenticationRequired() in the
future.

This is the first patch to support that feature on the socket level,
another patch will follow to support sslErrors() and
authenticationRequired() in QNetworkAccessManager / QNetworkReply.

Task-number: QTBUG-19032
Change-Id: Ide2918268590ab9a01454ab26cb7fdca3dc840ab
Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
2012-01-25 19:35:05 +01:00
Gunnar Sletta
4ecf82795d Remove use of QT_MODULE from library
These defines were there to aid in the commercial
licensing scheme we used long ago, and are no longer needed.

Keep a QT_MODULE(x) define so other modules continue compiling.

Change-Id: I8fd76cd5270df8f14aee746b6cf32ebf7c23fec7
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-25 10:19:44 +01:00
Kent Hansen
00c8984b4e moc: Use QMetaType::QVariant as the type for QVariant
QMetaType::QVariant has existed as a proper type for almost two
years, but the qvariant_nameToType function was written in 2006.

Using QMetaType::QVariant means QVariant can be treated just like
any other type. We can get rid of those hacky checks for LastType,
and the remaining checks become more readable.

The fact that QMetaProperty::{type,userType}() returned LastType
(0xffffffff) for QVariants was never documented (LastType itself is
internal). But there are other Qt modules that assume so. I'll fix
the ones I know about (qtdeclarative, qtscript, activeqt).

Change-Id: I799b9079bb8bbb1fe76c132525440b30415cbac5
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-01-25 08:46:40 +01:00
Friedemann Kleint
4fa2d51cf1 tst_qobject: Run as console application.
Change-Id: If3049249cf8ceeb0985d158209e217455bfc3c47
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-01-25 02:24:29 +01:00
aavit
48f9ba388b Remove support for the MNG file format and the bundled libmng
The MNG file format is generally abandoned, and libmng has been
unmaintained for several years.

The MNG plugin and bundled libmng has been moved to the
qtimageformats project on Gerrit.

Task-number: QTBUG-21869
Change-Id: I946432347014ffde2b72307a5f8b166ca5553602
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-01-25 02:22:18 +01:00
Andrew den Exter
c0d30db45c Add a changed() signal to QValidator.
This provides a general notification of changes that may change the
validity of previously validated input.

Change-Id: I5ec6f127af60fdca68605fee903a08758bc01360
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-25 00:58:12 +01:00
David Faure
9096334d14 QKeySequence: fix copy/paste error in autotest
Change-Id: If03a99c9aa7210d3f166c2674831c645f67b1794
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-01-25 00:07:59 +01:00
Friedemann Kleint
992e50e421 Add autotest for failing signal connection.
Change-Id: Iaae93253fa6d1ca0798d05d69a7ab6d6ff8b60bc
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-01-24 19:12:23 +01:00
Bradley T. Hughes
ed1d0886ca Re-enable 'make check' for tests/auto/widgets
We want the autotests for the QtWidgets library to be run on Mac OS X as
well.

Change-Id: Ie731b802b64222c84116e2df82f536acf4971565
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-24 19:12:23 +01:00
Mark Brand
764840ec0e add missing move* methods to QAbstractItemModel
The existence of QAbstractItemModel virtual methods
    moveRow, moveColumn, moveRows, and moveColumns
is implied by the existence of
   beginMoveRows, endMoveRows, beginMoveColumns and endMoveColumns.
However, these were not actually provided by QAbstractItemModel.

With this change, subclasses can implement support for moving rows
and columns following the same pattern as for insert* and remove*.

Change-Id: Iad8b2223d4b9303abb6459c174a82ffed71a0fdf
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-01-24 19:12:23 +01:00
Giuseppe D'Angelo
601d685849 Make mid() and midRef() properly return empty, non-null objects
If we request a substring starting at the very end of the string,
QString::mid should return an empty string, not a null string.
For instance, QString("abc").mid(3, 0) used to return a null
one, while this patch makes it return an empty one. The
same thing applies to QString::midRef() and QByteArray::mid().

Change-Id: Ie9efd7a0622d429efd0fb682c19856c19e9469af
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-24 17:36:11 +01:00
Samuel Rødal
b39df8bf92 Made window orientation API more flexible.
Previously we only had QWindow::setOrientation() which was a hint about
the orientation the window's contents were rendered in.

However, it's necessary to separate between the orientation
corresponding to the window buffer layout and orientation of the
contents. A game for example might typically want to use a landscape
buffer even on a portrait device. Thus, we replace
QWindow::orientation() with QWindow::reportContentOrientationChange() and
QWindow::requestWindowOrientation().

Change-Id: I1f07362192daf36c45519cb05b43ac352f1945b5
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-24 15:38:48 +01:00
Lars Knoll
37a7b035f8 Import json support from playground/qtbinaryjson
This imports the JSON support for Qt 5 from
playground/qtbinaryjson.

It adds a fast, fully compliant json parser, a
convenient C++ API, conversion to and from
QVariants and a binary format for JSON that is
extremely fast to use together with the C++ API.

Change-Id: If9e3a21a4241d388d0abaa446b6824f9cc6edb1c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-24 15:28:20 +01:00
Stephen Kelly
4b8ceb41ae Store the is-a QObject fact with the metatype declaration.
This is a source incompatible change for Q_DECLARE_METATYPE(T*),
which now requires T to be fully defined.

The consequences of this are:
 * Forward declared types can no longer be declared as a metatype.
     (though this is a very uncommon thing to do).

There is a trivial workaround where necessary.

Change-Id: Id74c40088b8c0b466fcd7c55abd616f69acc82c8
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-24 15:27:25 +01:00
David Faure
6efefb3fe5 QKeySequence: add tests, fix handling of '+' as key or separator.
Change-Id: I3c471dff9b46025aab762d36bb3a3adc64ced561
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-24 15:27:17 +01:00
David Faure
84bdb7b61f Make QUrl always lowercase the scheme().
URL schemes can only contain alphanumeric characters and all
protocols specify that they are case-insensitive. So instead
of doing case-insensitive comparison everywhere and then get
it wrong sometimes, better to lower-case it here.

Change-Id: I61f51a3f4c85b90af1586ebcf69608987fbe2ec3
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-24 15:27:08 +01:00
Joerg Bornemann
096b49bc1e QWinOverlappedIoNotifier introduced
For asynchronous (overlapped) I/O notification on Windows one
can now use the convenience class QWinOverlappedIoNotifier.
It's using one global I/O completion port and a watching thread to
get notified when a read or write operation completes.

Change-Id: If6f904b364be0405580c7e50355529ab136ae3cb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-01-24 14:39:58 +01:00
Kurt Korbatits
746c148c95 Changed qnetworkdiskcache unittest to cleanup test directory.
- Remove foo directory tree after run.

Change-Id: I2d554b4c64fc7162c7717c840534cf77f5e744d0
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-24 06:59:21 +01:00
Kurt Korbatits
f5ef6bc58a Changed qtextdocument, qtextdocumentlayout unittests to cleanup tmp files.
- qtextdocument unittest to remove foo.png after test.
- qtextdocumentlayout unittest to remove expected.png and img.png after test.

Change-Id: I42971e9128d399cadc87b9fd345c868065f180a9
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-24 06:59:15 +01:00
Kurt Korbatits
1509739d43 Changed painting unittests to remove created files after run.
- qpainter cleans up temp files dest.png, expected.png and foo.png
- qpainterpath clean up temp file data
- qprinter cleans up silly, out1.ps, out2.ps, test.pdf and file.pdf

Change-Id: Id434bea0bae5b970355206a250456e4beeca8060
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-24 06:59:09 +01:00
Kurt Korbatits
5f22288346 Changed qpixmap unittest to remove created file after run.
- Removes temp_image.png after test run.

Change-Id: I0b233609c2bbf57151cf173181a40738d934f0ec
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-24 06:59:04 +01:00
Kurt Korbatits
8820f83646 Changed qxmlstream unittest to remove its created file after run.
- Removes test.xml after test completed.

Change-Id: I548e2d644cca8ae0d30c3002df45cf57433170af
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-24 06:58:58 +01:00
Kurt Korbatits
2d1150e6e3 Changed qdatastream unittest to remove the test file it creates.
- Remove datastream.tmp file after test completed.

Change-Id: I844600f0a477397d129fd01ac755183c2d874da4
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-24 06:58:53 +01:00
Olivier Goffart
c0323cfbaf Test connecting to virtual function pointer
The C++ standard says that the comparison between pointer to virtual
function is unspecified (C++11 $5.10.2)
But we still may rely on it for the Qt::UniqueConnection and the
disconnection

So test if it works while using the same function.
Using function from different classes works for me, but we should
probably not assume it works. I left it commented in the test for
reference.

Change-Id: I1d9b91d4cc1a424d4f43ef2ee4981b8573f1e86f
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-24 01:13:01 +01:00
Robin Burchell
1806ea8dd9 Add the capability to use multiple data sources for qhash benchmark.
More data sources to be added in followup commits.

Change-Id: I0393119b36ac5d88fc2c5c8d46b000d13d5ca996
Reviewed-by: Richard J. Moore <rich@kde.org>
2012-01-24 01:09:05 +01:00
Robin Burchell
47d0813f5b Remove executive summary.
It isn't necessarily that hashing the whole string is the main problem, as the
recently added java string benchmark appears to show, which means the original
purpose of this benchmark is rather voided.

This removal allows gradually repurposing the test towards providing general
benchmarks of QHash performance.

Change-Id: Iaab0a3b493387dcce99240632342235ed9c44d88
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-01-24 01:09:01 +01:00
Robin Burchell
f61112aa32 Move test files around.
main.cpp is easier for my muscle memory to remember than qhash_string as it is
used by a number of other tests.

Change-Id: I044f995d55a4ff1328dde0ae27b6e36a80114c38
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-01-24 01:08:55 +01:00
Bradley T. Hughes
1831abb5bb Remove QEventLoop::DeferredDeletion
This flag has been deprecated since Qt 4.4, so remove it.
tst_QApplication had 2 nearly identical tests, one for testing the
QEventLoop::DeferredDeletion flag, and one to test sendPostedEvents()
with QEvent::DeferredDelete. The latter is the preferred way, so keep
that test, but remove the test for the obsoleted flag.

Change-Id: Icdb7483c32b3c920bda31d2bbb4f7414ece6d826
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
1196b70cf2 Ignore known tst_QStyleSheetStyle failures on Mac OS X
Task-number: QTBUG-23686
Change-Id: I566f3b3491576325389862bac2ad7c8526dd930b
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
36493a7a41 Ignore tst_QStyleSheetStyle::hoverColors() failures on Mac OS X
Qt::WA_UnderMouse is not working at the moment, causing this test to
fail.

Task-number: QTBUG-23685
Change-Id: If167311b09ba8fc3d04d056590588b595825c443
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
8fdf8baa88 Ignore tst_QSizeGrip failures on Mac OS X
This test currently fails on Mac, mark it as insignificant.

Task-number: QTBUG-23681
Change-Id: I7355cda953966778d651fafaff837f1083eeb3f4
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
6f21509ac0 Skip tst_QMenu::QTBUG_10735_crashWithDialog() on Mac OS X
This test currently hangs, preventing the autotest from finishing.

Task-number: QTBUG-23677
Change-Id: I3c5f56c10735d65fb35de4e22a1e2e6414532309
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
1d0d44a53a Ignore tst_QMenu::keyboardNavigaction() failure on Mac OS X
The shortcut0 test data fails, indicating that keyboard navigation via
shortcuts doesn't work on Mac OS X for the time being. Mark the failure
as expected.

Task-number: QTBUG-23684
Change-Id: I199222a87c09e6f491e5dcd21c9f65c28ecbb86d
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
2f46ea9fd6 Skip tst_QPushButton::sizeHint() with Mac style on Mac OS X
QStyleFactory cannot create the Mac style, so skip the test for now.

Task-number: QTBUG-23680
Change-Id: I2ae61aab152cd8a4e6a7270902df40dd3cc6df3b
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
9f0ddaae41 Mark tst_QDateTimeEdit with insignificant_test on Mac OS X
This tests has numerous failures on Mac OS X, ignore the test for now.

Task-number: QTBUG-23674
Change-Id: I29bcfd379a6a13f9859e96c5cc6dc7e932feaf4a
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
cae2b0f0e8 Mark tst_QComboBox::hide() with QEXPECT_FAIL() on Mac OS X
Task-number: QTBUG-23678

Change-Id: I6ced2aa9392f2688ee982113addef7fffcf4b9f2
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Bradley T. Hughes
ceed394199 Ignore tst_QAbstractSlider failures on Mac OS X
Mark current failures as expected.

Task-number: QTBUG-23679
Change-Id: Ic574dbb0fea3a21ef9963ef16bdf85da4c809036
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 14:47:10 +01:00
Laszlo Agocs
7ed6a247bf Fix synthesizing mouse events when touches change ordering
There is no guarantee the touches will be listed in the same order in
an update: the platform/generic plug-in, the drivers, etc. are all
free to shuffle the list of touch points in each report (even though
the order is fairly stable with most systems).

Therefore, to be safe, move and release events should be generated not
from the first point in the list but from the one with the matching
id.

Change-Id: I6615224cbf2cfdc440143eb3191482a23d85c6a4
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-23 13:10:00 +01:00
Bradley T. Hughes
9d87e1db1f Expect tst_QWizard::setPixmap() failure on Mac OS X
Task-number: QTBUG-23701

Change-Id: Iba5b926e57c1565856d17bbfbff4d1da75645ad4
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 09:34:16 +01:00
Bradley T. Hughes
e3c59443c6 Expect tst_QFileDilaog:clearLineEdit() failure on Mac OS X
Task-number: QTBUG-23703

Change-Id: I981de80d6946d3637c493bede0adb1b90a539261
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 09:34:08 +01:00
Bradley T. Hughes
855505ea35 Do not expect tst_QFileDialog::selectFiles() failure on Mac OS X
This test no longer fails:

XPASS  : tst_QFiledialog::selectFiles() '!listView->selectionModel()-
   Loc: [tst_qfiledialog.cpp(915)]

Change-Id: Ib790c0f81b3d383117cceceaacbf0c3d6a673404
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-01-23 09:34:00 +01:00