Commit Graph

6282 Commits

Author SHA1 Message Date
Lars Knoll
9bd0323551 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
2012-04-16 12:04:34 +02:00
Girish Ramakrishnan
41673c45dd qmenu.h includes private headers
qpa includes are considered private and should not be included
in public header files.

Change-Id: I26c744ec1d8ddef7b0c11c3d26b593be05f5aa54
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-16 07:31:37 +02:00
Girish Ramakrishnan
d037d25c3d api: fix constness of QOpenGLContext::getProcAddress
Should be const just like Qt4's QGLContext::getProcAddress.

Change-Id: I273467d5cf852cd49f48cec3f335c4ddac795363
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-04-16 04:21:49 +02:00
Sean Harmer
f609035fc1 Adding support for obtaining an OpenGL Core Profile context on Mac OSX
Change-Id: I08048ecee9b243b122ee93fce316e498aa7e2d51
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2012-04-16 03:10:22 +02:00
Pasi Matilainen
b3670edba4 Fix incorrect state of show/hide menu items in Mac application menu
The "Hide <app>", "Hide Others" and "Show All" menu items in Mac
application menu are always enabled, and do not get disabled correctly.
Fix by turning on autoenable for the menu in qt_menu.nib, and by
implementing menu item validation in QCocoaMenuLoader.

Task-number: QTBUG-10705
Change-Id: Ic181dfa26a71acad0067f5269c72517b50b17362
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
(cherry picked from commit 8f23a6be1069455e609e8bea7527726c24bebb36)
2012-04-16 03:10:22 +02:00
Jason McDonald
73db181e83 Put bug numbers on same line as insignificant_test markers.
This makes it easier to find insignificant tests that have no associated
bug report.

Change-Id: Ia71d59da062818d3860b0365d063e044705267fd
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-16 03:10:22 +02:00
Olivier Goffart
d2090e19a9 moc: Fix parsing of the empty preprocessor command
When encountering a null preprocessing directive (which is supposed to
be ignored), the moc preprocessor will leave a PP_NEWLINE token in the
token stream. That will confuse the parser.
The PP_NEWLINE token need to be ignored in the preprocessing phase.

Task-number: QTBUG-22717
Change-Id: I1e502a7e5bc6fa8ce2f82109ba7199b95747ff0a
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-16 00:54:19 +02:00
Thiago Macieira
f18a6c5fb5 Update com.trolltech -> org.qtproject in the bootstrapped tools
The tools will now generate the new org.qtproject annotations only,
matching the XML generator in the library. They accept both types of
annotations as input though -- and will generate a warning about the
older one.

This commit should be backported to Qt 4, so XML files can start to be
ported.

Task-number: QTBUG-23274
Change-Id: If298c342ab4774cbca1be1898a01af8b46e80446
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Lorn Potter <lorn.potter@nokia.com>
2012-04-16 00:08:13 +02:00
Thiago Macieira
e12c34b244 Introduce the new UnknownProperty and PropertyReadOnly errors
Those error codes have been standardised for years but we haven't used
them until now.

Task-number: QTBUG-23274
Change-Id: Iebc9ded949f363281a4d43fd9d29a284f2e2df08
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Lorn Potter <lorn.potter@nokia.com>
2012-04-16 00:07:49 +02:00
Thiago Macieira
e02a144a3c Finish cleaning up com.trolltech -> org.qtproject in QtDBus
Lots of uses of the annotations and error names, plus a bunch of local
unit test names (including one file that had to be renamed).

The meta object generator is updated to support both the old and new
names. That means some references to com.trolltech *must* remain in the
source code.

Task-number: QTBUG-23274
Change-Id: Icc38ae040232f07c437e7546ee744a4703f41726
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Lorn Potter <lorn.potter@nokia.com>
2012-04-16 00:07:39 +02:00
Thiago Macieira
65e75acd05 Update the error codes in QtDBus
Change the old com.trolltech ones to org.qtproject and introduce Use
the alternate domain name for the Qt Project because the dash
character is not valid in interface and error names.

Task-number: QTBUG-23274
Change-Id: Iac1699e70525d67f983c10560932acff6b2ecde6
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-16 00:07:25 +02:00
Giuseppe D'Angelo
51fecf80b7 Mark tst_qabstractitemmodel as insignificant after QHash randomization
The testChildrenLayoutsChanged fails randomly. This happens rarely,
f.i. wasn't spotted by CI when QHash randomization itself was merged;
but is indeed reproducible by running the test a few times in a row.

This is now blocking api_merges integration, and I have no idea
how to fix it.

This patch marks the test as insignificant for now (the bug
tracking this test failure is QTBUG-25325), and switches the failing
tests from QVERIFY(a == b) to a proper QCOMPARE (so that the
expected values do show up in the build logs).

