Commit Graph

10004 Commits

Author SHA1 Message Date
Giuseppe D'Angelo
60e2ec9db4 Workaround MSVC2008 build failure after switching to std::upper_bound
QPostEventList is kept sorted by priority; std::upper_bound
is used to insert a QPostEvent in the right place in the list.

Turns out that MSVC2008 is a bit too picky and tries to see if the
list is actually ordered. This causes a build failure as there is
no operator< defined between two QPostEvents (in fact,
an integer -- the priority -- is passed to std::upper_bound).

Work around this issue by defining operator< between two QPostEvents.

Change-Id: Ie3562dd0cc7253e25fc988b25d566d9d9e9fe62b
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2012-09-27 15:47:16 +02:00
Laszlo Papp
0e3b1f4b48 Do not reference to the QAbstractNativeEventFilter documentation
1) It is not strictly necessary since the method argument type is already
designed for clickable here. Thereby, it is just a duplication.

2) It is not done inside the removeNativeEventFilter, so it is not consistent
now.

3) Similarly, the following documentation in 4.8 did not have another explicit
reference to the documentation of the EventFilter typedef:
EventFilter QCoreApplication::setEventFilter ( EventFilter filter )

Change-Id: I45fd42a03b16fd173fca9d734a7771e804d577d8
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: David Faure <faure@kde.org>
2012-09-27 15:47:10 +02:00
Yuchen Deng
84c2236f04 CMake: Change suffix from "cxx" to "cpp" for generate sources
Cause Qt5's source file use "cpp" as suffix
and automoc use "cpp" as suffix too.
Keep it with same feel better.

Change-Id: Iba3f8ffb5c3dbf003a9e1aacf3706089c1b6765c
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-09-27 15:46:53 +02:00
Stephen Kelly
ff70c020bc Make CMake tests significant on Windows.
All bugs in the testing scripts are now fixed.

Task-number: QTBUG-27087
Change-Id: I764257a9bbee7efeb9265449f6fa6a15bdeba883
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-09-27 15:46:18 +02:00
Jens Bache-Wiig
9bdd7e2239 More consistent dock widget painting on Windows
Before we would draw dock widget handles on windows classic
and no handles on XP, Vista and Windows 8. This would make it
very hard to make a consistent look and feel across those styles.

I also added a workaround to avoid the redundant toolbar borders
when they are used outside of the toolbar areas.

Change-Id: Ib703453677fcac8d51b2180abe45527297af0a80
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2012-09-27 15:37:29 +02:00
Stephen Kelly
b80216c9f3 Fix typo: contais -> contains.
Change-Id: I718b0178ba03fcf15f2962cb6f917efb2da27a04
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2012-09-27 15:31:52 +02:00
J-P Nurmi
4a9bdbd8cc tst_QCommandLinkButton: cleanup whitespace
Change-Id: Ia1aab643f7b93b0532a38b27d7777fbcf5f489bc
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-09-27 15:21:41 +02:00
Jens Bache-Wiig
570ae40f57 Remove CDE and Motif styles from qtbase
It is time to clean up some of our legacy code. These styles have
not been actively maintained for a long time and I think it is safe
to say that they should no longer belong as part of the default
distribution of Qt. We dont support any platforms based on CDE with
our source packages.

Note that even if we are removing these styles from the default
distribution of Qt, applications that depend on them
will still be able to bundle the existing (and unmodified) styles
along with their own source code as we are not breaking compatibility.

Change-Id: I1709630c20ba8e8088cd01628628d86856db57a4
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2012-09-27 15:16:16 +02:00
J-P Nurmi
05978af3a1 tst_qcheckbox: remove duplicate code
Change-Id: Ic5d7694251e42a6d5ad7fea19137b71bc499ac94
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
2012-09-27 15:03:15 +02:00
Thomas McGuire
fda3fac1d2 Blackberry: Fix hardware button detection on the BB Dev Alpha
The format of the PPS object has changed, it is now prefixed with
[n], so be more leninent in parsing to support both formats.

Change-Id: I54eb1502a6231acf2dd121531539435c59d7d668
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-09-27 14:59:13 +02:00
David Gil
ad4c76d938 [Doc cleanup] Fix typos and style of QPushButton and QGroupBox
Fix some typos. Fix some sentences to make them clearer to understand.
Since both of them are widgets, there's no Qt4-centric info.

Change-Id: I5c3c4a23621505d47b00cf466e4daad9763c3076
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2012-09-27 14:59:13 +02:00
Kai Koehne
0189315c8c WindowsPlugin: Fix MinGW warnings
Fix warnings:

