Rohan McGovern [Wed, 18 Apr 2012 23:43:24 +0000 (09:43 +1000)]
Really marked tst_QProcess as insignificant on Windows.
This test hangs ~2.6% of the time in CI.
The previous commit which attempted to mark this test as insignificant
did not work due to this .pro file doing a load(testcase) prior to the
line which set CONFIG += insignificant_test. testcase.prf must be
loaded _after_ insignificant_test is set.
Task-number: QTBUG-25342
Change-Id: I20470337fda8235e2fd0b6e8d5f564c8c57d167e
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Ian Dean [Fri, 30 Mar 2012 08:03:00 +0000 (09:03 +0100)]
Change coreservices -> ios
Replace "contains(QT_CONFIG, coreservices)" with "!ios" in config files.
Replace "QT_NO_CORESERVICES" with "Q_OS_IOS" in source files.
Change-Id: Id3b02316b245a24ce550e0b47596d18a4a409e4f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Konstantin Ritt [Wed, 18 Apr 2012 00:45:53 +0000 (03:45 +0300)]
qdbusxml2cpp: fix build on Windows
bootstrapped process defines QT_NO_LIBRARY but QT_NO_LIBRARY
is not supported on Windows
Change-Id: I353a8690832e292522ed6c39a7e0ca19b0980e01
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Girish Ramakrishnan [Wed, 18 Apr 2012 22:48:29 +0000 (15:48 -0700)]
configure: fix script error with -help
configure -help results in the following error:
[: 3174: missing ]
Change-Id: Ibe7a5292087924d3efd0c87d9fb91deee831171f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Jędrzej Nowacki [Wed, 18 Apr 2012 12:40:50 +0000 (14:40 +0200)]
Do not assert when QVariant is constructed from an invalid type id
That change also fix moduleForType() which was wrongly recognizing
negative ids as belonging to Core.
New tests were added.
Change-Id: I40a5819effb32489a45937011980457387c9f8be
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Eskil Abrahamsen Blomfeldt [Wed, 18 Apr 2012 08:57:43 +0000 (10:57 +0200)]
Fix memory leak when drawing text in non-common script
When the font engine cache was updated for new parameters, we
would overwrite the cached engine, but not deref the old
cached engine, thus it would never be deleted.
This is manual cherry pick of
44c14470e5b28e45c19d6959b114e063cf3f4d83
from 4.8 branch.
Change-Id: Ice2e555fe380dc9851ef490fa1a6928936ae4c35
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Samuel Rødal [Tue, 17 Apr 2012 06:46:13 +0000 (08:46 +0200)]
Optimized EGLFS backing store a bit.
Avoid expensive image copying when possible.
Change-Id: Ia79919ea7652d7bfdd744198c494c20cb78a0f48
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Stephen Kelly [Wed, 18 Apr 2012 12:36:08 +0000 (14:36 +0200)]
Fix a CMake unit test.
This has been broken since modules do not currently find
their (public) dependencies.
Change-Id: I0c9e7c46f7a6499993c98aa6d33996bdd3a1be5f
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Wed, 18 Apr 2012 12:33:39 +0000 (14:33 +0200)]
Build the first CMake test if *at least* version 2.8.7 is available.
Change-Id: I061130e5b937ad818cc9016ae62d5890092d60f2
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Wed, 18 Apr 2012 11:51:40 +0000 (13:51 +0200)]
Fix unused variable warning.
Change-Id: I8daa2912e1c26e9e9f6bb77f64eb3e06c6715cce
Reviewed-by: David Faure <faure@kde.org>
Jason McDonald [Wed, 18 Apr 2012 11:13:06 +0000 (21:13 +1000)]
Remove insignification of QNetworkInterface autotest on Windows.
This test has not failed in the last 300 CI runs.
Change-Id: I559ea223856b1460deb343384d5b4439f42a41d7
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Jason McDonald [Tue, 17 Apr 2012 14:41:15 +0000 (00:41 +1000)]
Remove insignification from the Lancelot test.
This test has not failed in the last 400 CI builds.
Change-Id: I22b59565a6a6cb48653bd9b0d967abbf074d59a4
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Jason McDonald [Wed, 18 Apr 2012 09:55:05 +0000 (19:55 +1000)]
Update task numbers for QUdpSocket autotest.
Reference tasks with detailed analysis of failures rather than generic
task for blacklisted tests.
Change-Id: Ibd0ed836ffb84fe9aa14488d43085316e666de21
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Stephen Kelly [Wed, 18 Apr 2012 09:55:15 +0000 (11:55 +0200)]
Fix some unused variable warnings.
Change-Id: I3ffbb155c0efa65bb33a0e2ce80dbd75dc56f3fc
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Stephen Kelly [Tue, 17 Apr 2012 16:12:06 +0000 (18:12 +0200)]
Fix some unsigned comparison warnings.
Change-Id: I4e72dbb6e207757c8bb75a7726c83ed5916df094
Reviewed-by: Richard J. Moore <rich@kde.org>
Stephen Kelly [Tue, 17 Apr 2012 15:47:03 +0000 (17:47 +0200)]
Fix build with QT_NO_CLIPBOARD.
Change-Id: I82558e1e432934b98236d69106fb98e44e819095
Reviewed-by: Richard J. Moore <rich@kde.org>
Kim Motoyoshi Kalland [Tue, 17 Apr 2012 11:17:16 +0000 (13:17 +0200)]
Remove todo comments that are no longer relevant.
Task-number: QTBUG-25067
Change-Id: I5d3022a2881a3c6c97429f609fe567bd9970a046
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Lars Knoll [Wed, 18 Apr 2012 06:57:32 +0000 (08:57 +0200)]
Revert "Fix memory leak of QFontEngineData"
This reverts commit
addffb71b45b5123ee449f0cfa4891dcab044a9f.
The fix causes crashes on exit in Qt Declarative.
Change-Id: Ib1fc67c27fb1869b7824ba080083da67b8878fff
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Tasuku Suzuki [Sat, 31 Mar 2012 14:22:05 +0000 (23:22 +0900)]
change NSTextInput to NSTextInputClient in Cocoa plugin
NSTextInput protocol is slated for deprecation
Task-number: QTBUG-23867
Change-Id: I3f9eadc31bdf4234c63f1bcde5172f22da8d340e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Janne Anttila [Mon, 31 Oct 2011 14:02:32 +0000 (16:02 +0200)]
Fixed libjpeg compiler warning about macro redefinition.
When compiling Qt for Windows CE the MSVC reported the followin warning:
warning C4005: '_CRT_SECURE_NO_DEPRECATE' : macro redefinition
Fixed by adding ifdef quard for duplicate _CRT_SECURE_NO_DEPRECATE.
Task-number: QTBUG-22512
Change-Id: I8c37ffe6ca275c80a7b7e6b23f39f3ab06b332f1
Reviewed-by: aavit <qt_aavit@ovi.com>
(cherry picked from commit
1a1a8f004824b981865c6239747ff05d8e6f812a)
Lars Knoll [Thu, 12 Apr 2012 11:02:11 +0000 (13:02 +0200)]
Ignore moduledir/doc in syncqt
When modularizing our documentation, module level
documentation is supposed to go into a doc
subfolder in the modules sources. Since this folder
also contains header files (snippets), we need to ignore
it in syncqt.
Change-Id: If8159816b042a1a6c810eaa0b6dbd99bf58d8ffa
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Mark Brand [Thu, 12 Apr 2012 23:01:23 +0000 (01:01 +0200)]
remove useless workaround
The workaround attempts to let the application reserve memory in
QString for receiving the stored procedure output parameter.
This does not work because the reserved capacity is not preserved
through QVariant.
Unfortunately, the application must actually populate QString with
at least the number of characters that will be received.
Change-Id: Icb3be60d6bd570ad2349f20fb7d93b340e395627
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Mark Brand [Thu, 12 Apr 2012 20:26:08 +0000 (22:26 +0200)]
QTBUG-18435 fix stored procedure output parameters on ODBC
Follow-up to
c55a99965d8c08d5f924d49db4fe4aa49df8096.
3 problems prevented stored procedure output parameters from working.
- SQLBindParameter needs access to buffer provided by QByteArray.
- The length of the buffer is measured in bytes.
- A typo corrupted conversion back to QString.
Also, data() makes more sense than constData() to expose the buffer.
Task-Id: QTBUG-18435
Change-Id: I66444b13c0f584ed79bcf026e5a23caff83c22cb
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Frederik Gladhorn [Thu, 12 Apr 2012 06:15:46 +0000 (08:15 +0200)]
Only send progress bar updates when visible.
Screen readers tend to announce progress.
Some applications (for example KMail) have hidden
progress bars that update frequently.
While the applications should be fixed, it's better
not to spam the user with continous progress announcements.
Ported from Qt 4 patch.
Change-Id: I5f3b5a83dc80594d995b10e58527115de8601c77
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
(cherry picked from commit
90dc28900d3abfb00a65fef1d9daf36e727dfdca)
Frederik Gladhorn [Fri, 13 Apr 2012 13:30:52 +0000 (15:30 +0200)]
Accessibility: Check for valid range of tree items.
This might lead to crashes otherwise.
Change-Id: Ib28ac03b7d200571a0e759467eb692cfee3b05f3
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Frederik Gladhorn [Fri, 13 Apr 2012 12:54:30 +0000 (14:54 +0200)]
Use parentheses in statement with && and ||.
Forwardport from Qt 4
Change-Id: I4f968559a7371b87343cb5825eb83b0099364cf2
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
(cherry picked from commit
330b0bece4d7805067f488c157532f9fb9b48bbc)
Konstantin Ritt [Mon, 16 Apr 2012 11:39:36 +0000 (14:39 +0300)]
QThreadPool: unify waitForDone() overloads
Change-Id: I1515a65fab37588372794422a43ed09ac076e108
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Konstantin Ritt [Mon, 16 Apr 2012 11:43:27 +0000 (14:43 +0300)]
QThreadPool: optimize enqueueTask() for common case
the most-common case is: queue is empty or filled with tasks of
the same priority; so the runnable would be put at the end of queue.
both checks are cheap for us.
also avoid detach()'ing by using const iterators
Change-Id: Iab2255f852211f9accc8d717f778671661210ef3
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Konstantin Ritt [Mon, 16 Apr 2012 09:52:52 +0000 (12:52 +0300)]
fix QChar::decompositionTag() returns wrong result for Hangul syllables
Change-Id: I28e7b14b6a90aa539f8a50107737a66b3484fc00
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Mon, 16 Apr 2012 08:26:41 +0000 (11:26 +0300)]
fix QChar::isPrint() returns an incorrect result.
results are now equals to results of ICU's u_isprint() for the entire set
of the Unicode code points
Change-Id: I763f4b37cccd285eb01543d486f25bd7ea011241
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Mark Brand [Fri, 13 Apr 2012 15:11:30 +0000 (17:11 +0200)]
fix QSqlQuery ODBC auto tests
The placeholder name must include the : prefix.
Several type tests for aggregate functions assumed sqlite behavior
which is actually exceptional due to sqlite's loose type system.
REAL is a synonymn for DOUBLE in sqlite but is also compatible with
at least MS SQL Server, PostgreSQL, Oracle, and MySQL.
Change-Id: I97f8c55d2e962b072cfab11a121fda685666e754
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
Samuel Rødal [Tue, 17 Apr 2012 06:50:47 +0000 (08:50 +0200)]
Fixed RGBA <-> BGRA bug in EGLFS backingstore.
Better to swizzle in the fragment shader than to do a byte swapping
operation on the CPU.
Change-Id: I01420c3a5ceb5309f5648e1f86979b025bdd88aa
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Jason McDonald [Tue, 17 Apr 2012 08:55:36 +0000 (18:55 +1000)]
Remove insignification from QPluginLoader and QFactoryLoader tests.
Archived build logs on http://testresults.qt-project.org/ci/ show that
the QPluginLoader test has failed in CI only once in the last 1000
builds (in build 1786), and on that occasion the test was legitimately
blocking a regression.
The QFactoryLoader test was derived from the QPluginLoader test and has
not failed since its first run on March 29, 2012.
Task-number: QTBUG-22765
Change-Id: I866b4b8e30e393e0c7e7292119c072b27008ab43
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Janne Anttila [Wed, 2 Nov 2011 07:24:10 +0000 (09:24 +0200)]
Fixed MSVC compiler warning for zlib when compiling on WEC7.
WEC7 mkspecs define _CRT_SECURE_NO_DEPRECATE globally. zlib redefined
the same macro without checking if it is already defined. Added #ifdef
guard to zlib when defining _CRT_SECURE_NO_DEPRECATE.
Task-number: QTBUG-22512
Change-Id: I477b24b7bc0ebb4cd8a619b11668eceb0f5064d4
Reviewed-by: aavit <qt_aavit@ovi.com>
(cherry picked from commit
a0a970447d63e5c9afdb55d179d671d9c24e9061)
Raphael Kubo da Costa [Mon, 16 Apr 2012 20:44:48 +0000 (17:44 -0300)]
mkspecs: Rename freebsd-g++40 to freebsd-g++46.
lang/gcc40 was removed from FreeBSD's ports tree in 2007, and the
lang/gcc port, which provides a stable GCC version newer than the one in
the base system, is currently pointing to the 4.6 series.
Change-Id: Ifd959ef7b9cd122aa606644e97e337ace8742245
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Raphael Kubo da Costa [Mon, 16 Apr 2012 20:19:14 +0000 (17:19 -0300)]
mkspecs: Sync freebsd-g++40 and freebsd-g++.
Make freebsd-g++40 include gcc-base-unix.conf and g++-unix.conf and
eliminate a lot of duplicate definitions.
Change-Id: Ib3fe572ee276645fb03034a08fbc8e06720b6372
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Raphael Kubo da Costa [Mon, 16 Apr 2012 20:03:09 +0000 (17:03 -0300)]
Do not define QT_AOUT_UNDERSCORE in freebsd-g++'s mkspec.
According to FreeBSD svn r52802 from 1999 the -aout compiler option and
the QT_AOUT_UNDERSCORE trick were already obsolete.
Since the FreeBSD project itself only supports versions 7 and above
these days, the definition can be safely removed.
Change-Id: I324d5d5b136a6560d9e1b5c81b93efc32d87cdc2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Raphael Kubo da Costa [Mon, 16 Apr 2012 20:22:22 +0000 (17:22 -0300)]
Remove the freebsd-g++34 mkspec.
GCC 3.4 is older than the 4.2.1 in the base system, and should be
removed from the ports tree.
Besides, nobody in their sane mind would want to build Qt with such an
old compiler.
Change-Id: Ib40357758058505465a8bfcefbd182b9240591a5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Raphael Kubo da Costa [Mon, 16 Apr 2012 19:53:52 +0000 (16:53 -0300)]
Do not redefine QT_SOCKLEN_T in freebsd-g++'s mkspec.
QT_SOCKLEN_T was being redefined depending on whether FreeBSD was < or
>= 4, branched in early 1999.
FreeBSD < 7 is not supported by the upstream project anymore, so we
can simplify the code and rely on the QT_SOCKLEN_T definition in
common/posix/qplatformdefs.h instead.
Change-Id: I0e06fc37e29158932b95a2619a7442c6068a7d32
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Jason McDonald [Tue, 17 Apr 2012 13:08:37 +0000 (23:08 +1000)]
Remove insignfication from QGuiApplication test on Windows.
This test has two stable failures, one of which slipped through while
the test was disabled. Mark the failures with QEXPECT_FAIL and
re-enable the test.
Task-number: QTBUG-24186
Change-Id: Ie24f86603a01634d6eec5a42baa77e966f9388c8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Pierre Rossi [Mon, 16 Apr 2012 11:36:18 +0000 (13:36 +0200)]
Fix a thread safety issue with QTextLine::glyphRuns
This is a very partial revert of
10ac80708.
Revert back to using engineFromScript, which is reentrant, for cases other
than the "rawfont mode". In that last case, reentrancy is not a big issue
so far as the only client is WebKit, and this is used in the web process,
with no threaded rendering.
Change-Id: I047b04cf0236d52e6d548f34cddd3dcc7c3c5f83
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Jian Liang [Sat, 14 Apr 2012 07:50:58 +0000 (15:50 +0800)]
Fix memory leak of QFontEngineData
Move QFont::cleanup(); and cleanupThreadData(); to the end of destructor
of QGuiApplicationPrivate class. This is because they will trigger the
QFontCache::~QFontCache() function being called and at that time the
platform_theme object still hold some fonts object, This will cause the
QFontEngineData object hold by those fonts can never been deleted.
Change-Id: I4d3f21c5e2683706f68395ba3ad24203081e1d1d
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Jørgen Lind [Tue, 17 Apr 2012 07:08:42 +0000 (09:08 +0200)]
Add function getters in the native interface
Change-Id: I4609071e38c3807479375ef98f260516da03ec15
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Casper van Donderen [Mon, 16 Apr 2012 08:11:26 +0000 (10:11 +0200)]
QDoc: Write subclasses of namespaces in automatic ditamap.
Now we also write the subclasses of namespaces sorted to qt.ditamap.
Change-Id: I4a4376bac208b9bacd5a2ddd5265faef13dc2eba
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Jan-Arve Saether [Tue, 17 Apr 2012 11:04:29 +0000 (13:04 +0200)]
Add some missing \internal for accessibility
Change-Id: I42c0a14908cfcccd2218f887b286515fef8d6611
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Stephen Kelly [Thu, 12 Apr 2012 15:23:19 +0000 (17:23 +0200)]
Fix out of bounds use of QVector API.
This is a regression introduced by commit
22b7d211865c1505862627a2e65bcd063e314e45.
Task-number: QTBUG-24965
Task-number: QTBUG-25140
Change-Id: I3f3bfe23af802444b078a29ee5565dd2bd24a34d
Reviewed-by: David Faure <faure@kde.org>
Lars Knoll [Tue, 17 Apr 2012 11:01:20 +0000 (13:01 +0200)]
Merge "Merge remote-tracking branch 'origin/api_changes'" into refs/staging/master
Bradley T. Hughes [Tue, 17 Apr 2012 10:55:17 +0000 (12:55 +0200)]
Re-enable all of tst_QApplication::quitOnLastWindowClosed() on Mac OS X
Part of this test was skipped on Mac OS X, due to a bug in timer
handling. This bug has been fixed[1] and the test now passes again.
[1] https://codereview.qt-project.org/#change,21953
Task-number: QTBUG-24319
Change-Id: Iad0a315cfdfcfb007e8aa9243cfef4b2f2b33895
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Bradley T. Hughes [Thu, 22 Mar 2012 12:45:03 +0000 (13:45 +0100)]
Add tests/auto/gui/kernel/qguitimer
This test is like qguieventdispatcher, it duplicates a corelib test in
the gui test suite, since the QtGui library often gets a different event
dispatcher implementation from the platform plugin.
Change-Id: Ifd724066950bc3b98a804bc2e5d40ce7b0429af4
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Jason McDonald [Tue, 17 Apr 2012 10:28:37 +0000 (20:28 +1000)]
Remove insignification of QOpenGL test on Mac OS X.
The failure was fixed by commit
e430ddfafcc6e8fa9fecb9c816908c3edce08d77
and the test has not failed again in the >500 CI builds that have
occured since that commit was merged,
Task-number: QTBUG-23061
Change-Id: I41063f9dbc6b6d7d6b99f1a0c20708b0842353d5
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Lars Knoll [Tue, 17 Apr 2012 10:58:41 +0000 (12:58 +0200)]
Merge remote-tracking branch 'origin/api_changes'
Change-Id: I964b0a6f5c38351fdfafb8a2a128a349ff8c89d1
Friedemann Kleint [Mon, 16 Apr 2012 08:30:47 +0000 (10:30 +0200)]
Skip tests toolbar-dialog/widget_window.
To enable merging the api_changes branch.
Task-number: QTBUG-25331
Change-Id: I90d32ca0bd96eed62bae5f01316d6360a3b435c8
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Sergio Ahumada [Tue, 17 Apr 2012 08:38:24 +0000 (10:38 +0200)]
Merge "Merge remote-tracking branch 'origin/master' into api_changes" into refs/staging/api_changes
aavit [Mon, 16 Apr 2012 11:55:27 +0000 (13:55 +0200)]
Upgrading libpng: Patches to libpng 1.5.10 for Qt usage
This is the collection of those earlier patches to libpng in Qt that
are still relevant, updated as required. For details, refer to the git
history of the src/3rdparty/libpng directory of Qt 4 and Qt 5/qtbase.
Change-Id: Ia922441024536eec9b8ced8c3c5e4dc941ae152f
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
aavit [Mon, 16 Apr 2012 11:34:47 +0000 (13:34 +0200)]
Upgrading libpng: Adding clean copy of libpng 1.5.10
This commit removes the previous version of the bundled libpng
(1.5.4), as well as all local modifications to it. It adds an
unmodified copy of the official libpng source distribution, except
that various extraneous files have been removed, as usual.
The patches required to build it in Qt will follow in separate
commit(s).
Change-Id: I90149f87fc889c44a3b60b21cdf755020f3a8e39
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Bradley T. Hughes [Tue, 17 Apr 2012 05:29:24 +0000 (07:29 +0200)]
Move XFAIL in tst_QGraphicsProxyWidget on Mac OS X
The number of paint events is correct now, but the first expected region
is still incorrect. Move the XFAIL to the region comparison.
Change-Id: I3e706cf703b20a0e98b644b3082172fc3142b44f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Bradley T. Hughes [Wed, 11 Apr 2012 11:08:40 +0000 (13:08 +0200)]
Cocoa: allow timer activation to recurse
CFRunLoopTimer's callback will never recurse. Since we are using one
CFRunLoopTimer to drive all Qt timers, we need to work around this by
sending all timers via a dedicated CFRunLoopSource (since these
callbacks can recurse). We also need to block this new timer source
along with the posted event source when calling processEvents()
"manually" to prevent livelock deep in CFRunLoop.
Change-Id: I375e46b6cfa0c76db678a1085314d42d8996d062
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Bradley T. Hughes [Thu, 12 Apr 2012 10:52:24 +0000 (12:52 +0200)]
Add QPlatformWindow::setWindowModified(bool)
Mac OS X provided a platform API for marking a window/document as
modified. This previously worked in Qt 4, so we need to have an
interface to keep this working in Qt 5. If the platform window does not
provide an implementation, fallback to setting the window title.
Note that this does not add any QWindow API, it's only in
QPlatformWindow.
Change-Id: I84c5a5df8536859157f2b1fa9e4cc647a09fd06d
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Jason McDonald [Mon, 16 Apr 2012 13:47:19 +0000 (23:47 +1000)]
Make failures in QTimeLine autotest more stable.
QTimeLine appears to have very poor timing characteristics. Historical
CI logs show roughly one failure in every twenty-five test runs on
Windows, and less frequent failures on Mac and Linux.
The root of the problem seems to be that QTimeLine's currentTime
counter appears to run at a variable speed and the only guarantee is
that it is slower than wall time. The frameChanged() test
function waited for double the expected duration of the timeline and
still found that the timeline had failed to finish in about one in every
thirty test runs. The interpolation() test function also failed for the
same reason, though less often.
This commit makes the frameChanged test more strict so that the poor
timing will be demonstrated more often, waiting only 1.5 times the
duration instead of double the duration. It also makes the test fail
gracefully so that this known issue won't disrupt CI when the test is
made significant in a later commit.
Task-number: QTBUG-24796
Change-Id: If469d43abb662e24445a9da619052eea9cf7c581
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Jason McDonald [Mon, 16 Apr 2012 13:11:41 +0000 (23:11 +1000)]
Fix bug in tst_QTimeLine::duration().
QTimeLine::currentTime() is an integer in the range [0..duration], not a
float in the range [0.0..1.0]. The aim of the test appears to be to
verify that currentTime() is at least 90% of the way to duration() when
the timeline is almost due to finish, so verify that and give the
corresponding 10% tolerance on reaching the end state.
Change-Id: I38646947c3b9189a4e8e91a450c6071430ddc66a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Rohan McGovern [Mon, 16 Apr 2012 23:53:21 +0000 (09:53 +1000)]
Marked tst_QProcess as insignificant on Windows.
This test hangs ~2.6% of the time in CI.
Task-number: QTBUG-25342
Change-Id: I2c3531140e15edfe2dc2524e101b84e3206a4e61
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Girish Ramakrishnan [Fri, 13 Apr 2012 20:17:13 +0000 (13:17 -0700)]
api: remove QWindow::move
QWindow::setPos is the correct api.
Change-Id: I5439338e9bc6933800d66331f20ce554b017c4fb
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Fri, 13 Apr 2012 22:38:41 +0000 (15:38 -0700)]
api: Fix const correctness of api in QScreen
const was missing in many convenience functions.
grabWindow should not be const since it actually does something.
Change-Id: I0ffa718878d4251c4fb5c34789cf58ebb85cff37
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Fri, 13 Apr 2012 14:30:02 +0000 (07:30 -0700)]
api: Make QGuiApplication::styleHints() static
Practically all functions in QGuiApplication are static.
Change-Id: I5948620865c021029a3c04b31901b1110e6c0d27
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Jędrzej Nowacki [Mon, 16 Apr 2012 14:01:50 +0000 (16:01 +0200)]
Fix tst_qtracebench benchmark.
Default QDataStream version was changed in Qt5, but the test tried to
load an old dumped file.
Change-Id: I49c06c232ec8a27f33c9da345bae4e03cd0c56fb
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Bradley T. Hughes [Mon, 16 Apr 2012 10:14:35 +0000 (12:14 +0200)]
Fix tst_QDialog::deleteInExec() crash on Mac OS X
When destroying a window immediately after showing it, we can sometimes
provoke a crash in Cocoa after the show-window-animation has finished
(which appears to assume that the window's view will always be valid).
Prevent the crash by not removing the view from the window. When
recreating a window, we explicitly release the old window, but we do not
release the view, so we can freely add it to the new window (i.e. this
does not introduce new bugs related to recreating the platform window).
Task-number: QTBUG-24977
Change-Id: I466ce75b04785401032a0a2d4a2c494910cd1672
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Donald Carr [Mon, 16 Apr 2012 10:01:26 +0000 (10:01 +0000)]
Reintroduce testlib to widget free builds
testlib now compiles without widget support and it will be great to get
this code path QAed and testable.
Change-Id: Iceb641bf04fdac84ef0a0f86d0abb83f4c66bf80
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Qt4iOS [Sat, 24 Mar 2012 14:09:04 +0000 (14:09 +0000)]
Add support for iOS.
Provide support for platforms with older implementations of
realpath() (eg. iOS).
Change-Id: Iec7f73c8014d238ae6a2cb2fa836b36b89ce4ef6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Joerg Bornemann [Mon, 16 Apr 2012 14:09:18 +0000 (16:09 +0200)]
qmake vc(x)proj generator: don't create bogus directories
When creating the temporary project object,
Option::output_dir must be adjusted temporarily.
Task-number: QTBUG-22788
Change-Id: Ibf8897a46b63f48b9e33d7e2168b09e559cecec7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Joerg Bornemann [Mon, 16 Apr 2012 09:11:19 +0000 (11:11 +0200)]
qmake/Win: fix incomplete generated version resource
Since Windows Vista the resource language must be included to
make the version information visible in Windows Explorer.
Two new variables have been introduced:
RC_LANG (default: 1033) - resource language
RC_CODEPAGE (default: 1200) - resource codepage
Task-number: QTBUG-23218
Change-Id: I29e102d19501e3b7a43d5096fc4806bc38a4d846
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Joerg Bornemann [Mon, 16 Apr 2012 08:27:10 +0000 (10:27 +0200)]
qmake vcxproj generator: fix handling of /MANIFEST:NO linker option
Task-number: QTBUG-23513
Change-Id: I5dd6fb6fd7910e43acd28057133a3ad6613cfc1a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Joerg Bornemann [Mon, 16 Apr 2012 09:07:02 +0000 (11:07 +0200)]
qmake: QMakeProject::intValue added
For variables that are supposed to contain a single int,
this method returns the numeric value.
Only the first value of the variable is taken into account.
Change-Id: Ifa11ba5ac044e0a4703a387a9bcf02043e4681d8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Joerg Bornemann [Mon, 16 Apr 2012 07:38:21 +0000 (09:38 +0200)]
qmake vcproj generator: unused variable removed
Change-Id: Iaf8bb1772846001297e1a421c3860f5e4d090a35
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Bradley T. Hughes [Thu, 29 Mar 2012 07:25:29 +0000 (09:25 +0200)]
Add QPlatformWindow::windowEvent()
This function is used to pass non-spontaneous events from QWindow to
QPlatformWindow so that QPlatformWindow subclasses can do any platform
specific event handling (such as setting/clearing modality flags on
QEvent::WindowBlock/WindowUnblock).
Change-Id: I82a89e8dadcd2f706aae25889d79cbfac9c2ee18
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Stephen Kelly [Sun, 15 Apr 2012 21:03:40 +0000 (23:03 +0200)]
Update parent indexes first with changePersistentIndex.
Otherwise, the order of updating of the indexes will cause
inconsistent results because it will rely on ordering within a
QHash (which is indeterminate).
Task-number: QTBUG-25325
Change-Id: I7d99578c8ee2954b8562dc5aff7dc32e74d41fb5
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Donald Carr [Mon, 16 Apr 2012 05:04:33 +0000 (05:04 +0000)]
Remove incorrect inclusion of GL support headers given EGL presence
The include files have a hard dependency on OpenGL (ES2); testing for the
presence of EGL support is insufficient grounds for including this
functionality
Change-Id: I391b5dbbcbef40ecf68d16617b6eb1c0bb4b799e
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
hjk [Fri, 13 Apr 2012 09:14:15 +0000 (11:14 +0200)]
Make {TCBPoint,QEasingCurveFunction}::operator==() const
This is needed to use the classes with standard algorithms
and is the Right Thing anyway.
Change-Id: I13d1e0bfabbd216319cc138f11a9b3240f093052
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Donald Carr [Mon, 16 Apr 2012 20:19:12 +0000 (20:19 +0000)]
Handle window state changes correctly in EGLFS
The only valid state for EGLFS is fullscreen; this change reduces EGLFS to
reflect this cruel reality
Change-Id: I5aa9b4ef88451a00ce9de328add7d5512e1c86b5
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Jason McDonald [Mon, 16 Apr 2012 14:54:22 +0000 (00:54 +1000)]
Remove insignification from QLocale test for Mac OS X.
This test has not failed in the last 500 Continuous Integration runs.
Task-number: QTBUG-22769
Change-Id: Ib2e95bb2291757941baa0ea46d568816eef20b09
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Jason McDonald [Fri, 13 Apr 2012 10:25:49 +0000 (20:25 +1000)]
Add bug numbers to insignificant_test markers.
Change-Id: I4033ef0bd50a1be484503886b6bfda456da26675
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Samuel Rødal [Mon, 16 Apr 2012 19:24:41 +0000 (21:24 +0200)]
Implemented raster based backing store for EGLFS plugin.
This improves quality of rendering for QWidget-based applications a bit.
Change-Id: I6b832d1de7e722f4dbe4e82882f5db35f0b8c30c
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Bjoern Breitmeyer [Mon, 16 Apr 2012 12:40:44 +0000 (14:40 +0200)]
Fixed networkproxy build under WinCE
The used functionality is partially not available under WinCE.
qnetworkfunctions_wince.h encapsulates the needed extra symbols.
It only needs to compile as the functions are loaded dynamically.
Change-Id: Ieb9010d4f6c7f94d39918b869ac503976e094e49
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Donald Carr [Mon, 9 Apr 2012 19:47:12 +0000 (19:47 +0000)]
Introduce fallback for general cross compilation
The current approach of forcing people to pass the fully qualified prefix
of their toolchain to the configure script is verbose and something of a
chore for people who use the same toolchain to target several devices.
This allows you to set a single toolchain for use with all Qt targets via:
qmake -set CROSS_COMPILE foo
You can still explicitly override this toolchain, as originally mandated,
with the configure time device-option arguments.
Change-Id: Ibd3d940bb08fa09499533f9c661557e337a8421a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Martin Petersson [Mon, 16 Apr 2012 10:41:42 +0000 (12:41 +0200)]
Responses to request with AlwaysNetwork set should be cached
Previously the cache was not enabled if the request had AlwaysNetwork
set. This removes the check for the CacheLoadControlAttribute when
checking if the cache should be enabled.
Task-number: QTBUG-15805
Change-Id: I3d0722fbc1e6c77c5b947a2af0a09e2de8f4f9df
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Richard Moore [Sun, 15 Apr 2012 21:56:58 +0000 (22:56 +0100)]
Trivial doc fix.
Change-Id: I837c74d38b9f73aed41c3839421f5faad9d22f3f
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Richard Moore [Sun, 15 Apr 2012 20:02:12 +0000 (21:02 +0100)]
Minor doc improvements.
Change-Id: Ic14cefcf935fea822c581013f437ae61b820ddd9
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Girish Ramakrishnan [Sat, 14 Apr 2012 00:49:04 +0000 (17:49 -0700)]
Add 'we mean it' header to qpa headers
The QPA api is internal and not meant to be used by app users.
Change-Id: I37245e9635bf22f2454e763699dd58eca6565b63
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Girish Ramakrishnan [Sun, 15 Apr 2012 12:00:35 +0000 (05:00 -0700)]
doc: Mark all qpa classes as internal
All QPA api as marked as so:
* preliminary - the api is subject to change anytime
* internal - internal api that shouldn't be used by apps
* ingroup qpa - "qpa" module. In the long run, qdoc should
generate documentation for qplatform* API as if it were
a seperate module.
Change-Id: I4e76c0e0c1805c679cabd52d5006f9fa9bc411c0
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Holger Hans Peter Freyther [Mon, 16 Apr 2012 14:39:44 +0000 (16:39 +0200)]
gui: Clear the QPixmapCache before destroying the QPlatformIntegration
The QPixmap in the pixmap cache should not outlive the QPlatformIntegration.
Clear the cache shortly before destroying the platform integration. This is
fixing a crash with the DirectFB plugin in the tst_qpixmapcache test.
Change-Id: I0b1a304dc37d874b412aadb77f8dbaa7d292711f
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Mon, 16 Apr 2012 14:27:11 +0000 (11:27 -0300)]
Remove the Qt 5 todo about empty string lists in QSettings
There's no need to change behaviour now. The current marker (@Invalid())
returns an empty string list, as opposed to a list with one item.
Changing it would break compatibility unpredictably with Qt 4.
So I choose not to change QSettings. Let it be "Done".
Task-number: QTBUG-25110
Change-Id: Id1f353dfed800005d927183da237f3f8357c496d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Samuel Rødal [Mon, 16 Apr 2012 15:36:03 +0000 (17:36 +0200)]
Made the evdev mouse plugin clamp coordinates to screen.
Useful when we get relative events, as otherwise the mouse might end up
far outside the screen boundaries.
Change-Id: I8e3884ab2acb03eaa6afce8926f503dbd03b0c5d
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
João Abecasis [Fri, 6 Apr 2012 08:12:36 +0000 (10:12 +0200)]
Make reallocData use QArrayData::AllocationOptions
Growth computations are deferred to QArrayData::allocate, except in the
case of realloc as that functionality is currently lacking in
QArrayData. Since that sits in library code, anyway, it can be changed
later to use a future QArrayData::reallocate.
As it is, reallocData is becoming a model for QArrayData::reallocate
and what it can offer to containers of POD/movable types.
Change-Id: I045483f729114be43e4818149d1be1b333bcbe13
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Fri, 6 Apr 2012 07:56:20 +0000 (09:56 +0200)]
Drop unnecessary assignment
In this branch, !IS_RAW_DATA has already established that offset is
sizeof(QByteArrayData) and realloc maintains the assumption.
Change-Id: Ic160e36d7781d4c4f64a3b2ebec98c9cb605b3eb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Jędrzej Nowacki [Tue, 27 Mar 2012 11:17:46 +0000 (13:17 +0200)]
Migrate QByteArray over QArrayData.
For the time being QByteArrayData keeps its independent existence, for
the sake of other modules. Once they have been ported to use the new
initializer macros it can be changed to:
struct QByteArrayData { QArrayData array; };
Extra braces can then be added to the macros.
With respect to source compatibility, the only concern is with other
modules, as QByteArrayData has already changed in incompatible ways with
Qt 4.x
Done-with: João Abecasis
Change-Id: I044e2a680317431777a098feec8839a90a3d3da3
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Fri, 6 Apr 2012 07:24:37 +0000 (09:24 +0200)]
Remove explicit checks for shared_null/empty
This eases porting to QArrayData and retains semantics. In append() and
prepend() a conditional was generalized so that no work is done if there
is nothing to add.
Done-with: Jędrzej Nowacki
Change-Id: Ib9e7bb572801b2434fa040cde2bf66dacf595f22
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
João Abecasis [Wed, 4 Apr 2012 13:36:09 +0000 (15:36 +0200)]
Make QByteArray and QString keep track of terminating null
In conceptual terms, this change increments the Data::alloc member by
one for all strings allocated and maintained by these classes. Instances
initialized with fromRawData retain 0 as the member value, so they are
treated as immutable.
This brings QByteArray and QString closer to QVector, making it possible
for them to reference and share the same data in memory, in the future.
It also brings them closer to QArrayData.
In practical terms all comparisons to the alloc member were changed to
take into account that it also tracks the terminating null character.
Aside from the increment in the alloc member, there should be no user
visible changes.
Change-Id: I618f49022a9b1845754500c8f8706c72a68b9c7d
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Mon, 16 Apr 2012 10:04:34 +0000 (12:04 +0200)]
Merge remote-tracking branch 'origin/master' into api_changes
Conflicts:
configure
src/corelib/io/qurl.cpp
src/gui/kernel/qwindow.cpp
src/tools/moc/generator.cpp
src/widgets/kernel/qwidget_qpa.cpp
src/widgets/styles/qstyle.h
src/widgets/widgets/qtabbar.cpp
tests/auto/corelib/codecs/utf8/tst_utf8.cpp
Change-Id: Ia457228d6f684ec8184e13e8fcc9d25857b1751e
Stephen Kelly [Sun, 15 Apr 2012 23:17:00 +0000 (01:17 +0200)]
Show the type and address of QObjects in debug output.
Change-Id: I9f44ab80a6fb763adc9cbaf47de8e1b97212332d
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Jørgen Lind [Mon, 16 Apr 2012 07:29:29 +0000 (09:29 +0200)]
Remove OpenKode OpenVG and qvfb platformplugins
Change-Id: Ic0bd8f68080bf139d81266d033cfd3c96a8d01f4
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Jian Liang [Sat, 14 Apr 2012 07:13:20 +0000 (15:13 +0800)]
Initialize reference count for QWindowsMsaaAccessible
Initaliize reference count value to 0 for QWindowsMsaaAccessible.
Change-Id: I15cadd7ced0240322240060f6dd5126cc8add338
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>