Change-Id: I16f0e28bcbb06dbac2e7169f4676a19ccf626a92
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-15 21:00:52 +02:00
Holger Hans Peter Freyther
83fc52e3b4 widgets: Fix painting to a fully transparent top level widget
QWS used to have a line to change the composite mode from SourceOver
to Source for the top level widget. This wasn't used with QPA and I
removed the internal DontSetCompositionMode in qtbase. It turns out that
the QWS way is the most efficient one to initialize the background of
the widget.

The alternative is to have the QPlatformBackingStore::beginPaint
always clear the entire to be painted area and then paint the background
of the widget. The difference of painting each pixel once or twice is
noticable on embedded platforms and in the range of one to two fps.

Reproduce the issue with:
echo "QWidget {background: transparent}" > style.css
./examples/widgets/wiggly/wiggly -stylesheet style.css

Task-number: QTBUG-24526
Change-Id: Ica4c980bb3bf6eb87ddb5b510ac7493292d01543
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-15 06:14:00 +02:00
ABBAPOH
5cb2fbe088 Now QSplitter can have 0-pixel handle
Change-Id: Iad920ffcd5d7f4c01504d41d1740f130b7aa53dd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-15 03:53:07 +02:00
Konstantin Ritt
73b24486ed UCD-5.0: apply Corrigendum #6
http://unicode.org/versions/corrigendum6.html:
> in Unicode 5.0, the list of characters with the Bidi_Mirrored property
> was made consistent for brackets and quotation marks, in preparation for
> new constraints on bidi mirroring. However, after publication of
> Unicode 5.0.0 it was discovered that this change adversely affected
> several quotation mark characters in deployed data.

Task-number: QTBUG-25169
Change-Id: Id49caf401af2d5a1e6dbcc32b2f350aa20b7f901
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-15 03:53:07 +02:00
Samuel Rødal
d357b74493 Fixed broken logic in evdev input plugins.
If we do multiple reads we need to accumulate the total amount of bytes
read, instead of just taking the last read amount into account.

Change-Id: Iaa9b90c269f3ed9d09dae67452ca816d9db6217f
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-15 01:41:45 +02:00
Girish Ramakrishnan
a9a1bf3359 Fold qpaintdevice_qpa.cpp into qpaintdevice.cpp
Change-Id: I274508826b9be4eb00f67fccae5a18ecbdf41a36
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-15 01:39:54 +02:00
Girish Ramakrishnan
763de6965c Fix header inclusion guard
Change-Id: Icc537d5b52315b9563078da9fa69ddd67b567f76
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-15 01:39:33 +02:00
Girish Ramakrishnan
70cb9598af Fix tst_QMdiSubWindow::emittingOfSignals CI failures
The test fails consistently on the CI (but never fails on any
of the developer machines). This is possibly a timing issue.

Change-Id: Ie40d9c38c3128a93898b0e50bfde5a754bd2b7fb
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-04-14 23:27:20 +02:00
Girish Ramakrishnan
033eff02fe doc: QWindowSurface is dead
It goes by the name of QBackingStore these days.

Change-Id: Id46254e47ee0abf9e669862eec6c2205d9634368
Reviewed-by: Holger Freyther <holger+qt@freyther.de>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-14 19:46:32 +02:00
Casper van Donderen
48e092574a QDoc: add missing newline characters in qdoc -help.
Change-Id: Ibd50091693be393c6b479d6ca8927ba1ed578709
Reviewed-by: Martin Smith <martin.smith@nokia.com>
2012-04-14 19:46:09 +02:00
Martin Smith
aabd54b8bb qdoc: Fixed bugs causing invalid DITA XML
Fixed a bug in qdoc that caused too many end elements to be generated.
Also fixed some doc errors that caused invalid DITA to be generated.

Task nr: QTBUG-25302

Change-Id: Ifbbf457d28c51c2691a252888447739da7713bc9
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-04-14 19:46:00 +02:00
Giuseppe D'Angelo
c01eaa4382 QHash security fix (2/2): enable QHash random seed
Algorithmic complexity attacks against hash tables have been known
since 2003 (cf. [1, 2]), and they have been left unpatched for years
until the 2011 attacks [3] against many libraries /
(reference) implementations of programming languages.

This patch makes qHash use the QHash seed introduced in the
previous commits, thus truly randomizing bucketing in QHash.

[1] http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003.pdf
[2] http://perldoc.perl.org/perlsec.html#Algorithmic-Complexity-Attacks
[3] http://www.ocert.org/advisories/ocert-2011-003.html

Task-number: QTBUG-23529
Change-Id: Ibee9cf6aa820af5d777fcde478647665c728052a
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-14 17:59:26 +02:00
Giuseppe D'Angelo
c2293c897c QHash: remove optimization for QHash<int, T>
QHash employs an optimization for int/uints, squashing the hash
value and the key value inside an union. This obviously works
iff qHash(int k) = k. If the hash value gets salted, the hash
table is corrupted.

