profile/ivi/qtbase.git
11 years agoCocoa: application menu items sometimes get duplicated
Richard Moe Gustavsen [Wed, 17 Oct 2012 13:14:03 +0000 (15:14 +0200)]
Cocoa: application menu items sometimes get duplicated

Under some circumstances, the same menu item appears several times
in the application menu in the menu bar. This can be seen in Qt creator,
where "About Qt Creator" appears twize.

The reason is that QCocoaMenu::syncMenuItem does not take into account
that merged items cannot be found in the QCocoaMenu that owns the
menuItem, but rather inside the application menu. And because of this,
it fails cleaning up the old item when it changes from e.g
TextHeuristicRole to ApplicationRole.

This patch will fix this.

Change-Id: Ia84f552d1788d80d778c7dded3393412b9d2d8cb
Reviewed-by: Chris Meyer <cmeyer1969@gmail.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoqtAddModule(): define PRE_TARGETDEPS for static modules
J-P Nurmi [Tue, 13 Nov 2012 13:17:32 +0000 (14:17 +0100)]
qtAddModule(): define PRE_TARGETDEPS for static modules

This ensures that for example the platform plugins get properly
re-linked when the static platform-support lib changes.

Change-Id: Iad493d4de30d6f6977f80aa56d0b27d05e9e3770
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoSend enter to the child at the position of the QEnterEvent.
Friedemann Kleint [Thu, 8 Nov 2012 11:45:08 +0000 (12:45 +0100)]
Send enter to the child at the position of the QEnterEvent.

This was apparently done so in each of the widget_<platform>.cpp
in Qt 4.8. This then causes the cursor to be updated in
dispatchEnterLeave() on Windows and Linux.

Task-number: QTBUG-27871
Task-number: QTBUG-27585
Task-number: QTBUG-26424
Change-Id: Idf14cd96ccb36f7c2607853ed8b0024c36a5413c
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
11 years agoAdded expose and configure event compression in xcb platform plugin.
Samuel Rødal [Mon, 12 Nov 2012 16:02:17 +0000 (17:02 +0100)]
Added expose and configure event compression in xcb platform plugin.

We had this in 4.x to prevend swamping the event queue and causing a lot
of needless processing of stale events.

Task-number: QTBUG-27734
Change-Id: I020fe44885569f5a68c07220fcb44bea3e138089
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoWindows: Fixed handling of key events containing ctrl modifier
Oliver Wolff [Tue, 13 Nov 2012 06:50:43 +0000 (07:50 +0100)]
Windows: Fixed handling of key events containing ctrl modifier

QKeyEvent::key() returned the wrong value if the ctrl modifier was used
in that key event. That was due to the fact that ToUnicode might not
return the correct code for these events/keyboard states. While it works
for alt+shift+= (us layout) and gives '+' as unicode value it just
claims that it cannot translate the given state for ctrl+shift+=. So if
the control modifier is used and ToUnicode return 0 toKeyOrUnicode
should try again without the control modifier.

Task-number: QTBUG-10781

Change-Id: I5eb9c200701b4c98a8089fc0ab1ebaa385dbeea8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoCocoa: QPrintDialog does not show/closes down immediatly
Richard Moe Gustavsen [Thu, 25 Oct 2012 13:28:07 +0000 (15:28 +0200)]
Cocoa: QPrintDialog does not show/closes down immediatly

This happends if an event loop recursion ends before
the native print dialog gets executed (in the same scope).

The reason is that the event dispatcher gets interrupted as the
first recursion ends. And (because of the big difference between
how AppKit implements modal windows compared to Qt) this sets a flag
in the dispatcher that gets handled on the next callback to
QCocoaEventDispatcher::processPostedEvents. This will tell
the dispatcher to break out of the current modal session.
But since it cannot detect that an alien (native) session is now
running, it closes down that session by accident instead.

While code can be written in the event dispatcher to detect this
problem, it ends up more clean to just work around the problem
from the native dialogs instead. This to avoid making the
dispatcher more complex than it already is. Native dialogs is
a bit messy already, and the work-arounds needed should be
isolated inside those components, and not inside the dispatcher.

Change-Id: Ibfde9db4c98401562e7628da1db18d6bed619245
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoDon't link QtGui to winspool.dll
Konstantin Ritt [Sat, 10 Nov 2012 09:07:36 +0000 (11:07 +0200)]
Don't link QtGui to winspool.dll

The printer support API has moved to printsupport module/plugins

Change-Id: I6fdc6c08e600d0f7cc8d79bef808227b54880904
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoRefactor create_cmake to re-use the computed stem.
Stephen Kelly [Sat, 10 Nov 2012 16:02:53 +0000 (17:02 +0100)]
Refactor create_cmake to re-use the computed stem.

Change-Id: I3b277316b1befbb57613b465fc5bbedc6b2305f7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
11 years agocomplain about empty $$TARGET
Oswald Buddenhagen [Fri, 9 Nov 2012 18:04:28 +0000 (19:04 +0100)]
complain about empty $$TARGET

this should be fatal, but so should be a lot of other conditions.

Change-Id: I0c2c0bb9590ea1e4d0eae76e29eda34915914217
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agodefine the module rpath in the installed module pri file
Oswald Buddenhagen [Wed, 7 Nov 2012 13:43:09 +0000 (14:43 +0100)]
define the module rpath in the installed module pri file

the fallback path wouldn't account for a sysroot. as there is no clean
way to implement that, rather remove the fallback alltogether and make
the rpath a mandatory part of modules.

Change-Id: I6f2bd6e36889be2f61e17a579174380aa3c6622d
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoFix zero-duration animations running Backwards.
Andreas Aardal Hanssen [Mon, 12 Nov 2012 20:10:21 +0000 (21:10 +0100)]
Fix zero-duration animations running Backwards.

If you set the duration of any variant or property animation to 0,
its progress will be stuck at 1 (0..1), and its "end" value set on
the target object, after start() has been called. If you change the
direction of the animation to QAbstractAnimation::Backward, you
would expect the progress to be 0 after start. Instead it's still
1; the code seems to assume that if the duration is 0, the
progress must be 1 always.

The fix is that if the duration is 0, the direction is checked to
determine whether progress should be 0 (Backward) or 1 (Forward).

