Mitch Curtis [Tue, 16 Oct 2012 10:05:06 +0000 (12:05 +0200)]
Improve QTime test coverage.
Change-Id: If47de3dc047ac4f8a4a1498cf225e03bbbf4110e
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Jon Severinsson <jon@severinsson.net>
Mitch Curtis [Mon, 15 Oct 2012 16:22:45 +0000 (18:22 +0200)]
Improve QDate test coverage.
Some statements could not be tested, such as default cases of switches
where all possible cases are already handled and some statements where
the system locale is used.
I also removed some statements that would never be reached and hence
will never be able to be covered by tests.
Change-Id: I8ea3071f66d942d986e65708732af6751d36b5e3
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Mitch Curtis [Fri, 28 Sep 2012 14:23:09 +0000 (16:23 +0200)]
Clarify assert on use of const char* as TestData type in tests.
Currently all C-style strings used as data types in QTest::addColumn
will assert at runtime with, e.g.: "expected data of type
'const char*', got 'QString' for element 0 of data with tab 'blah'".
This patch makes it clear that C-style strings are disallowed.
Change-Id: Iadbb8f10e16607de95c7adb43d9ff3310aac6738
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Mitch Curtis [Fri, 21 Sep 2012 09:30:55 +0000 (11:30 +0200)]
Output leading zeroes for yyyy date formats in QLocale::toString().
Converting the date 1 January 0001 to a string in the format
"dd MMMM yyyy" currently results in the string "01 January 1", but it
should be "01 January 0001".
Task-number: QTBUG-27287
Change-Id: Ia025da7343d1c36aaee34c47c6db551a6e89595f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Tue, 23 Oct 2012 15:25:48 +0000 (17:25 +0200)]
Fix valgrind warning in QTriangulatingStroker.
Initialize all member variables including m_invScale, which
was uninitialized.
Change-Id: Id581b1db9411b2f945281e17b7a0407c746761f8
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
J-P Nurmi [Mon, 22 Oct 2012 17:15:14 +0000 (19:15 +0200)]
Add QStyleAnimation::updateTarget()
For example a paused "default button" animation might want to update
the target to get "non-default button" looks meanwhile the animation
is paused.
Change-Id: Ibb854a40f38a8971e7233b1f34a83056e6a9d827
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Morten Sorvig [Wed, 15 Aug 2012 11:36:05 +0000 (13:36 +0200)]
Enable HiDPI mode for retina displays.
Change-Id: I3b62ec9c3bf5e53c6ec056b95c52cfeb6ce5b61f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Friedemann Kleint [Mon, 22 Oct 2012 14:08:44 +0000 (16:08 +0200)]
Fix warning about missing return value in XCB native interface.
Change-Id: If311211076c05ed8d0fb62a9ff1129b93a813850
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Friedemann Kleint [Tue, 23 Oct 2012 08:11:54 +0000 (10:11 +0200)]
QProcess: Include program in destructor warning.
Change-Id: Ib6870d2b161197fdeab7fe5140ac4757c79f478e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Miikka Heikkinen [Mon, 22 Oct 2012 12:03:06 +0000 (15:03 +0300)]
Stabilize tst_qfontdialog test case.
The delayed quit signal used as failsafe to ensure exit from event
loops interfere with later test if the test case works normally,
as closing the last toplevel window will also exit the event loop.
Fixed by stopping the quit timer if nested application exec loop
is exited.
Change-Id: If87655f1f28f50e27a64f3430c9f65bb3ab7dd70
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
J-P Nurmi [Tue, 23 Oct 2012 08:53:40 +0000 (10:53 +0200)]
QStyleAnimation: fix threaded rendering
Change-Id: I00875adf2e4b157a3f8b0b99e5280b1275635026
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Thomas McGuire [Wed, 17 Oct 2012 08:45:43 +0000 (10:45 +0200)]
Blackberry: Fix applicationFilePath() for unpackaged executables
Not all executables originate from a BAR package, for example unit
tests.
Make those use the fallback code for finding the application file path.
Change-Id: I5603f329bbe74e37d319ddd190f72bc6f64e1a5c
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Giuseppe D'Angelo [Sun, 14 Oct 2012 03:12:35 +0000 (04:12 +0100)]
Fix QRegExpValidator::validate docs about the pos parameter
The code sets it to input.length() iff the regexp doesn't
match the string, while the docs say it's *always* set.
Therefore, make the docs match what the code does and
add a simple test to enforce it.
We're not changing the code to match the docs because
1) it's better to stay conservative (we don't want
to break existing behaviour);
2) this behaviour mimics what the int/double validators do
(they don't move pos at all).
Change-Id: I958074558de6b0fc5944101c6535fc7e00442ae9
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Stephen Kelly [Mon, 22 Oct 2012 07:32:24 +0000 (09:32 +0200)]
CMake: Make qt5_use_modules a macro, not a function.
Because qt5_use_modules is a function that does a find package which
finds imported targets, things like this:
qt5_use_modules(foo Sql)
if (TARGET Qt5::Sql)
message("Qt5Sql_FOUND: ${Qt5Sql_FOUND}")
endif()
will show Qt5Sql as being not found, even though the target is in scope.
Fix that by making it a macro instead.
Change-Id: If314bd5b4d3f769c6c7df5ff2c924eabd16dcc0e
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Mitch Curtis [Thu, 11 Oct 2012 13:24:11 +0000 (15:24 +0200)]
Fix mistakes in QNetworkAccessManager docs.
Change-Id: I2c797affec9472815003b1a032196c81088e1df6
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Julien Brianceau [Fri, 19 Oct 2012 09:35:43 +0000 (11:35 +0200)]
qpa: Fix drawPixmap rendering using CompositionMode_Source in DirectFB
Change-Id: I646bc7054e1aa17dca4f54ddd3d2668c173773d4
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@gmail.com>
Jan Arve Saether [Mon, 22 Oct 2012 13:09:43 +0000 (15:09 +0200)]
Remove softkey API, it was only implemented for Symbian.
It is only removed from the documentation for now (I think this should
go in the beta 2).
That should liberate us to be able to change the API if needed for
other platforms that might need a soft keys API.
Once this goes in, the plan is to do the actual cleanup.
Change-Id: I9a7a3eb45597cd013fe3c4bd479ad08a25ef0b9b
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Tor Arne Vestbø [Fri, 19 Oct 2012 09:04:01 +0000 (11:04 +0200)]
configure: make sure that global shadow doc symlink is always updated
We forcibly overwrite the symlink - in case the source dir changes.
Change-Id: I3986b968f787ea0d250887113a0c223e10038546
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Jens Bache-Wiig [Thu, 18 Oct 2012 13:22:15 +0000 (15:22 +0200)]
Remove Cleanlooks and Plastique
We have a new style Fusion that will replace these styles.
They will be moved to a separate
module rather than included in platforms that do not need them.
Change-Id: I51ebbcad5406e99130e5b12e62ba624d1489088c
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Jens Bache-Wiig [Sun, 21 Oct 2012 10:07:13 +0000 (12:07 +0200)]
Fix clipping and font problems with groupbox in Fusion style
The groupbox did not take custom fonts into account when calculating
the height of its titlebar. This resulted in clipping issues on
Windows.
Task-number: QTBUG-27655
Change-Id: I7252bc94d2bbb0731b9dbc1caa6cdd2074fdd7ab
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Samuel Rødal [Mon, 15 Oct 2012 15:06:34 +0000 (17:06 +0200)]
Make QPen default to 1-width non-cosmetic.
Use the Qt4CompatiblePainting render hint when painting with QPainter to
treat default constructed QPens as cosmetic still.
The NonCosmeticDefaultPen render hint gets documented as obsolete, since
it was in any case not respected by the raster nor OpenGL paint engine.
Change-Id: I04d910e9700baf7f13a8aac07a3633014bb9283e
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Jens Bache-Wiig [Mon, 22 Oct 2012 10:32:25 +0000 (12:32 +0200)]
Move some icon code from WindowsStyle to CommonStyle
Fusion style only depends on CommonStyle and it seems the autotest
for tst_QFileSystemModel:iconProvider assumes an icon will be
returned from standardPixmap. Since we dont want the icons
to depend on style in this case we should move all this to commonstyle.
Change-Id: I3a26367e5c0aefe2a39838f0c2cadc4f7afad89d
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Marc Mutz [Mon, 22 Oct 2012 06:20:23 +0000 (08:20 +0200)]
Delete QWhatsThis() and QToolTip()
These classes are not supposed to be instantiated.
QToolTip() already was declared, but not implemented.
This patch just adds Q_DECL_EQ_DELETE for better
diagnostics on C++11.
QWhatsThis() was implemented, but appears to be unused.
Since it was private to begin with, successfully compiling
QtWidgets is a sufficient test.
Change-Id: I698ece8f0eebbcdac7be98456dd42197b758a825
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Marc Mutz [Mon, 22 Oct 2012 06:32:50 +0000 (08:32 +0200)]
QDateTimeEdit: don't throw off auto-indention
Reformulate #ifdef'ery involving {}s so as not to throw
off auto-indention of code editors due to unbalanced {}s.
Change-Id: I0f9858c78d0b6d923de75ca45c7d65ce3fa53e50
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Mon, 22 Oct 2012 09:00:00 +0000 (11:00 +0200)]
Trim trailing whitespace.
Change-Id: Iee6bb66831f53399e5937eab5704af835979f5c3
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Stephen Kelly [Thu, 18 Oct 2012 11:36:02 +0000 (13:36 +0200)]
Fix integer overflow in QSpinBox.
Change-Id: Ic204d42fbdffc44576f7e76132bc53621e836299
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Stephen Kelly [Thu, 27 Sep 2012 09:36:23 +0000 (11:36 +0200)]
Use the layout change hint to speed up QItemSelectionModel.
The testcase in the bug report takes 370035 ms to sort the rows with
Qt 4, and 5646 ms in Qt 5 (when using the extra hints to layout*Changed).
That's an improvement of more than 98%.
Task-number: QTBUG-17732
Change-Id: If78f972d80c501e0cb39078228086c4f4ac8a65b
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Jason Barron [Sun, 21 Oct 2012 18:29:11 +0000 (20:29 +0200)]
Pass the correct handle to the Windows EGL context constructor.
We should pass the shareHandle here instead of the handle for the
context since that's what it expects.
Change-Id: If851758817057ecc3c3646cba2354becf5a8a839
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Sze Howe Koh [Sat, 20 Oct 2012 16:17:09 +0000 (00:17 +0800)]
Doc: Fix small capitalization error for the Qt SQL module header.
The header file is named QtSql, not QtSQL.
Change-Id: Ia3634c80d73f04fd27256f392cfed2068eeb9bc5
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Frederik Gladhorn [Fri, 12 Oct 2012 16:42:21 +0000 (18:42 +0200)]
Emit cursorPositionChanged in private slot.
Since the private slot is already there and used, it might as well
emit the signal and save us one connection.
Change-Id: I899df74c20f8c2b7875a0f9d0a04465c5dc48bde
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Frederik Gladhorn [Fri, 12 Oct 2012 13:00:23 +0000 (15:00 +0200)]
Bring back accessibility for plain text edit.
This ports
282951bc6c7ddb607fb7ebf61eb8de9acf3da77f
aka Change-Id: If0269a49b9fcd1b3e9fcfd32fac912560df28f21
to Qt 5.
Change-Id: I46f1d4947d90688b598993f76330e2e10aeca950
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Marc Mutz [Tue, 16 Oct 2012 09:02:34 +0000 (11:02 +0200)]
normalise signal/slot signatures [QtGui tests]
Change-Id: I42e11de9ef1d8a04b2a8e200afb84f2245f3361a
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Konstantin Ritt [Sat, 20 Oct 2012 00:19:20 +0000 (03:19 +0300)]
Fix crash due to memory access violation
The font engine has been re-used without increasing it's reference counter
Task-number: QTBUG-27596
Change-Id: Icd4c3ca131446255ad4a27da8aa9a6c69177212e
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Mitch Curtis [Thu, 20 Sep 2012 14:01:04 +0000 (16:01 +0200)]
Revert removal of commented out tests in tst_qdatetime.cpp.
Two lines were commented out but were removed with
Ib6ceb1cb7fb4c6eca672495f96d9cfd907853c85. They have been replaced
as expected fails.
Task-number: QTBUG-22833
Change-Id: Ib154a31bffcdc8e43c6ad236df193e99334652c6
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Marc Mutz [Tue, 16 Oct 2012 08:59:53 +0000 (10:59 +0200)]
normalise signal/slot signatures [QtCore tests]
Normalise all signal/slot signatures in tests/*/corelib,
except in tst_QObject, where they might be test data.
Change-Id: Id4e101f285b1676bb583b0afae06d235e599e24b
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Thiago Macieira [Fri, 19 Oct 2012 03:58:50 +0000 (20:58 -0700)]
Doc: refer to QUrlQuery in QUrl's main doc body
As opposed to the deprecated methods.
Task-number: QTBUG-25628
Change-Id: Ic1b50b1ac1b974cdd2dd9f0151d567227784e547
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Sze Howe Koh [Thu, 18 Oct 2012 16:33:03 +0000 (00:33 +0800)]
Remove the QThread::terminated() signal
The signal is removed from the API; all references to it are removed
from documentation; the unit test that checks for its emission is
modified to listen for QThread::finished() instead.
The QThreadPrivate::terminated flag is also removed, as it served no
purpose other than to trigger the emission of QThread::terminated()
As discussed at http://lists.qt-project.org/pipermail/development/2012-October/007216.html
the signal is not guaranteed to be emitted after every termination,
rendering it useless.
Change-Id: I7b0c45d7889da0d33875545331606f2208ee56fc
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Samuel Rødal [Mon, 8 Oct 2012 10:53:56 +0000 (12:53 +0200)]
Remove DRI2/OpenGL code paths from xcb plugin.
These were used to test QtWayland, but there are other options available
for that now. The DRI2 code hasn't been maintained and doesn't even
compile at the moment, so let's just remove it to de-clutter the source.
Change-Id: I7db0f4db82348497b9f4d6c2dcf2e13f3ab14a76
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Samuel Rødal [Tue, 2 Oct 2012 07:30:18 +0000 (09:30 +0200)]
Small xcb startup performance optimization.
Prefetch all the extensions, to avoid having to do blocking calls later.
Change-Id: I1527dbf03d76372ec88bc0d5d9f7af18a4cc2a26
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Samuel Rødal [Mon, 1 Oct 2012 08:17:21 +0000 (10:17 +0200)]
Made xcb plugin work when the GLX extension is not present.
Change-Id: I9285d7524586ff404206c088019ece33335137d9
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Samuel Rødal [Wed, 17 Oct 2012 12:34:32 +0000 (14:34 +0200)]
Fixed GCC 3.4 build with sse2 enabled.
With minimal effort we can keep the GCC 3.4 build working.
Task-number: QTBUG-19803
Change-Id: I31611a27b97d5ac426ea857d8f1b656dc6f5377a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Konstantin Ritt [Wed, 17 Oct 2012 11:31:33 +0000 (14:31 +0300)]
QFont: Don't invalidate engine unless request has been changed
This makes QFont do a "light" detach when the font attributes data has been changed.
The new test clearly shows that the engine is now shared between
two font instances after changing the kerning attribute.
Change-Id: I59db822f459f02d111686dba7101b98e361fada9
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Andreas Hartmetz [Sun, 14 Oct 2012 02:28:51 +0000 (04:28 +0200)]
detach() safely in QVector::erase(), and update callers to not detach.
remove() can use non-detaching iterators internally before calling
erase(), which hasn't been exploited so far, so that the detach() in
erase() never actually detached. When using erase() from outside,
you can't do it legally without calling begin() or end() that detach()
before erase() is called.
Now remove() doesn't detach anymore, and detaching in erase() works.
With new tests that fail after changing only the erase() callers
and pass again after fixing erase().
Change-Id: I47c0a9e362dce8628ec566f5437d951755de96c8
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Gabriel de Dietrich [Fri, 19 Oct 2012 14:35:54 +0000 (16:35 +0200)]
Mac: Adapt scrollbar fadeout animation for QStyleAnimation
Change-Id: I39f1089e8d6ba1bb412d33aa4ebc0971aba52681
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Gatis Paeglis [Tue, 16 Oct 2012 16:11:42 +0000 (18:11 +0200)]
Modularize drag and drop documentation
- Move dnd docs and examples out of QtDoc module to gui library in QtBase
- Remove info related to Motif dnd since Qt5 doesn't implement it
Change-Id: Id7eb4eb422f4294a36dd92709ce3007903371f03
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
J-P Nurmi [Fri, 19 Oct 2012 12:34:37 +0000 (14:34 +0200)]
QStyleSheetStyle: kill more dependencies to QWidget
Change-Id: I5e58ec68c5d20fd7b201c83743f9d284e7c4dc52
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Thomas McGuire [Wed, 26 Sep 2012 15:57:14 +0000 (17:57 +0200)]
QNX: Use extra information in dirent to avoid stat() calls
This improves iterating over /usr/bin with QDirIterator by more
than half, from 36 to 13 milliseconds.
Change-Id: Ib3a9271c3a6f81c1ea3c21d012c875c7e9bad2ad
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Jerome Pasion [Thu, 18 Oct 2012 13:15:04 +0000 (15:15 +0200)]
Doc: Adding Event System documentation.
Previously in qtdoc repository.
Change-Id: I9f5cc876f2b49e86520097c0d8efe7e21eabc04e
Reviewed-by: Martin Smith <martin.smith@digia.com>
Marc Mutz [Tue, 16 Oct 2012 09:18:11 +0000 (11:18 +0200)]
normalise signal/slot signatures [QtSql tests]
Change-Id: I06573bc2ad58378dd835565cd07d711bfc760411
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Stephen Kelly [Wed, 17 Oct 2012 14:04:03 +0000 (16:04 +0200)]
Use a qmake variable to pass the Qt version to the cmake version file.
By depending on a simple variable instead of a more complex expression, we
can more easily use this file from other contexts.
Change-Id: Ib6ce1e2537f3e7ac19d25ad33454f25e85f71040
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Oswald Buddenhagen [Mon, 3 Sep 2012 09:38:00 +0000 (11:38 +0200)]
remove explicit load(qt_build_config)s from the libraries
.qmake.conf (and previously .qmake.cache) already does that for us.
Change-Id: I06cc01fa45921d7bd66dda7a0f88729faeff37bd
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Peter Hartmann [Thu, 18 Oct 2012 14:40:33 +0000 (16:40 +0200)]
configure: state compiler explicitly when testing for supported flags
... so we can test those functions with host and cross compilers.
Change-Id: Ifebfdac54580633c797f77b139514cf9d66edd8c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Debao Zhang [Thu, 18 Oct 2012 14:42:15 +0000 (22:42 +0800)]
qmake ExtraCompilerTargets: deal with file name which contains space
Task-number: QTBUG-27629
Change-Id: I6d6c3345cc1bb0a866524df3a1534ed50fc00f3e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Miikka Heikkinen [Thu, 18 Oct 2012 11:15:38 +0000 (14:15 +0300)]
Fix excess enter/leave event generation for native widgets
Native widgets have a native window each, so QPA plugin sends enter and
leave events for associated QWindow whenever mouse cursor moves from
one widget to another. QWidgetWindow had no context to interpret these
events as moves from one widget to another, since they were sent
separately. This resulted in leaves and enters for each widget in
parent chain, when only the bottom child should have gotten them.
Fixed by peeking into window system message queue when handling leave
in QWidgetWindow and retrieving the entered window from queued enter
event.
Also provided a convenience function that QPA plugin can use to
ensure both leave and enter events are in the event queue when
moving from one QWindow to another.
Task-number: QTBUG-27550
Change-Id: I74fec0ac90f6848495c2392c5f7e41624ad8aea2
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Caroline Chao [Thu, 18 Oct 2012 13:57:13 +0000 (15:57 +0200)]
Test: remove QSKIP from tst_QStringList::initializeList()
Instead omit the whole test when Q_COMPILER_INITIALIZER_LISTS
is not defined.
Change-Id: I34017484a027b95a2677e1c4cb9231fa2aeb5680
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Caroline Chao [Thu, 18 Oct 2012 13:19:11 +0000 (15:19 +0200)]
Test: remove QSKIP in tst_QLocale::emptyCtor
Instead omit the whole test when appropriate.
Change-Id: Iebd569676cc7b2f8fe4a1d272107e092410d397b
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Konstantin Ritt [Tue, 16 Oct 2012 04:20:23 +0000 (07:20 +0300)]
Remove Qt3 compat leftovers
Change-Id: I91c3d26125168998d6279bddb0671cfb68eac2f4
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
J-P Nurmi [Thu, 18 Oct 2012 13:55:45 +0000 (15:55 +0200)]
QStyleSheetStyle: QObject-based style & render rules
The goal is to cut as many QWidget dependencies as possible and make
stylesheets eventually work for the desktop components.
Change-Id: Ib4aa47af07379fc39fd6df1961e113d03df6df35
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Thiago Macieira [Tue, 25 Sep 2012 14:30:48 +0000 (16:30 +0200)]
Make QContiguousCache with zero capacity not crash
These containers don't make sense and will just result in no action
being taken (all items added will simply be discarded), but it
shouldn't crash due to a division by zero.
Update the documentation to explain the fact.
Task-number: QTBUG-27339
Change-Id: Ib9acf5c0a9a826e6853e7beaf5e56511fde98dc6
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Ian Walters <ian@walters.id.au>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Bernd Weimer [Wed, 17 Oct 2012 09:19:34 +0000 (11:19 +0200)]
Fix for slowness of touch move events
In the event dispatcher native events will be processed in a tight loop
to drain the queue. IO events and timers will be postponed.
Change-Id: Ic2c06ed182027289eb5e7042fbae99efbd01ea27
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Michele Caini [Fri, 5 Oct 2012 16:36:03 +0000 (18:36 +0200)]
Review of documentation.
Documentation has been updated to reflect changes in Qt5.
Change-Id: I378858cf61f4bf62375c30c3903818d754dadcf0
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Thiago Macieira [Fri, 28 Sep 2012 12:02:29 +0000 (14:02 +0200)]
Make sure functions returning iterators have an iterator as parameter
The IA-64 C++ ABI does not encode the return type for non-template
functions (QVector is the template, not the function), which means that
these two functions have the same signature:
Node *QVector<Node>::begin()
typename class QTypedArrayData<Node>::iterator QVector<Node>::begin()
[both are _ZN7QVectorI4NodeE5beginEv]
When linking compilation units compiled with different
QT_STRICT_ITERATORS settings, only one of the two out-of-line copies
will survive. Depending on the ABI, we may have a problem: the ABI can
say that a function returning a structure takes an implicit first
parameter, which a function returning a regular pointer doesn't.
Task-number: QTBUG-27277
Change-Id: I57a59e5a7c46f55faabfe85c073dca89d2a7bbf3
Reviewed-by: Jan Kundrát <jkt@flaska.net>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Caroline Chao [Thu, 18 Oct 2012 13:01:39 +0000 (15:01 +0200)]
Test: remove QSKIP from tst_QDateTime::fromString_LOCALE_ILDATE
Instead omit the whole test when Q_OS_WIN is not defined.
Change-Id: I311538ce839353d4d5e83edfd12c68968fe61215
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Frederik Gladhorn [Fri, 28 Sep 2012 17:43:52 +0000 (19:43 +0200)]
Accessibility: itemviews check for valid model.
The problem is that isValid() should return true as
soon as we have a view widget.
That sadly means we need to verify that the model is still
valid whenever accessing it.
Change-Id: I9237528abf2f5c75a73382525103307e9ca15f05
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Stephen Kelly [Wed, 17 Oct 2012 14:00:50 +0000 (16:00 +0200)]
CMake: Remove content from else() and endif() commands.
Having them empty is the common style and is less noisy.
Change-Id: I30c0c4d297a7bdb373a57a636f4fdbc488a69fcd
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Jason Barron [Tue, 16 Oct 2012 12:58:47 +0000 (14:58 +0200)]
Change the default major version of QGLFormat to 2.
This is being changed because:
- The OpenGL paint engine in Qt only supports GL2
- QML2 only supports GL2
- QSurfaceFormat has a default value of 2
Applications that want to use GL1 on a QGLWidget will have to
explicitly request this format using QGLFormat::setVersion.
Task-number: QTBUG-27589
Change-Id: Ieb283ef7d6e15a29ec28ce7e4363dbf477decaa7
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Joerg Bornemann [Tue, 16 Oct 2012 08:34:44 +0000 (10:34 +0200)]
tst_qlocalsocket: get rid of QtScript dependency
Removing the lackey executable that needs QtScript to be built.
This was a qscript bastard that was able to run a client and a server
script. It's replaced by a C++ version with the same functionality.
Nice side effect: the two second wait per test row could be removed.
The client executable is now waiting for the server to be created.
Task-number: QTBUG-24142
Change-Id: I135b75abf6620d3b0af50dc226ea8c81c2bf4149
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Thiago Macieira [Thu, 18 Oct 2012 23:27:35 +0000 (16:27 -0700)]
Make QtDBus work again with D-Bus 1.0 and 1.1
The dbus_get_version function was introduced in 1.2, so we'd need to
detect pre-1.2 by the absence of the function. But if we're going to
detect the presence or absence of any function, we might as well do it
on dbus_connection_can_send_type, which is the function we wanted anyway.
Change-Id: I6e17a3a8f1382c6a489490084f6e3f61aa5a1947
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Sergio Ahumada [Tue, 16 Oct 2012 21:08:35 +0000 (23:08 +0200)]
test: Moving tst_QProcess::echoTest_performance()
tst_QProcess::echoTest_performance() is not an unit test but a
performance test, so moving it from 'tests/auto/corelib/io/qprocess'
to 'tests/benchmarks/corelib/io/qprocess'
Change-Id: I796788534eafc5ca3b8d86c0ec46998285fd4b8f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Samuel Rødal [Wed, 10 Oct 2012 10:38:07 +0000 (12:38 +0200)]
Fixed inconsistent QPainter fill rules for aliased painting.
Qt 5 is the time to get rid of all the old inconsistencies in the raster
paint engine caused by trying to preserve the old X11 based
coordinate system where (0, 0) is in the center of the top-left pixel
instead of the upper left corner of said pixel. However, this was only
adhered for line drawing and path / rect filling, and not for image or
pixmap drawing and not at all when doing antialiased painting. By
defining the antialiased coordinate system as being the right one and
letting the aliased fill rules follow from that we finally end up with
some consistent behavior that doesn't lead to surprises and workarounds
in application code.
It is still possible for applications to get the old behavior by
setting the QPainter::Qt4CompatiblePainting render hint. This should
make porting easier for the few cases where an application relies on the
aliased fill rules we used to have in Qt 4.
Task-number: QTBUG-27500
Change-Id: If86b95e77d838ec83033d64af86632b9a73c74a9
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Stephen Kelly [Wed, 17 Oct 2012 07:20:10 +0000 (09:20 +0200)]
Handle the case where persistent indexes have gone invalid.
Don't add invalid ranges to the result. They will be removed
whenever d->ranges is processed for public consumption
anyway. For example, QItemSelectionModel::selection() calls
merge() with another selection. The merge() method removes
invalid ranges already. But the invalid ranges don't need
to be there in the first place, so this patch removes them.
A longer-term goal is to maintain d->ranges as an always-sorted list.
This method can be called with a vector containing invalid
QPersistentModelIndexes when those persistent indexes are made invalid
in between layoutAboutToBeChanged and layoutChanged. It's a normal
thing to happen and a case that should be handled deliberately.
Change-Id: I741ed9208d8a75644975c9e8d61f0d6d78e20576
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Stephen Kelly [Tue, 2 Oct 2012 11:01:30 +0000 (13:01 +0200)]
Make sure uints remain uints when editing in itemviews.
Task-number: QTBUG-22974
Change-Id: I07428862c4dffc629f868f3010f663eb655922d0
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
José Millán Soto [Sat, 22 Sep 2012 21:19:44 +0000 (23:19 +0200)]
Correct accessibility index handling in QListView
QListView::currentChanged and QListView::selectionChanged changed to
use 0-based indexes instead of 1-based indexes.
Change-Id: Ie618970c9a37ec76156dbfab2e86685c3c8f374c
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
José Millán Soto [Wed, 12 Sep 2012 17:09:55 +0000 (19:09 +0200)]
Handle separators in menus in AT-SPI (Linux accessibility)
Change-Id: Id9c109d53bbb8ded04bbe98a622d44e13d572340
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Marc Mutz [Tue, 16 Oct 2012 09:10:22 +0000 (11:10 +0200)]
normalise signal/slot signatures [QtNetwork tests]
Change-Id: I2491cfe421a811d00759224da03580b3dcc2a091
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Marc Mutz [Tue, 16 Oct 2012 09:09:03 +0000 (11:09 +0200)]
normalise signal/slot signatures [QtDBus tests]
Change-Id: I4a0441d37e455dce28072ee3650b2062bec65759
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Tue, 16 Oct 2012 09:08:13 +0000 (11:08 +0200)]
normalise signal/slot signatures [QtWidgets tests]
Change-Id: Iffab60f0911a55e4be09faeb29df0bae1ea2eb19
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Frederik Gladhorn [Tue, 16 Oct 2012 10:57:31 +0000 (12:57 +0200)]
Doc fix in return value of QDate::setYMD
Change-Id: Ie107e451a7b2a084fb6131939f212acd412a9df6
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Frederik Gladhorn [Thu, 18 Oct 2012 16:07:54 +0000 (18:07 +0200)]
Clean up instantiation of mapping of AT-SPI roles.
Change-Id: If31b33f1b259f896408a66b0574d640b0ad57019
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Frederik Gladhorn [Thu, 18 Oct 2012 17:31:59 +0000 (19:31 +0200)]
Accessibility: make sure right objects are cached on linux
The linux test would actually fail because the qobjects created
could end up having the same address (create-delete-create...).
After an object is deleted, it's not instantly removed from the
cache of valid objects.
Instead it would stay in the list with it's smart pointer becoming zero.
This patch adds the missing null pointer check so we are always up to date.
Change-Id: Ia7be14741d4798c2b8e75cb7127298c73cf206ef
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Teemu Katajisto [Wed, 17 Oct 2012 12:42:06 +0000 (15:42 +0300)]
Cocoa: fix memory leak
Release the created CGImageRef.
Change-Id: If3b36b636ae1302b8a63bbae7285a6461b993f62
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Teemu Katajisto [Thu, 18 Oct 2012 08:02:33 +0000 (11:02 +0300)]
Cocoa: fix coretext memory leaks
Change-Id: Id85dbf8a2ea8994d9fca07d3f10b43f62ec305a0
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Thiago Macieira [Mon, 15 Oct 2012 20:30:49 +0000 (13:30 -0700)]
Rename the syncqt -qtdir to -mkspecsdir
It's actually looking for the mkspecs (so it can read qconfig.pri to
get the Qt version), so give it exactly what it wants.
Change-Id: I2957b2d93a8837b8492d313209d45ff3ec01704c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Kevin Krammer [Thu, 18 Oct 2012 09:36:48 +0000 (11:36 +0200)]
QNX: Change base font sizes from pixels to points
Previously recommended fonts sizes in pixels do not work very well
on the new high resolution devices.
Current UX documentation recommends certain point sizes for certain
roles. Those work well on both type of devices.
Change-Id: Ia4faa4cf2d753cab9b10f91d01dfef1450683272
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Richard Moe Gustavsen [Thu, 18 Oct 2012 11:25:56 +0000 (13:25 +0200)]
Cocoa: fix frameStrutMouseEvents
It turns out that the calculation of mouse pos over the frame
strut (title bar) was wrong. When outside the content view, the
nsevent coordinates are negative, so to get this correct, we
need to calculate the height of the window above the content view
and use this information to get the mouse pos in positive
coordinates with origin window top left.
This bug was especially apperent with QDockWidget, as it became
almost impossible to dock a window under such circumstances.
Change-Id: I2faf6aab5e2aa0b4e217ea087ceec8c1b1e978bb
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Jens Bache-Wiig [Fri, 21 Sep 2012 17:53:28 +0000 (19:53 +0200)]
Introduce new style Fusion
This is a new non-native style for Qt.
It is intended as a replacement for the now aging
Plastique and Cleanlooks styles.
Change-Id: I30c0518a69e4e3b8b2b05ee7d84c3a5a1f307578
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Tero Ahola [Tue, 7 Aug 2012 12:10:47 +0000 (15:10 +0300)]
Modified vertical alignments of simple widgets on OSX
Adding QCheckBox, QComboBox, QLineEdit etc. into an HBox layout or grid
layout makes the layout look like a snake's trail. Fixed the positioning
of these widgets to make the layouts visually more appealing.
Updated qmacstyle auto-test accordingly.
Task-number: QTBUG-13635
Ammended-by: Gabriel de Dietrich
Change-Id: I89461f9aad68ea8488070ed06257b9b8e7f493c5
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Tor Arne Vestbø [Wed, 17 Oct 2012 13:08:39 +0000 (15:08 +0200)]
Prevent 'make install' from automatically installing documentation
Just like 'make docs' is used to build documentation, you will now have
to run 'make install_docs' to install it.
Change-Id: I57db53160ca91618784f4e39da0a47322c070208
Task-number: QTBUG-27590
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Tor Arne Vestbø [Wed, 17 Oct 2012 12:13:19 +0000 (14:13 +0200)]
Refactor recursive target logic out of default_post into function
The qmake function prepareRecursiveTarget can now be used both by the
existing logic in default_post, as well as future recursive targets that
will be needed as part of the modularization of documentation builds.
Change-Id: Ibc72c3e224cb57c9f1796de3b04fda9de663dbb4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Andy Shaw [Thu, 18 Oct 2012 13:34:26 +0000 (15:34 +0200)]
Use the right properties when checking the frame's margins
Changed it to check the Frame*Margin property instead of the
Block*Margin property as this was incorrect for a QTextFrameFormat.
Task-number: QTBUG-22173
Change-Id: I2c3066165fb592ed034874b1180593822859f933
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Oswald Buddenhagen [Tue, 18 Sep 2012 20:01:10 +0000 (22:01 +0200)]
add a .qmake.conf file which load()s qt_build_config
that way we don't have to auto-generate code for that in the configures.
note that we now load qt_build_config.prf instead of just qmodule.pri,
which means that exceptions_off is set everywhere. we forcibly re-enable
them for testcases to minimize the deviation from default 3rd party usage.
testlib selftests are not qt testcases, so the one that needs exceptions
needs to enable them explicitly.
Change-Id: I1b9360bb11f2e80c92a2b63a7c45991ad17fda1b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Jens Bache-Wiig [Wed, 17 Oct 2012 13:20:10 +0000 (15:20 +0200)]
Remove dependency on QWindowsStyle in QGtkStyle
Now that we no longer re-use the animation code in gtk,
it is time to remove this strange dependency.
Change-Id: Ib672a9b110dfba08d79b8654e572994007675957
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Gabriel de Dietrich [Tue, 16 Oct 2012 14:53:09 +0000 (16:53 +0200)]
Bring back Mac dependent code in QBoxLayout, QGridLayout
We also made an accessibility auto-test more stable, so that it would
not be influenced by this patch.
Task-number: QTCREATORBUG-7966
Change-Id: I6ce4e2361c8847aee5dd1cf5664c29cd2d83e38d
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Giuseppe D'Angelo [Fri, 6 Jul 2012 10:37:26 +0000 (11:37 +0100)]
Add new error strings to QRegularExpression
They are introduced in PCRE 8.31.
Change-Id: Id0447b381d5e23996d4e87ae0368b07a8bc1c318
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Friedemann Kleint [Wed, 17 Oct 2012 13:18:28 +0000 (15:18 +0200)]
Windows QPA plugin: Parse arguments from list passed to factory.
Using dynamic properties on the native interface is deprecated.
Change-Id: Ia3411780dad15af61d4805c0d9fabf00dba92301
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Caroline Chao [Thu, 18 Oct 2012 12:25:36 +0000 (14:25 +0200)]
Test: remove QSKIP in tst_qarraydata
Instead omit the whole tests when appropriate.
Change-Id: Id4ec171528d4b4d6849b2478ac4f4a2332789b55
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Caroline Chao [Thu, 18 Oct 2012 08:07:28 +0000 (10:07 +0200)]
Test: remove QSKIP from tst_QTextStream::stillOpenWhenAtEnd
Instead omit the whole test when Q_OS_WINCE is defined.
Change-Id: Ifd09048687db95913f39a64cffb42a743af8fa81
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Jan Arve Saether [Thu, 18 Oct 2012 09:21:20 +0000 (11:21 +0200)]
Make sure we copy *all known events* properly in order to not assert.
This caused the following assertion in tst_QAccessibility::listTest():
ASSERT: "m_type != QAccessible::TableModelChanged" in file
qaccessible.h, line 455
Change-Id: If1f1e80521f346019bdbd59aac58e30c870d6e4e
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Rohan McGovern [Thu, 18 Oct 2012 01:14:57 +0000 (11:14 +1000)]
Fix compile with -no-widgets
Remove more unnecessary references to QtWidgets in accessibility
implementation.
Disable accessibility tests (which rely on QtWidgets) when QtWidgets is
not available.
Change-Id: I57315537779d31af1245d42d1b4c49174016da54
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Caroline Chao [Thu, 18 Oct 2012 07:56:57 +0000 (09:56 +0200)]
Test: remove QSKIP in tst_QDataStream::stream_QIcon
Instead omit the whole test when Q_OS_WINCE is defined.
Change-Id: Ic69accb138121d2b39f068cef181da13b18e46ee
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>