This patch removes that optimization by means of a #if 0,
so if further research finds out that we want those 4 bytes back
it's pretty simple to revert.

Change-Id: If273f0bf2ff007f4f2f7c46d2aab364a3b455cf1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-14 15:49:16 +02:00
Giuseppe D'Angelo
5e24d22af0 QHash: fix key() test
The key returned by QHash::key is an arbitrary one that maps to the
given value. The test instead relied on it being a specific one.

Change-Id: I090351797e8b52036d78160fd810518a11e8107d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-14 13:51:49 +02:00
Giuseppe D'Angelo
a8ceb73b93 qHash: qHash(T*) two arguments support
Change-Id: I1b78914fe9c6ee9251d68af1f2e95f1e3e0f1db5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-14 13:50:54 +02:00
Giuseppe D'Angelo
67d7f55db6 qHash: two arguments support for simple integer types (and QChar)
Change-Id: I24bed73422fb1d2e90cf3dd4e5375e249b3dcac4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-04-14 13:50:33 +02:00
Frederik Gladhorn
eb52d31ddf Update accessibility selections in QTextControl.
Forwardport from Qt 4.

Change-Id: Iae0c2792b64b8ec2736a9ff621cf7c313a394093
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
(cherry picked from commit d5649547d641b9c5af3c3f814caf8e1ab5bf9f47)
2012-04-14 13:40:03 +02:00
Girish Ramakrishnan
d80b00f320 Fix header inclusion guards
_QPA_ should only be used for qpa (plugin specific api) files.

Change-Id: I1fb6cd5973fcabec4c7e87eb6ccb048f825e2aad
Reviewed-by: Holger Freyther <holger+qt@freyther.de>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-14 06:44:57 +02:00
Thorbjørn Lindeijer
06a5904c8f Removed QXmlStreamReader::readElementText overload
The version without argument was kept for binary compatibility when
the configurable ReadElementTextBehaviour was introduced. It is now
dropped in favour of using a default argument value.

Change-Id: Ic08c41d5a5aad9f22df7fc37a2d53ffbc6df1fe9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-14 03:53:46 +02:00
Mark Brand
cf52540dfb QTBUG-1363: fix QSqlField.length() for ODBC
Applied Bill King's suggestion in QTBUG-1363. Columns of
hStmt must be accessed in order.

Verified using ODBC driver on SQL Server 2005 on Windows 7.

Added test for length of text field for MS SQL Server over ODBC.

Task-Id: QTBUG-1363
Change-Id: I6673dafe75e3ef394d41e439adb45096c1421068
Reviewed-by: Bill King <bill.king@nokia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2012-04-13 21:26:07 +02:00
Friedemann Kleint
13ebff81d0 Windows: Determine suitable font engine from application.
The Freetype engine currently works better for QML2, whereas
the native engine is better suited to the widgets.

Task-number: QTBUG-24205

Change-Id: I76de98c3e7c84a2d72542ea9860b8be1e67f7e04
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2012-04-13 18:15:26 +02:00
Friedemann Kleint
cdc221ae00 Fix warnings in manual tests.
- Constructor order.
- Unused variables.
- size_t -> int conversions.

Change-Id: Ic5b016f41d01a4d8153ae0900b607bf946523c1d
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-13 18:15:26 +02:00
Frederik Gladhorn
76f536d661 Use QPointer to store accessible object.
Itemview were not following the established pattern
of keeping the referenced object in a QPointer.
This made them a lot more crash prone.

Port of Qt 4 change.

Conflicts:

	src/plugins/accessible/widgets/itemviews.cpp
	src/plugins/accessible/widgets/itemviews.h

Change-Id: I210b112b9c3647b246fde2d6c69aba9ce8d25bd3
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
(cherry picked from commit f420ab2870d3c96e9678c24c64b4e26ec8a771bd)
2012-04-13 18:15:26 +02:00
Olivier Goffart
5a8c13a7d4 doc: Fix QObject::connect documentation
Unfortunately, qdoc is too simple to understand any pointer to member
function syntax.
(the ::* token is not even tokenized. And even if it was, it would be a
difficult way to hack that into the parser. (there is already an ugly
workaround for non-member pointer to function hat works by having '(*'
as a token,but the same hack is not possible for pointer to member function))
So I just put verbatim 'PointerToMemberFunction'

Also remove the obsolete mention that Qt::UniqueConnection is not supported
in that overload. It is now. (And it even contradicts the previous
paragraph)

Change-Id: I8fc9544808c9a462b0f11ccea406e2e33dee15b1
Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-04-13 18:15:26 +02:00
Gunnar Sletta
84caba25d8 Move QPainterPathPrivate to the private header files.
This was made inline for the sake of performance, but has in hindsight
proven to be not really worth it. It also prevents us from aligning
the internal datastructure of QPainterPath with that of QPolygonF
and the internal QVectorPath class which would make mapping
between the two inside QPainter a lot faster.