Task-number: QTBUG-27969
Change-Id: Ibeca084bbbce41df1dca7b7d96c15b6b54394996
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Thierry Bastian <thierryb@filewave.com>
Reviewed-by: Magne Zachrisen <mazachri@cisco.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
11 years agoClean up styles.qdoc.
Mitch Curtis [Fri, 9 Nov 2012 18:02:34 +0000 (19:02 +0100)]
Clean up styles.qdoc.

Corrected all spelling and grammar mistakes and formatted values
properly.

Change-Id: Iecfa0126e532ab08f8b6c307b5c00dc046e77a2a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agotests: Mark tst_qfilesystemmodel as insignificant on Mac
Samuli Piippo [Thu, 8 Nov 2012 08:42:13 +0000 (10:42 +0200)]
tests: Mark tst_qfilesystemmodel as insignificant on Mac

Task-number: QTBUG-27890

Change-Id: I8af9f019c00d38551ce04b4cdb4bb895a61a50c5
Reviewed-by: Simo Fält <simo.falt@digia.com>
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
11 years agoCocoa: fix window focus lost when opening combobox
Richard Moe Gustavsen [Tue, 23 Oct 2012 09:33:47 +0000 (11:33 +0200)]
Cocoa: fix window focus lost when opening combobox

In cocoa, saying that a panel accepts key events, will make it receive
key events, but also show it as the active window on screen. The former
we dont really have to care about, since Qt will take care of forwarding
events to the popup for us anyway, even when they target another window.
So the only reason to actually let a panel become key window, is when
we want it to become active. And for popups, we only want this to happend
for Tool windows.

Change-Id: Ic4e5058307c514cbe30174d2a2d4ca0f41c8f71f
QTBUG: 26598
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
11 years agoQWidget: Move break statement to the right place
Gabriel de Dietrich [Mon, 12 Nov 2012 13:46:42 +0000 (14:46 +0100)]
QWidget: Move break statement to the right place

An InputMethodQuery event should NOT be transformed into a PolishRequest
if the receiving widget has no WA_InputMethodEnabled attribute set.

Change-Id: I0727c600f1eb68087cb9fbc25f6458aca5417693
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoAvoid duplicate entries in QGenericUnixTheme::themeNames()
J-P Nurmi [Mon, 12 Nov 2012 10:50:07 +0000 (11:50 +0100)]
Avoid duplicate entries in QGenericUnixTheme::themeNames()

Change-Id: I6dc258274dc6614f56f306c30c95fe20c14fdf89
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agotest: Remove Q_WS_X11 from tst_QTextScriptEngine
Konstantin Ritt [Fri, 26 Oct 2012 12:54:10 +0000 (15:54 +0300)]
test: Remove Q_WS_X11 from tst_QTextScriptEngine

remove private->public hack, make it build on all platforms;
replace homebrew testing code with QtTest based one

Change-Id: Iaed93fd21938620e58ae90189456df1b8061f2f5
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
11 years agoevdevtouch: also use BTN_TOUCH with value == 0 to detect TouchPointReleased
Jon Trulson [Fri, 2 Nov 2012 21:47:19 +0000 (15:47 -0600)]
evdevtouch: also use BTN_TOUCH with value == 0 to detect TouchPointReleased

The current code seems to rely on an event, ABS_MT_TOUCH_MAJOR with a
value of 0 to detect a touch release.  Not all devices[0] emit this, and
the spec[1] does not specify this behavior.

So, add a check for a BTN_TOUCH with a value of 0 to also indicate
Qt::TouchPointReleased.

[0]
http://www.chalk-elec.com/?page_id=1280#!/~/product/category=3094861&id=14647624
using hid_ntrig kernel module.

[1] https://www.kernel.org/doc/Documentation/input/multi-touch-protocol.txt

Change-Id: I4fc8ff404cad2083a57ff18737c5ea2b06d8ceac
Reviewed-by: Robert Daniels <robert.daniels@vantagecontrols.com>
Reviewed-by: Laszlo Agocs <lagocs83@gmail.com>
11 years agoFix a warning on compilers not supporting constexpr.
Jędrzej Nowacki [Wed, 7 Nov 2012 10:23:09 +0000 (11:23 +0100)]
Fix a warning on compilers not supporting constexpr.

Macros should call QSKIP instead of creating a semi-empty function body.

Change-Id: I389701f618fe9bf0a40aa26f161620389a80e407
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
11 years agoadd QLinkedList to bootstrap lib
Oswald Buddenhagen [Wed, 31 Oct 2012 10:32:24 +0000 (11:32 +0100)]
add QLinkedList to bootstrap lib

lrelease will need it.

Change-Id: I929d8eeb4c2d342aaf780a4c72283deb051a7bec
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoAdd -archdatadir and change some of the default install dirs in Qt 5.
Thiago Macieira [Mon, 24 Sep 2012 12:30:45 +0000 (14:30 +0200)]
Add -archdatadir and change some of the default install dirs in Qt 5.

Architecture-depedent Qt data defaults now to something under
-archdatadir. Architecture-dependent data is everything that contains
machine code (e.g., plugins) as well as anything that hardcodes
build-specific data, like qconfig.pri and qmodule.pri. That is:

  QML imports:    $archdatadir/imports     (includes plugins)
  Qt plugins:     $archdatadir/plugins     (machine code)
  Mkspecs:        $archdatadir/mkspecs     (build-specific)

Architecture-independent Qt data defaults now to something under
-datadir. This option existed in Qt 4, but did not differentiate between
arch-dependent and independent. Following Autoconf's lead, --datadir is
the *independent* data root.

  translations:   $datadir/translations    (.qm files are arch-independent)
  docs:           $datadir/doc

By default, both new options are equal to the Qt install prefix.

(Strictly speaking, for complete Autoconf compatibility, we'd need a
--datarootdir=$prefix/share, --datadir=$datarootdir/qt5 and
--docdir=$datarootdir/doc/qt5, but that's just nitpicking and
unnecessary)

Change-Id: I39c886a6a2d2d2c0b11923c50974179e21f2af76
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoAdd a QEnterEvent containing the mouse position.
Friedemann Kleint [Wed, 7 Nov 2012 15:23:32 +0000 (16:23 +0100)]
Add a QEnterEvent containing the mouse position.

Enter handling requires knowledge of the mouse
position. Extend the enter handling of
QWindowSystemInterface to receive the position
(implemented for Windows, XCB and Mac), passing it
on to QEnterEvent. Dispatch QEnterEvent from
widgets code.