Change-Id: Ia68607f72087c0085e528fee0e6270b80692e389
warning: enumeration value 'SynthesizeMouseFromTouchEvents' not handled in switch
warning: suggest parentheses around assignment used as truth value
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-09-27 14:59:13 +02:00
Kai Koehne
e86e49f02e ItemViews: Fix MinGW compiler warning
Fix compiler 'warning: "_WIN32_IE" redefined'

Change-Id: I70ada35027a2bab0a6c4f84dd1384028d2afbcc9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-09-27 14:59:13 +02:00
J-P Nurmi
507b90ac86 QtWidgets auto tests: revise clipboard related tests
Use PlatformClipboard::isAvailable() and omit relevant test
cases when QT_NO_CLIPBOARD is defined.

Change-Id: I7e7b20a0a18f1a82987564f0e5e6c76d9207bc4b
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
2012-09-27 09:15:00 +02:00
J-P Nurmi
b0b7d9cf6b Revise QClipboard auto tests
Use PlatformClipboard::isAvailable() and fix build
when QT_NO_CLIPBOARD is defined.

Change-Id: I18c3af42fe39cf7618c2530723149848a10db985
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
2012-09-27 09:14:51 +02:00
Andreas Holzammer
13fe38ebb9 Check in arch detection for qmake failures
QMake can fail at arch detection, so remove
the silence here and fail when qmake does
not produce any Makefile.

Change-Id: I8826867952665a68f7205acf99ee6f1c9ead8513
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-27 06:07:31 +02:00
Andreas Holzammer
7ba31ff5a4 Fail when Windows CE SDK not found
Add failing when crosscompile for Windows CE
and no matching SDK is found.

Change-Id: I359e792fe46bab46729788666679a16cb94f340e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-27 06:07:29 +02:00
José Millán Soto
c39b6e3188 Return correct accessible name when a label has rich text
When a QLabel was displaying rich text, the raw html was being returned as
accessible name. Now the plain text is returned.

Task-number: QTBUG-27302
Change-Id: I169d5eff527a0aef810af11d7712a362148974a5
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2012-09-27 06:07:27 +02:00
Andy Shaw
f6bd02317d Fix XCode generator for qmake in Qt 5 after recent changes
Due to all the changes recently it broke in some places, this now
gets it working again.

Change-Id: I879ca5684435289a61d8db248f2c3f64f6866a60
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-27 06:07:26 +02:00
Andreas Holzammer
ec44a917f6 (WINCE)Add failure for font outline function
There is no outline function in Windows CE,
so add a failure to inform the user that, he
needs to switch the font rendering.

Change-Id: Ieceb68bec49a88c7f7eee99f1c62cf1701da6aec
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-27 06:07:24 +02:00
Kai Koehne
fb46b00eef Configure.exe: Fix auto-detection of ICU for MinGW
If one compiles ICU with MinGW the .lib files also have a lib prefix.
Take this into account when checking for ICU availability.

Upstream bug report: http://bugs.icu-project.org/trac/ticket/9603

Change-Id: Ia1ca49053b0ab41de45eec13799d94d5e934c42e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-09-27 06:07:23 +02:00
Kai Koehne
8e991d0461 configure.exe: Don't print warning about -c++11 option by default
Make sure that defaultTo() and therefore autoDetect() actually keep
the "auto" setting for MSVC. We check for this later on in
verifyConfiguration.

Change-Id: Iebf1ef415161a09bbc871baa31ff9dc56d54acac
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-09-27 06:07:22 +02:00
Teemu Katajisto
99bab571b4 QtPrintSupport: cleanup CUPS tmp files
Set fd so that it gets closed in QPdfPrintEnginePrivate::closePrintDevice()

Task-number: QTBUG-14724

Change-Id: Ic9c02c92b07ece92911d7bc3eac79689b4864253
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2012-09-27 06:07:20 +02:00
Andy Shaw
bad1384102 Bring subproject dependencies in line with Makefile generators
When generating the solution file it should extract the
dependencies from the pro file as this will bring it in
line with the Makefile generators.

Task-number: QTBUG-22561
Change-Id: I8d5b6607712f2c77c87ef093480e64b9633817d8
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-27 06:07:19 +02:00
Shawn Rutledge
e424354e85 xcb: consistently check xcb_get_extension_data for extension inits
This seems to fix the ability to run a Qt app across a forwarded X
connection (e.g.  ssh -X).

Change-Id: I2b7a26985cf11107e69b303337a5fbb369e38c9e
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
2012-09-27 06:07:17 +02:00
Andy Shaw
ae0ddb8c72 Implement the missing raster operations that were in Qt 3
Although not widely used, the raster operations from Qt 3 were useful
and some of them were already implemented, this brings the rest of them
back for those who need them.