Making all this out-of-line now as discussed in the task
https://bugreports.qt-project.org/browse/QTBUG-19998
so we can adress this in a binary compatible fashion during
Qt 5.x

Change-Id: I61058171ed31f8a845fa45517248367c85ce52cd
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-13 18:15:26 +02:00
Holger Hans Peter Freyther
19524b7499 directfb: Integrate building into configure.
Add DirectFB buildsystem integration by adding a configure target
and adding it as subdirectory to the project file. The default is
to automatically build directfb. Update the Broadcom/9425 build.

Change-Id: I482f865cebd9d5cd4c98c184773f8534f92db9df
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-13 18:15:26 +02:00
Giuseppe D'Angelo
8427ff09ab QSharedPointer: hash autotest fix
The hash autotest is wrong: it assumed that the iterator on the hash
would reach the end after iterating on two elements with identical key.
But three elements were added to that hash, and the third one
can appear after the other two.

That code path is left for the map test only.

Change-Id: I51de7987e2b132b6caff7bb4bac6a57fb7fcb530
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-13 17:05:11 +02:00
Giuseppe D'Angelo
bcedd0e242 QSharedPointer: qHash two arguments support
Change-Id: I800de3fd9769e4829018360c25a8cf2ee2e2e08b
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-13 17:05:02 +02:00
Jan-Arve Saether
6fc44c5926 Minor cleanup of the header file.
Move inline implementations to iaccessible2.cpp.
Makes it easier to read and navigate the source code.

Change-Id: I8da44ba0d40395356f612ff6b3ce2a808105838a
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2012-04-13 15:50:27 +02:00
Shane Kearns
bfcfbc592c re-enable qabstractnetworkcache autotest
I have run the test 250 times in each of these configs with no
crashes observed, so assuming the instability has been fixed
by another change.
ubuntu 11.10 64 bit
ubuntu 10.04 32 bit
windows 7 msvc2010 64 bit (debug)
windows 7 msvc2010 32 bit (release)

Task-number: QTBUG-20686
Change-Id: I02bab165c263cf79684c7723eae1e278839b1e37
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-13 15:28:29 +02:00
Giuseppe D'Angelo
80c28fe3bd QRegularExpression: add more test data
Change-Id: I44d19f976ced7b073f66d0ea943fafea37940c48
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-13 15:25:19 +02:00
Friedemann Kleint
d318ea2655 Windows QPA plugin: Fix logging.
- Remove frequently occurring messages.
- Rename variable to QT_QPA_VERBOSE.

Change-Id: Id930e1422675355a9657edae6505be87aaec98a5
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-13 12:59:17 +02:00
Shane Kearns
1424702918 Add unit test for BackgroundRequestAttribute
Change-Id: I807953cac3d23825461f9ae860badbd148835330
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2012-04-13 12:44:45 +02:00
Sergio Ahumada
87548de2ef test: Don't mark tst_qscrollbar as insignificant on Mac OS X
Just XFAIL the failing test instead of ignoring the whole test.

Task-number: QTBUG-25272
Change-Id: Iedca9913032f13c6610b049a0313c9e4336216e0
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-13 10:46:34 +02:00
Konstantin Ritt
9fd2edb6da replace hardcoded values with a surrogate handling methods
Change-Id: Ib41e08d835f2e8ca2e32b4025c6f5a99840f2e27
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-13 10:44:28 +02:00
Jason McDonald
b317fe2a60 Merge the two overloads of QButtonGroup::addButton().
This change is source-compatible, but binary-incompatible.

Task-number: QTBUG-25101
Change-Id: If67aec2ca8dd54ad9315f6497c2dafbbbc0b775f
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-13 10:44:28 +02:00
Thorbjørn Lund Martsum
03dbba9a62 QLayoutItem - make controlTypes a virtual function.
Just implementing the ### Qt5 suggestion about making
controlTypes a virtual function.

Change-Id: Ic1db47fe488f089de965438e456e9b48e0b96f32
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-13 10:17:44 +02:00
Stephen Kelly
2f4b9b8e42 Fix unsigned comparison warning.
Change-Id: I8544f47177b68cf29ce9fbebb152ca73db6e219d
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
2012-04-13 08:34:06 +02:00
Aron Rosenberg
99be6a5c12 Fix compiling with XCode 4.3
XCode 4.3 moved the location of the SDK dir, so change the qmake
test to not use the old hardcoded location. Also change the test
to look for versions before 10.6 instead of later than 10.6 so 10.8+
gets detected correctly.

Change-Id: I1cb53a18c4b4f484d0d9de9c9d5e9641018f2502
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2012-04-13 08:34:04 +02:00