Change-Id: I49c07d2b1f46310c877017dd55d4cd7d636bdbce
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoAdd warning about non-API in Qt5CTestMacros.
Stephen Kelly [Sat, 10 Nov 2012 15:20:48 +0000 (16:20 +0100)]
Add warning about non-API in Qt5CTestMacros.

The macros are only for tests in Qt itself, and will be changed without
restriction.

Change-Id: I4cf5b8559be510f01d0122c59492c5ea3e71c8d3
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
11 years agoRefactor and cleanup QGtk(2)Painter
J-P Nurmi [Wed, 7 Nov 2012 11:54:53 +0000 (12:54 +0100)]
Refactor and cleanup QGtk(2)Painter

Move all the GTK2 specific function resolving and painting routines
to QGtk2Painter. A GTK3 specific and Cairo based QGtk3Painter will
be introduced later, and it will be QGtkStyle's job to choose
between the two.

Change-Id: I2c8a85de0cf8187468798cf5faff0006da4b9623
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
11 years agoAdd the GCC 4.8 C++11 feature list
Thiago Macieira [Fri, 9 Nov 2012 12:08:35 +0000 (13:08 +0100)]
Add the GCC 4.8 C++11 feature list

This list is current at the time of writing. Since GCC 4.8 hasn't
finished development, it may still change before the final 4.8.0
release.

Change-Id: Ie4a6809bc6680cafcdd0c7a6a2fd6f8be790c8d2
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
11 years agoInsert the Qt major version (5) in the library names
Thiago Macieira [Tue, 16 Oct 2012 02:45:16 +0000 (19:45 -0700)]
Insert the Qt major version (5) in the library names

As discussed on the mailing list, insert the Qt major library version in
the library name, so even the development files can be co-installed with
Qt 4.

Discussed-on: http://lists.qt-project.org/pipermail/development/2012-September/006545.html
Discussed-on: http://lists.qt-project.org/pipermail/development/2012-September/006551.html
Change-Id: If0be11ebf9454a9fb6d96cda161790dfd53c00f5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agodelete -prefix-install configure option
Oswald Buddenhagen [Wed, 7 Nov 2012 13:29:26 +0000 (14:29 +0100)]
delete -prefix-install configure option

the only thing -no-prefix-install did was changing the install path
defaults on mac. and the result didn't work particularly well.

Change-Id: Iadd0f4b494b6920b595e184f858ef810f5222b0c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
11 years agoQTBF: Remove StartOfItem/EndOfItem enum values
Konstantin Ritt [Sun, 28 Oct 2012 19:13:02 +0000 (21:13 +0200)]
QTBF: Remove StartOfItem/EndOfItem enum values

Since the behavior of boundaryReasons() method has been changed a lot,
remove the StartWord/EndWord enum values to force the affected code be revised;
StartOfItem/EndOfItem must be used instead.

Change-Id: I3d1d97d2dbe9680d290646d8c3adb5558ca26bd7
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoAdded private header warnings in src/gui/kernel
Samuel Rødal [Fri, 9 Nov 2012 12:14:33 +0000 (13:14 +0100)]
Added private header warnings in src/gui/kernel

Change-Id: If3ad9d1e18543639f9e6abb8899b72772bc70c83
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoAdded motion event compression in xcb plugin.
Samuel Rødal [Fri, 9 Nov 2012 17:16:04 +0000 (18:16 +0100)]
Added motion event compression in xcb plugin.

We did this in 4.8 too, to avoid swamping the event queue with stale
motion events. If you're interested in fine grained motion events you
just need to have a responsive main loop. Most applications are only
interested in the latest mouse position in any case.

Fixes performance issues in QML where an onMouseXChanged or
onMouseYChanged in a mouse area does directly or indirectly runs some
heavy computations, slowing rendering to a halt since the main loop is
constantly busy.

Change-Id: I169c96458db4d57b689d6c2c915765b11c35e123
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
11 years agoMac: More accurate focus mask
Gabriel de Dietrich [Fri, 9 Nov 2012 14:41:08 +0000 (15:41 +0100)]
Mac: More accurate focus mask

Small artifacts were visible when tabing in and out QLineEdits several times.

Change-Id: I56334e0534c67c94d357e3517d2470adcc1d8a1c
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
11 years agoFix GIF image decoding: do not zero transparent pixels
aavit [Wed, 7 Nov 2012 14:19:20 +0000 (15:19 +0100)]
Fix GIF image decoding: do not zero transparent pixels

For the special transparent color index, the decoder would skip
writing anything out (thus leaving the pixels at 0 rgba value).
Although correct for later frames, for the initial frame this would
loose the color information for such pixels (which one otherwise
could have made visible e.g. by converting then image to an
alpha-less image format).

Change-Id: I316cefce8f21797feedebfbf98296ad84eaa4b99
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
(cherry picked from qt/c309d424f45dc0e7b62fbbbabf20dbfe355f48a7)
Reviewed-by: aavit <eirik.aavitsland@digia.com>
11 years agoQt5 updates to the QPainter lancelot autotest
aavit [Mon, 29 Oct 2012 09:34:20 +0000 (10:34 +0100)]
Qt5 updates to the QPainter lancelot autotest

a) Use the new Qt5 OpenGL API for testing of GL painting
b) Simplify: Use the higher-level QBaselineTest API instead
of the low-level baselineprotocol API.

Change-Id: Ib5f47f6fe68837dfdc8dc3a74638c5cb0b724614
Reviewed-by: aavit <eirik.aavitsland@digia.com>
11 years agoFix warnings about unused variables in stylehelper.
Friedemann Kleint [Wed, 7 Nov 2012 13:56:59 +0000 (14:56 +0100)]
Fix warnings about unused variables in stylehelper.

Change-Id: I6f18fff5277a95301a525209b7d45f0d4f182b97
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
11 years agoQNX: Don't crash on application exit.
Sergio Martins [Fri, 9 Nov 2012 08:25:48 +0000 (08:25 +0000)]
QNX: Don't crash on application exit.

Variable should be initialized in ctor so it doesn't crash
when deleting it.

Crashes with QNX SDP 6.5

Change-Id: I462f1e374f0588f29fe6fc14a957672467c9b2f7
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
11 years agotest: fix tst_QLocale::macDefaultLocale
Liang Qi [Fri, 9 Nov 2012 04:11:34 +0000 (05:11 +0100)]
test: fix tst_QLocale::macDefaultLocale