Change-Id: Id538611eaaba9be3d39bf2dd33b6c532f5d4aba8
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-09-27 06:07:15 +02:00
J-P Nurmi
12e5464fa3 Auto tests: add PlatformClipboard::isAvailable()
Change-Id: Ie04060c2cae61ff8268644e9cd8001a1f5745f31
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
2012-09-27 06:07:13 +02:00
J-P Nurmi
f7ae890e24 tst_QDialog: fix Q_OS_WINCE & QT_NO_SIZEGRIP usage
Change-Id: I443381ef4f10492eeda0fc681c390e0cd4d4125e
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-09-27 06:07:11 +02:00
J-P Nurmi
12130ff65f tst_qsidebar: remove duplicate code
Change-Id: I8ee59022199fda7ea56891a2f924954cb4aefa42
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-09-27 06:07:10 +02:00
Pierre Rossi
aae8b745d2 Doc: update QMap's description following 5cb036851
Change-Id: I9dccb9f64578cf8c9da50524c5d4d1201ab488bd
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-09-27 02:40:19 +02:00
Jędrzej Nowacki
60d096ff6d QMetaType build fix with Q_NO_CURSOR and friends.
QMetaType has a way to "switch off" some types from the build.
QtMetaTypePrivate::TypeDefinition<T>::IsAvailable is defined as false
for all unaccessible types. Sadly that information was never used by
gui and widget handlers. The patch implements it.

Change-Id: Ie5835be4c88cfbbca8a4e9199e31ddfc20cae190
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Jing Bai <jing.bai@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-27 02:37:19 +02:00
Marcel Krems
b5b8fdb915 documentation fixes
Change-Id: If165933df41e518f5ba6065792676260fd2492b6
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2012-09-27 02:33:09 +02:00
J-P Nurmi
a86b3d76a5 tst_QMessageBox: fix Q_OS_MAC usage
Change-Id: I1a3c1c88956d85343e693588ca0522c4b7d62072
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-09-27 02:31:11 +02:00
Jerome Pasion
1933b711b6 HTML template: Updated copyright information from Nokia to Digia Plc
Change-Id: Ib4315aa0a7a92e3b36da855c2787b60cc3c332fe
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Sami Makkonen <sami.makkonen@digia.com>
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
2012-09-27 02:29:35 +02:00
Stephen Kelly
87f25de7c3 Fix typo in variable name.
Change-Id: I3bd59982605d242c95278bfeb71a6071ec222d08
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2012-09-27 02:29:09 +02:00
Thiago Macieira
90e207e4c7 Fix spelling mistake
Task-number: QTBUG-27355

Change-Id: I77ecc01e2a3ea1cac94e7c99c688cfd7cab5319b
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-09-27 02:28:39 +02:00
Stephen Kelly
c5c007b813 Rename a variable it -> childIt.
There is another iterator called it at the top of this function.

Change-Id: I8addf47d66f098c5d811eb54674525eddb4d4a1f
Reviewed-by: David Faure <faure@kde.org>
2012-09-27 02:27:47 +02:00
Marc Mutz
d85dd245f9 qtypetraits.h: add is_signed/is_unsigned/not_/not_c predicates
is_signed/is_unsigned check whether the type argument is signed
or unsigned, resp., and will be used in QFlags to select the
correct underlying integer type.

not_ is used in the implementation of is_signed

not_c is for completeness (version of not_ that takes a bool
instead of an integral_constant).

Change-Id: I77cc445e8c6cf3181336505c9c13478fba3e7890
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-27 02:25:25 +02:00
Marc Mutz
a19fd0f926 QFlags: fail for 64-bit enums
An int is not enough to hold all values of a 64-bit enum, so
don't allow to compile QFlags for such enums.

Change-Id: Ia291c4a5e2160dfd6d5a35e61a7f71ab571b9d9a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-27 02:25:15 +02:00
Simon Hausmann
ce1f994e9b Fix QScreen::orientation() not always being updated after changing the update orientation mask
The back-end might report screen orientation changes at any point and we
record it in screen.d->orientation. However QScreen::orientation()
returns the orientation filtered according to the mask.

Changing the mask sends a notification to the back-end, which might send
another update as a result of a possible subscription to system services
(accelerometer). However on platforms where no subscription is required, where
the platform plugin ignores the mask and always sends the latest orientation,
we should "simulate" the update by updating the filtered orientation according
to the new mask. The function is cheap to call as it won't emit any signals
unless the orientation actually changes.

This patch also adds missing flush() calls after handleScreenOrientationChange
calls in the tests to ensure that the (synthetic) window system events are
actually delivered to QScreen/QGuiApplication.

Change-Id: Iebdd050f947e658ff5bc388629aa4cb31ab497fe
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Laszlo Papp <lpapp@kde.org>
2012-09-26 19:55:00 +02:00
Simon Hausmann
9362474805 Fix initial window orientation with Qt on MeeGo 1.2 Harmattan
The window orientation changes are handled through a generic QPA plugin and
sends an initial window orientation change event on startup for the initial
orientation and subsequent updates when the device orientation changes.