1. There is a behaviour change for CFDateFormatterGetFormat() between
10.6 and later, QLocale::dateFormat(QLocale::LongFormat) will return
"MMMM d, yyyy" for 10.6 and "MMMM d, y" for 10.7, 10.8
2. Add a comment for toCurrencyString() test, need another system
settings

Task-number: QTBUG-27790
Change-Id: I4fe684d6e0c1d4a140e3b1f1ef395b7fdad030b4
Reviewed-by: Samuli Piippo <samuli.piippo@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
11 years agoSupport native event filter for Mac OS X
Liang Qi [Thu, 18 Oct 2012 09:15:25 +0000 (11:15 +0200)]
Support native event filter for Mac OS X

Ported from Qt 4 implementation, updated with
QAbstractEventDispatcher::filterNativeEvent() call.

Tested with an example.

Change-Id: I3271f8a565d06d80b7b48ba81728bcdb7b1c32e3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agofix binding of bool type in mysql driver
Mark Brand [Tue, 30 Oct 2012 09:51:25 +0000 (10:51 +0100)]
fix binding of bool type in mysql driver

MYSQL_TYPE_TINY should be used for binding bool input value.
MYSQL_TYPE_LONG might be too big for bool, resulting in bools being
saved in the database as int 127. The problem was not specific to
the vendor's BOOL column type.

http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html
http://dev.mysql.com/doc/refman/5.0/en/c-api-prepared-statement-type-codes.html

Added generic autotest to make sure that binding bool works. All
drivers should pass this test.

Task-number: QTBUG-27763
Change-Id: I4e69f8e3b32fffb702ec9fa8a80ff5c50dea954b
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
11 years agoSave grayscale palleted images to grayscale png
Sergey Borovkov [Sat, 27 Oct 2012 14:17:05 +0000 (18:17 +0400)]
Save grayscale palleted images to grayscale png

While Qt does not support grayscale images explicitly it makes sense to
save palleted images to grayscale png when possible for better
compression and compatibility as opening and saving grayscale images now
converts them to palleted

Change-Id: Iab7c5a5a9d24b9352f5a7bafe04824a97d2463d9
Reviewed-by: aavit <eirik.aavitsland@digia.com>
11 years agoSimplify and speed up OpenGL framebuffer grabbing.
aavit [Tue, 6 Nov 2012 08:26:09 +0000 (09:26 +0100)]
Simplify and speed up OpenGL framebuffer grabbing.

If possible, let glReadPixels() itself provide the pixel format
that QImage requires, so we can drop the pixel manipulation afterwards.

Change-Id: I6c9226003c15d49548fa00696f31d0b2e26c0783
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoQGtkStyle: GTK3 compatible gtk_adjustment_new()
J-P Nurmi [Thu, 8 Nov 2012 18:04:32 +0000 (19:04 +0100)]
QGtkStyle: GTK3 compatible gtk_adjustment_new()

In GTK3, gtk_adjustment_new() returns GtkAdjustment* and there's no
such thing as GtkObject anymore. Just typedef the function pointer
appropriately and as a bonus we'll save ourselves from the casts. ;)

Change-Id: I2f17ab10b835dd0bffabb86345488e84aea51f3c
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
11 years agoReport threaded rendering support in xcb when using event reader thread.
Samuel Rødal [Wed, 7 Nov 2012 15:20:20 +0000 (16:20 +0100)]
Report threaded rendering support in xcb when using event reader thread.

Threaded rendering had issues due to bugs in xcb before
xcb_poll_for_queued_event() was added. Now xcb_poll_for_queued_event()
is resolved at runtime and if present xcb events are received on a
separate thread.

Change-Id: I05420c8c9f9a20f41ce0f86ed255bc8b295e7fe5
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
11 years agoReturn appropriate currentContext() in platform's makeCurrent().
Samuel Rødal [Mon, 5 Nov 2012 14:55:49 +0000 (15:55 +0100)]
Return appropriate currentContext() in platform's makeCurrent().

This way the platform plugin can use convenience classes such as
QOpenGLFramebufferObject in the makeCurrent() implementation.

Change-Id: I1fb5f6b8ec094ff39454adbeca9eb0d1a8f43ee6
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
11 years agoQFutureInterface: Remove unused function
Orgad Shaneh [Thu, 8 Nov 2012 14:11:00 +0000 (16:11 +0200)]
QFutureInterface: Remove unused function

Following 731ba8ed08f80644b403556638c7f6229e678ebe this function is
not used anymore

Change-Id: Id908931b4b21c825bd80a4f03790630818c73c07
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
11 years agoCleanup old signal handler mechanisms
Rafael Roquetto [Thu, 8 Nov 2012 13:11:40 +0000 (11:11 -0200)]
Cleanup old signal handler mechanisms

Remove watchUnixSignal(), unixSignal() and associated code. These are relics
which were being used by QWS to detect virtual console switching. Currently
they are not being used at all. The recommended way to watch for Unix signals
in Qt is http://doc-snapshot.qt-project.org/5.0/unix-signals.html.

Change-Id: Id34207cb8853442302a45b2816356da0f973ebb1
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
11 years agotest: Mark tst_QLocale::macDefaultLocale as XFAIL
Samuli Piippo [Thu, 8 Nov 2012 10:51:41 +0000 (12:51 +0200)]
test: Mark tst_QLocale::macDefaultLocale as XFAIL

Task-number: QTBUG-27790
Change-Id: Ida33d9579df4ef35d0323546f4d89596e159cb8e
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
11 years agoQAbstractProxyModel: fix sibling() reimplementation
Mark Brand [Thu, 8 Nov 2012 00:54:13 +0000 (01:54 +0100)]
QAbstractProxyModel: fix sibling() reimplementation

The previously missing mapFromSource() sets the proxy model in the
returned index. Otherwise, the returned index refers incorrectly to
the source model.

Follow-up to 9dfba89c28bbff3316cb7aed6c07f90c0f2d5a22 and
e5ac4fb9b236c782e3ed6f15044eb9956246931a
Change-Id: I25cd7baa4a93284ab14ede988ac524971870794e
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
11 years agoImplement "-device" option for configure.exe
Rafael Roquetto [Wed, 17 Oct 2012 20:06:41 +0000 (17:06 -0300)]
Implement "-device" option for configure.exe

This aims to mimics the behavior of the -device option already present on the
configure shell script

Change-Id: Ia28306f5ed74b9cfa812aa3efa6b79d0bafa4994
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoadd (parts of) QtXml to the bootstrap lib
Oswald Buddenhagen [Wed, 31 Oct 2012 10:32:09 +0000 (11:32 +0100)]
add (parts of) QtXml to the bootstrap lib

we bootstrap it anyway (as qdoc already needed it). now lrelease will
also need it.

Change-Id: I5117634448368e18d6cf5540d678e039a66c7260
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agocompile bootstrap lib with QT_NO_TRANSLATION
Oswald Buddenhagen [Mon, 29 Oct 2012 16:27:05 +0000 (17:27 +0100)]
compile bootstrap lib with QT_NO_TRANSLATION

Change-Id: Ie0d65d69dd924f0815e1214adc4598e0e1b3b8f4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoGenerate a proper static QtBootstrap module
Oswald Buddenhagen [Mon, 29 Oct 2012 16:25:30 +0000 (17:25 +0100)]
Generate a proper static QtBootstrap module

Making a properly installed libQtBootstrap simplifies
our tools build process a little and in addition allows
other comand line tools to use the bootstrap lib and
link against it.

Initial-version-by: Lars Knoll
Change-Id: Iddf4568a5505bc24898ec1abf7e7022e19f0a454
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agomake it possible to put removals into modules' .CONFIG and .DEFINES
Oswald Buddenhagen [Tue, 6 Nov 2012 15:22:20 +0000 (16:22 +0100)]
make it possible to put removals into modules' .CONFIG and .DEFINES

the respective flags/defines need to be prefixed with a minus sign.

Change-Id: I8a3a46254f90d4ecdbd692a0eca635038691d078
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agofix QMAKE_{,X}SPEC when a qt.conf containing [Paths] is present
Oswald Buddenhagen [Wed, 7 Nov 2012 10:55:17 +0000 (11:55 +0100)]
fix QMAKE_{,X}SPEC when a qt.conf containing [Paths] is present

unlike for the paths which fall back to defaults based on the Prefix,
the specs must fall back to the values from qconfig.cpp.

Change-Id: I5f110621921cf278f2c3938a4ec5eb30a78c8502
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoadd support for per-module QT_BUILD_PARTS overrides
Oswald Buddenhagen [Thu, 8 Nov 2012 10:29:12 +0000 (11:29 +0100)]
add support for per-module QT_BUILD_PARTS overrides

this makes it possible to configure with -nomake tests, but have, e.g.,
QTSVG_BUILD_PARTS="libs tools examples tests" to enable tests
specifically in the svg module.

Change-Id: I925ab955ac32ec3e311c2a852a51b098fd4e0ea3
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoWindows: Add missing support for X-buttons.
Miikka Heikkinen [Wed, 7 Nov 2012 13:51:08 +0000 (15:51 +0200)]
Windows: Add missing support for X-buttons.

Autocapture and framestrut event generation didn't handle X-buttons.

Task-number: QTBUG-27874
Change-Id: Icfe9dfb9abc9cd506e1875f2b2b4cbc644cff6cd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
11 years agoAccessibility Linux: Do not depend on external libatspi2
Frederik Gladhorn [Thu, 1 Nov 2012 16:50:56 +0000 (17:50 +0100)]
Accessibility Linux: Do not depend on external libatspi2

This has (and still does) caused lots of grief since
it means accessibility was often unintendedly not built.

Instead copy the lib-at-spi-2 header file needed for the
type enum and build it by default again.

Change-Id: I1ba26f20edff1aeb444c96a37928f36230ac7576
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
11 years agoRelax QOpenGLContext::swapBuffers() conditions.
Samuel Rødal [Thu, 8 Nov 2012 12:32:07 +0000 (13:32 +0100)]
Relax QOpenGLContext::swapBuffers() conditions.

There's no need to force the context to be current and the correct FBO
to be bound when swapBuffers() is called, as this can easily be handled
on a per-platform basis.

Change-Id: I7af5a082d6a2b03dfa2cdc874c27617139a781a9
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
11 years agoAccessibility: Make accessibleInterface() in event virtual.
Frederik Gladhorn [Sun, 4 Nov 2012 09:32:41 +0000 (10:32 +0100)]
Accessibility: Make accessibleInterface() in event virtual.

This function can then be used by webkit in a different way.

Change-Id: I2e4c0570b5fc446114f63b3dc43e3c4505bcad79
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoAccessibility: Warn if an event cannot create an interface for some reason.
Frederik Gladhorn [Sun, 4 Nov 2012 09:32:27 +0000 (10:32 +0100)]
Accessibility: Warn if an event cannot create an interface for some reason.

Change-Id: I87d0290286243f8ead114e238798c9a7b882d978
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoRemove qSort usages from SSL code
Giuseppe D'Angelo [Thu, 1 Nov 2012 23:04:13 +0000 (00:04 +0100)]
Remove qSort usages from SSL code

Change-Id: Ie080cd3d0a6ac37fad625759946a71134c989c83
Reviewed-by: Richard J. Moore <rich@kde.org>
11 years agoRemove qSort usages from QDnsLookup
Giuseppe D'Angelo [Thu, 1 Nov 2012 22:40:59 +0000 (23:40 +0100)]
Remove qSort usages from QDnsLookup

Change-Id: I2f7dfcfdf13cdd85af5ba251478e10cafe7f649b
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
11 years agoFix TapAndHoldGesture (others) for QWidgets
Rafael Roquetto [Mon, 5 Nov 2012 23:18:02 +0000 (21:18 -0200)]
Fix TapAndHoldGesture (others) for QWidgets

After the migration to QPA, touch events usually have a QWindow as a receiver,
unlike Qt4 where receivers were QWidgets. This broke QGestureManager and
gestures such as the TapAndHoldGesture, because
QGestureManager::filterEvent(QWidget *, QEvent *) was never called. Since the
receivers are now of QWindow type, QGestureManager::filterEvent(QObject *,
QEvent *) gets called instead, always returning false. This has several side
effects, one of them was causing the TapAndHold gesture to time out, because
it never got a TouchEnd event (and thus it thought that the touch was still
going on, even though it was not). This patch ensures that if a gesture event is
meant to be delivered to a QWidget, the right event filter method is called.

Change-Id: I1df5f763fe6c4d8db0058adbd17d23d70b4988fe
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Denis Dzyubenko <denis@ddenis.info>
11 years agoDo not call QWidget::show/hideEvent twice
Oliver Wolff [Wed, 17 Oct 2012 13:50:01 +0000 (15:50 +0200)]
Do not call QWidget::show/hideEvent twice