Unfortunately the plugin was never loaded after the introduction of the new
plugin loading mechanism, because the factory key ("MeeGoIntegration") was
not provided to the plugin registry.

Change-Id: Ib7324561993abfbac1dccb0839aab0a8e870d231
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Reviewed-by: Laszlo Papp <lpapp@kde.org>
2012-09-26 19:54:34 +02:00
Simon Hausmann
c4e736cf9d Fix events being processed on application start
Commit ef2efafcc6 introduced a call to
QWindowSystemInterface::sendWindowSystemEvents() in
QGuiApplicationPrivate::init(), which in its implementation ends up calling
sendPostedEvents() before flushing and processing any pending (internal) window
system events.

This patch changes the call in init() to use
QWindowSystemInterface::flushWindowSystemEvents() instead, which is more gentle
in that regard.

The provided unit test verifies that no posted events are processed during the
execution of the QGuiApplication constructor while at the same time verifying
what the original changed tried to do: Allow a generic plugin to provide window
system specific defaults that are implemented using the event queue of
QWindowSystemInterface.

Task-number: QTBUG-26886

Change-Id: I129a907c00d947df60fe1a02efc67857580fce24
Reviewed-by: David Faure <faure@kde.org>
2012-09-26 19:54:19 +02:00
Sean Harmer
aad58ac87e XCB: Correctly report the created OpenGL context version and profile
This commit fixes the xcb qpa plugin such that it now correctly reports
the version and profile of the created OpenGL context in the
QOpenGLSurfaceFormat. To do this we have to create a temporary X window
so that we can make our new context current.

We also handle the buggy nVidia drivers which incorrectly report 0 for
the GL_CONTEXT_PROFILE_MASK query.

The reduced format is also copied back from qglx_findVisualInfo.

Change-Id: I6f34fe1c6130aebbb6b40c36df4acc216069d2b1
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-09-26 19:21:15 +02:00
Sean Harmer
61d853797b OpenGL: Fix QGLFormat::openGLVersionFlags() on OS X
OS X is limited to OpenGL 3.2 and we have to explicitly request a Core
profile context to get the full set of available versions as OS X does
not implement the Compatibility profile.

Change-Id: I8c2a6dc272416cbaf8fee44adbc4471417bf4510
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-09-26 19:20:58 +02:00
Joerg Bornemann
9e9911715c qmake: fix overescaped defines in vcxproj files
Task-number: QTBUG-27345

Change-Id: I00848d611163afb549191f41adff628622a899e0
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-26 19:12:31 +02:00
Stephen Kelly
ebf0ee34e7 Don't call parent() so often when processing a range.
Task-number: QTBUG-17732
Change-Id: Iefe5801f5941136f77001c532870e22f7fdd2c69
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2012-09-26 19:09:14 +02:00
Marc Mutz
9b439161ac QScrollBar: clean up wheelEvent() implementation
This code was moved from the general event() handler.
Remove comments and casting that were necessary there.

Task-number: QTBUG-27308
Reported-by: chenjiexin
Task-number: QTBUG-21534
Reported-by: Martin Koller
Change-Id: I14ef4c6363002032895f6840a7c68c1f5f665384
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-09-26 19:07:07 +02:00
Marc Mutz
aec5b76b51 [QTBUG-27308][QTBUG-21534] Don't mouse-wheel-scroll QScrollBar when disabled
This fixes a regression introduced in Qt 4 commit
e855b199319c932f2e9500235775f961bc32e41a.

The problem was that by handling the wheel event in event()
instead of wheelEvent(), we lack the guard clause in QWidget
that doesn't even call the handler if the widget is disabled,
and the code didn't handle this itself.

Fix by reimplementing wheelEvent() instead, which we can now
do because we can break BC.

This commit just moves the code. Another commit will clean
up the implementation of wheelEvent().

Task-number: QTBUG-27308
Reported-by: chenjiexin
Task-number: QTBUG-21534
Reported-by: Martin Koller
Change-Id: Ibe6b89a81fe889f839c205b859a1492b39a4ddc3
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-09-26 19:06:47 +02:00
aavit
d535c910e4 Fix compilation for Qt5: Avoid deprecated API
Change-Id: Iba11d33dd4d81ed1a460dd3237cd1bb9e1ace106
Reviewed-by: Jason Barron <jason.barron@digia.com>
2012-09-26 18:52:14 +02:00
aavit
9e9495b166 Compile fix: Avoid deprecated functions
Change-Id: Ia7592997640d51ed98fdfa1a5e59d35954a0ef61
Reviewed-by: Jason Barron <jason.barron@digia.com>
2012-09-26 18:51:52 +02:00