While handling events for Widgets and Windows in QWidgetWindow::event
makes sense for other events, it causes QWidget::show/hideEvent to be
called twice when handled like "the rest". Having that as one case here
seems to be the cleanest solution. Removing the call to showEvent from
QWidgetPrivate::show_helper (as proposed in the bug report) causes
autotests to fail and thus is not a viable option.

Additionally the expected result for the task221221 test for
QDoubleSpinBox was reverted to the Qt4 value as Qt4 behaviour was
restored.

Task-number: QTBUG-27199
Task-number: QTBUG-26424
Task-number: QTBUG-22565

Change-Id: I0ac42b09b1a7618de042d27aa5dd1b3d9f30f552
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
11 years agoTemporary backwards-compatible QWindow::setPos accessors
Shawn Rutledge [Thu, 8 Nov 2012 13:35:05 +0000 (14:35 +0100)]
Temporary backwards-compatible QWindow::setPos accessors

To be reverted after I19c00b54b1d2712f9418e8bcf56e35a8008b89ef and
and Ibd5cd10814c8cbd2b1f6e49b70782c7768d2366d are both integrated

Change-Id: I2e14d732cc7fc4168e8b4507a050f43f1e4c9e49
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoRemove QWindow pos, geometry and size as properties; pos->position
Shawn Rutledge [Mon, 22 Oct 2012 15:06:23 +0000 (17:06 +0200)]
Remove QWindow pos, geometry and size as properties; pos->position

Abbreviated properties are to be avoided.  But all 3 of these
properties are redundant from the QML perspective; and because QRect,
QPoint and QSize are (wisely) not QObjects, it's not possible to bind
to _their_ properties, which make these QWindow properties less useful
than users might assume that they are.

Change-Id: I19c00b54b1d2712f9418e8bcf56e35a8008b89ef
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoEnabled QSystemSemaphore autotest
Oliver Wolff [Wed, 7 Nov 2012 09:06:24 +0000 (10:06 +0100)]
Enabled QSystemSemaphore autotest

Change-Id: Id7133c46bbde554b2df69edacf9bfe808498a541
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoPrevent frame notifications going out when the content view is set
Andy Shaw [Wed, 7 Nov 2012 13:46:26 +0000 (14:46 +0100)]
Prevent frame notifications going out when the content view is set

When the content view is set it will trigger a frame notification which
we do not want to see because it would put our internal data on the
geometry out of sync. So ignore the notification until after it is set.

Change-Id: I704c2f186c8b0c6508a90d5dab51b7f6f02162fc
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agotest: Remove CONFIG += testcase from tst_bench_qnetworkreply_from_cache
Sergio Ahumada [Wed, 7 Nov 2012 19:48:59 +0000 (20:48 +0100)]
test: Remove CONFIG += testcase from tst_bench_qnetworkreply_from_cache

Benchmark tests are not supposed to be run by "make check"

Change-Id: I718565a8b4e71c136c7aa8f9bd95f95c5fdafab8
Reviewed-by: Rohan McGovern <rohan@mcgovern.id.au>
11 years agoTemporary backwards-compatibility window properties
Shawn Rutledge [Tue, 6 Nov 2012 22:57:20 +0000 (23:57 +0100)]
Temporary backwards-compatibility window properties

These are intended to exist only during the integration of patch
Ie4424ec15fbdef6b29b137f90a2ae33f173edd21, so that it will be possible
to build the other modules.  Then it will be reverted after the
property renaming is propagated to all the other modules.

Change-Id: I8d0c0774e685a728a98e8c866d95c606c927ff46
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoRename all QWindow properties that have "window" in them
Shawn Rutledge [Mon, 22 Oct 2012 10:47:34 +0000 (12:47 +0200)]
Rename all QWindow properties that have "window" in them

windowTitle, windowModality, windowIcon and so on are named that way
to be similar to the ones in QWidget.  However QQuickWindow inherits
all of the declared properties, and we would like to have shorter
property names in QML.  If you are working with a Window then it's
obvious the title property is the window title.  Unfortunately,
there must be patches in many other modules which depend on this one.
In order to avoid the need to merge them all at the same time,
there is also patch https://codereview.qt-project.org/#change,39001
which temporarily adds backwards-compatible accessors, which can be
removed after the other modules are able to build without them.

We should not rename windowState to state, because in QML, state
usually drives the state machine for animation transitions etc.
(although QWindow is not an Item, a user might get confused about it).

Related patches are
https://codereview.qt-project.org/#change,39001
https://codereview.qt-project.org/#change,37764
https://codereview.qt-project.org/#change,37765
https://codereview.qt-project.org/#change,37766
https://codereview.qt-project.org/#change,37762

Change-Id: Ie4424ec15fbdef6b29b137f90a2ae33f173edd21
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoRemove qSort/qStableSort usages from itemmodels
Giuseppe D'Angelo [Thu, 1 Nov 2012 22:35:03 +0000 (23:35 +0100)]
Remove qSort/qStableSort usages from itemmodels

Change-Id: I53c650f170fc8a6142373c1e7da0f4876188a39e
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
11 years agoUpdate dist/README file
Sergio Ahumada [Tue, 6 Nov 2012 20:08:02 +0000 (21:08 +0100)]
Update dist/README file

Task-number: QTBUG-26063
Change-Id: Ic9ebc02e352b7f0c4352be8b7de44c917135730f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoAdd configure option to minimize xcb runtime dependencies
Kai Koehne [Mon, 29 Oct 2012 11:59:09 +0000 (12:59 +0100)]
Add configure option to minimize xcb runtime dependencies

Some of the xcb- libraries we depend upon are not (yet) common across
distributions. This is problematic for binaries that should be working
on different distributions. The patch mitigates this by:

Adding the files from
  libxcb-proto (version 0.1.6), compiled with libxcb-1.5
  xcb-util (version 0.3.9)
  xcb-util-image (version 0.3.9)
  xcb-util-keysyms (version 0.3.9)
  xcb-util-renderutil (version 0.3.8)
  xcb-util-wm (version 0.3.9)

from xcb.freedesktop.org/dist to src/3rdparty/xcb.

Adding a configure option '-qt-xcb' to use the sources instead of
linking to the respective runtime libraries.

Task-number: QTBUG-27803
Change-Id: I6ea87daa382871b2b9072a601511523fa0b9f44b
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agofix warnings about empty "while" bodies
Oswald Buddenhagen [Wed, 7 Nov 2012 14:53:50 +0000 (15:53 +0100)]
fix warnings about empty "while" bodies

as it happens, this matches our coding style ...

Change-Id: I88d0916499a05a48d12691f5df5999c5ffd7a91c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agofix sign mismatch warnings
Oswald Buddenhagen [Wed, 7 Nov 2012 14:44:56 +0000 (15:44 +0100)]
fix sign mismatch warnings

enums are signed, while sizeof is unsigned.
as a side effect, we can optimize away one comparison by taking
advantage of the two's complement representation.

Change-Id: Ic0871306d30ad7217f2909e51e96a876a3f393dc
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agomove QSharedMemory autotest from qtscript to qtbase
Oliver Wolff [Mon, 29 Oct 2012 13:32:23 +0000 (14:32 +0100)]
move QSharedMemory autotest from qtscript to qtbase

As the script dependency for that autotest is not really needed it should
be moved to qtbase.

Task-number: QTBUG-27706

Change-Id: Ieda8b2182a20a77f53a0be9878e82e3236c79c2b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
11 years agoRemove out-of-memory test in QVarLengthArray.
Christian Strømme [Wed, 10 Oct 2012 13:04:42 +0000 (15:04 +0200)]
Remove out-of-memory test in QVarLengthArray.

No reason to keep this test. If an application is trying to allocate too
much memory it will fail, and its the users responsibility to provide
sane values and catch exceptions to recover.

Task-number: QTBUG-27361

Change-Id: I29d71745ab791b6e8a76f7b1f866ff4bd7024749
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
11 years agoFix autocapture for doubleclick in Windows
Miikka Heikkinen [Wed, 7 Nov 2012 13:04:37 +0000 (15:04 +0200)]
Fix autocapture for doubleclick in Windows

Holding down the second click of a doubleclick should also autocapture
the mouse like it does in Qt4.

Task-number: QTBUG-27863
Change-Id: I38c0567eca9fd7dcd3ef3d17921db5ebd3fe18b1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoqpa: Fix rendering issue in blitter engine (negative scaling factors)
Julien Brianceau [Wed, 7 Nov 2012 10:01:08 +0000 (11:01 +0100)]
qpa: Fix rendering issue in blitter engine (negative scaling factors)

A 180° rotation results in a TxScale QTransform with negative scaling
factors (x=-1.0 y=-1.0). This is not properly handled by blitter paint
engine yet, so use software rendering fallback in this case.

This rendering issue can be seen when using "-webkit-transform" CSS
property in WebKit with DirectFB QPA platform.

Change-Id: Iee496b6bf0c90ffe36c4235ceaa2c80f296b2ca4
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoconfigure: Pick up environment paths again on MinGW
Kai Koehne [Wed, 7 Nov 2012 11:14:33 +0000 (12:14 +0100)]
configure: Pick up environment paths again on MinGW

Make sure that INCLUDE, LIB paths are again considered in configure
checks on MinGW. While gcc itself doesn't care about the variables,
qmake automatically adds them via -I, -L...

This broke with 9c2ec72b95c13991f3.

Change-Id: Ic6214eeea9eb7c92961c37c3aa76c4fcaddb22b6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoFixed QSystemSemaphore autotest for "check" target
Oliver Wolff [Wed, 7 Nov 2012 09:05:06 +0000 (10:05 +0100)]
Fixed QSystemSemaphore autotest for "check" target

As CI runs autotests using the "check" target the approach using
DESTDIR = ../ does not work for the test. Instead the binaries are just
moved one directory up and QFINDTESTDATA is used to find the path of the
helper binary.

Change-Id: If1ed2b60821f1de4ac62f238c8af5e09cf0f444a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoRe-enable some skipped tests in tst_qwidget
Miikka Heikkinen [Wed, 7 Nov 2012 11:15:05 +0000 (13:15 +0200)]
Re-enable some skipped tests in tst_qwidget

Seems that these tests are now passing on Windows, so remove the skips.

Change-Id: Id30ef544502f97f8bc84f35f635e39912da3afe8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoFix sentences in QGraphicsItem documentation.
Mitch Curtis [Mon, 5 Nov 2012 09:35:31 +0000 (10:35 +0100)]
Fix sentences in QGraphicsItem documentation.

Change-Id: I5f86cdca53be103976017c83123e1ac80fcb8aa8
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agoCocoa: fix backingstore flush for 10.8
Teemu Katajisto [Wed, 7 Nov 2012 10:23:46 +0000 (12:23 +0200)]
Cocoa: fix backingstore flush for 10.8

Remove compile time version check to make flushing work correctly
when building with other sdks than 10.8.

Task-number: QTBUG-27862

Change-Id: I915ae80017be1c03d5217aa9bdb60991603f8d01
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoExtend widget grab test.
Friedemann Kleint [Wed, 7 Nov 2012 09:04:53 +0000 (10:04 +0100)]
Extend widget grab test.

- Add enter/leave logging.
- Add button to enforce native widgets.
- Make mouse event logging more verbose.

Task-number: QTBUG-27800

Change-Id: I23160244bef6cb0b8d505cbf118cf12d91621fe7
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
11 years agoQGtkStyle: remove references to gtk_progress_configure()
J-P Nurmi [Tue, 6 Nov 2012 17:03:23 +0000 (18:03 +0100)]
QGtkStyle: remove references to gtk_progress_configure()

gtk_progress_configure() is deprecated and no longer exists in GTK3.

Change-Id: I02d58456285326b8aee6050da1a155cacbb86eee
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
11 years agoFix for compiling with clang with c++11.
Erik Verbruggen [Tue, 6 Nov 2012 09:09:28 +0000 (10:09 +0100)]
Fix for compiling with clang with c++11.

Change-Id: Ibb1e3290edbb2bdc68bb8164be6c484e49b9c69e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
11 years agoDo not define QT_BASIC_ATOMIC_HAS_CONSTRUCTORS for clang.
Erik Verbruggen [Tue, 6 Nov 2012 10:22:16 +0000 (11:22 +0100)]
Do not define QT_BASIC_ATOMIC_HAS_CONSTRUCTORS for clang.

This triggers a bug in clang (before version 3.2). See also the bug
report: http://llvm.org/bugs/show_bug.cgi?id=12670 .

Change-Id: I9e0bc1cc39059ffa5e062652b932bc01e453ef98
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoFix excess enter events when showing modal dialog on button press
Miikka Heikkinen [Tue, 30 Oct 2012 13:54:43 +0000 (15:54 +0200)]
Fix excess enter events when showing modal dialog on button press

QApplicationPrivate::leaveAfterRelease was not properly cleared when
mouse event handling was interrupted by a modal dialog, which caused
every mouse move over the modal dialog to trigger enter event to the
widget under cursor.

Fixed by clearing QApplicationPrivate::leaveAfterRelease if mouse event
without any buttons pressed is handled.

Task-number: QTBUG-27643
Change-Id: I4f31daa656bc643c88e5338282a671ae2077e255
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoFix invalid mouse press and release events on window maximize
Miikka Heikkinen [Tue, 6 Nov 2012 11:56:18 +0000 (13:56 +0200)]
Fix invalid mouse press and release events on window maximize

In Windows, if the window is maximized with a doubleclick on the title
bar or resized with a doubleclick on the bottom or top frame border,
there comes no WM_LBUTTONDOWN or WM_LBUTTONDBLCLK event for the second
click, but there comes at least one WM_MOUSEMOVE with left button down
and eventual WM_LBUTTONUP.
Since QWindowSystemInterface::handleMouseEvent() can't differentiate
between actual button down event and a move event with button held
down, the move resulted in a button down event being sent to the widget
that was under cursor after resize.

Fixed by ignoring any events with left button down for which we didn't
get the initial native button down event. Since entering an application
with mouse button already held down is not generating mouse events
anyway until the button is released, this should be safe.

Task-number: QTBUG-27845
Change-Id: Ibc7abf8a127c401801e1b654a2829582f43a1ae8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoResolve xcb_poll_for_queued_event at run-time.
Samuel Rødal [Fri, 2 Nov 2012 14:08:25 +0000 (15:08 +0100)]
Resolve xcb_poll_for_queued_event at run-time.

By not making this a compile time decision we ensure forward
compatibility for older xcb versions if the xcb plugin is built against
a newer xcb.

Change-Id: I744777d53bf7b8deb6eff372494f4403d19d364c
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoMake it possible to suppress the automatic version number in DLLs
Thiago Macieira [Thu, 1 Nov 2012 21:57:33 +0000 (14:57 -0700)]
Make it possible to suppress the automatic version number in DLLs

qmake automatically appends the library's major version number to the
DLL file name on Windows, as DLL naming doesn't include the version
number on a suffix like on Unix systems.

This flag makes it so qmake skips adding. This will allow us to insert
Qt's major version number at a different position.

Change-Id: I25d471038841fb0c5a34ef6b3bd6266aa33cebd1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoFix for compiling with clang with c++11.
Erik Verbruggen [Tue, 6 Nov 2012 09:09:47 +0000 (10:09 +0100)]
Fix for compiling with clang with c++11.

Change-Id: I4f4928783d0e35b0df5e979fef1de80e9a026f55
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoCocoa: fix memory leaks
Teemu Katajisto [Mon, 22 Oct 2012 11:55:00 +0000 (14:55 +0300)]
Cocoa: fix memory leaks

Change-Id: I2e805aa64c65b90d33924ea4a8671735dee581fd
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoFix inconsistent leave/enter events for main window when popup is open
Miikka Heikkinen [Thu, 1 Nov 2012 09:28:16 +0000 (11:28 +0200)]
Fix inconsistent leave/enter events for main window when popup is open

Changed the platform leave event handling logic in QWidgetWindow to
match platform leave event handling logic in Qt4, where last mouse
receiver is used as leave target only if last mouse receiver wasn't
a native window itself. In that case it is assumed to get leave event
of its own when relevant.

Task-number: QTBUG-27639
Change-Id: Id6edcd29754a15c959f18ab38b20d66e5d446510
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
11 years agoMac: remove some unused code in QFontDialog
Liang Qi [Tue, 30 Oct 2012 12:46:50 +0000 (13:46 +0100)]
Mac: remove some unused code in QFontDialog

Those code was warpped by Q_WS_MAC and should be part of QPA already.

Change-Id: I48b751aad0509b50ccf9e82778c962ed80a2a9f9
Reviewed-by: Jiang Jiang <gzjjgod@gmail.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoAllow connect to functors with less parameters than the signal
Olivier Goffart [Sat, 3 Nov 2012 17:17:59 +0000 (18:17 +0100)]
Allow connect to functors with less parameters than the signal

Before, the functor slot (or lambda expression) had to have the same amount
of arguments as the signal.
This shown to be a big problem to be able to connect to signals that had
a QPrivateSlot.

This implementation use the type of the operator() of the functor to
know how many arguments we have.
As a bonus, we also can check the arguments in a static assert.

The test comes from https://codereview.qt-project.org/#change,38703
But this patch also works without variadic template

If the compiler does not support decltype, we workaround the lack of it
by using another level of indirection.

Change-Id: I9850b43e8caf77356a2ec3f4c0b0ed532d96029e
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
11 years agoDon't include qaccessible.h on QT_NO_ACCESSIBILITY
Kevin Funk [Tue, 6 Nov 2012 06:25:43 +0000 (07:25 +0100)]
Don't include qaccessible.h on QT_NO_ACCESSIBILITY

Change-Id: I1da4036c211172a72b73440648f4ff9ede761a69
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoSend QContexMenuEvent when Context Menu key is pressed.
Friedemann Kleint [Fri, 2 Nov 2012 10:59:14 +0000 (11:59 +0100)]
Send QContexMenuEvent when Context Menu key is pressed.

Bring back code from keymapper_x11.cpp.

Task-number: QTBUG-27648
Change-Id: I2a189a0537bcd2ae0eb093576c84814b2f09933b
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoImprove Direct X SDK detection in configure.exe
Friedemann Kleint [Fri, 2 Nov 2012 09:41:22 +0000 (10:41 +0100)]
Improve Direct X SDK detection in configure.exe

Check presence of Direct X SDK depending on
compiler version.

Check for presence of the headers d3dcompile.h and
intrin.h (SSE2) as well as d3d9.lib and the shader
compiler since the header d3dcompile.h is
also present in MinGW.

Change-Id: I7ee9701f4f9dc175ed2d733db79dda46de4d69f1
Reviewed-by: Kai Koehne <kai.koehne@digia.com>