profile/ivi/qtbase.git
12 years agoShift positions for lineBreakType
Konstantin Ritt [Wed, 6 Jun 2012 15:00:21 +0000 (18:00 +0300)]
Shift positions for lineBreakType

to keep them consistent with positions for all other flags.
This changes the internal behavior so that attributes[0].lineBreakType now means
"break opportunity at start of the text (before the first character in the string)"
and is always assigned with HB_NoBreak to conform rule LB2
(see http://www.unicode.org/reports/tr14/#LB2).

The current implementation is based on the sample implementation from tr14
that aimed to be as simple as possible rather than to be optimal.
From now, we can use pieces of the attributes array "as is"
without having to adjust some positions. Or we can analize some long text
by chunks (e.g. paragraph by paragraph) and consume less memory.

This introduces a minor overhead that will be eliminated shortly.

Change-Id: Ic873a05a9d5203b1c3d5aff2e4445a3f034c4bd2
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoQTextBoundaryFinder: Consider soft hyphen as line breaking opportunity
Konstantin Ritt [Fri, 25 May 2012 02:00:28 +0000 (05:00 +0300)]
QTextBoundaryFinder: Consider soft hyphen as line breaking opportunity

SoftHyphen enum value was added to specify such a boundary reason

Change-Id: I4248909eed6ab8cbca419de4dcf9fe917620a158
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoSet the whiteSpace flag outside the grapheme and the line breaking loop
Konstantin Ritt [Tue, 5 Jun 2012 08:19:22 +0000 (11:19 +0300)]
Set the whiteSpace flag outside the grapheme and the line breaking loop

The white spaces determination doesn't belong to the text breaking algorithm.
A proper breaking implementation shouldn't assume spaces are
break opportunities (actually, space is allowed to be a grapheme base);
However, the whiteSpace flag should never be checked alone while iterating
over the text to find the space sequence; the grapheme boundaries should always
be taken into account. This covers the SMP code points in UTF-16 text and
graphemes that consist of a space followed with one or more grapheme extenders.

This introduces a minor overhead that would be eliminated some later.

Change-Id: Ic2cc7f485631fd0b436fc256ce112ded5f94fc07
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRemove QFactoryInterface from sql drivers
Lars Knoll [Sun, 27 May 2012 03:34:53 +0000 (05:34 +0200)]
Remove QFactoryInterface from sql drivers

Change-Id: Ib31e6c4ce5264fc1e4281c8846df5630a6479a7c
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoDeprecate the use of QWeakPointer to track QObjects.
Stephen Kelly [Fri, 25 May 2012 08:31:03 +0000 (10:31 +0200)]
Deprecate the use of QWeakPointer to track QObjects.

The main problem with using QWeakPointer to track QObjects is that it
has API to convert to QSharedPointer, which is undefined behavior. There
is no need to overload the meaning of QWeakPointer with QObject
tracking.

QPointer is more suitable and should be used instead. Because QPointer
is implemented in terms of QWeakPointer, we need to add some overloads
which are not deprecated.

Change-Id: If0333e4800c9fd277629cc69185c9ca3e4e7e81d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoExpand the 'existing target guard' in generated CMake files.
Stephen Kelly [Fri, 18 May 2012 18:10:46 +0000 (20:10 +0200)]
Expand the 'existing target guard' in generated CMake files.

This way the target will be created and have its properties
populated only one time.

I tried wrapping the whole file in an 'include guard', but that
broke the unit test in tests/auto/cmake/pass1 (and
the qt5_use_module function), because the function causes the
variables in the Config file to not exist outside of the
scope (eg for include directories), and yet, Qt5${Module}_FOUND is
still true even when the find_package was previously called in a
function, so it is not found and processed again.

The change in Qt5CoreConfigExtras.cmake does not need to be guarded
as it is only ever included from Qt5CoreConfig.

Change-Id: Iaa016563db5eb61294360ac9e003c9c923393d8c
Reviewed-by: Brad King <brad.king@kitware.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
12 years agoAdded SpellCheckUnderlineStyle theme hint.
Samuel Rødal [Fri, 1 Jun 2012 08:32:17 +0000 (10:32 +0200)]
Added SpellCheckUnderlineStyle theme hint.

Task-number: QTBUG-25115
Change-Id: I70abbed426ad8bebca51823ed5ce16f2f300b5cc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoWindows: Store only full-size DC's obtained by BeginPaint.
Friedemann Kleint [Thu, 7 Jun 2012 11:42:13 +0000 (13:42 +0200)]
Windows: Store only full-size DC's obtained by BeginPaint.

Avoid painting bugs in case the DC covers only a part of the
window and QBackingStore does a full flush.

Task-number: QTBUG-26039

Change-Id: Ic918d9898ac824690273ac59bcb1e7e546cc698a
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoFix compilation of examples with -no-widgets
Kent Hansen [Tue, 5 Jun 2012 12:32:07 +0000 (14:32 +0200)]
Fix compilation of examples with -no-widgets

Change-Id: Ie0e19daf6c6476b5c5130f4930dfa3df92917384
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake qtexttable autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 12:07:05 +0000 (14:07 +0200)]
Make qtexttable autotest build without widgets

Change-Id: Id5f93dee0c4b5978c473838559f586ced35a2981
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake sql autotests build without widgets
Kent Hansen [Tue, 5 Jun 2012 12:10:02 +0000 (14:10 +0200)]
Make sql autotests build without widgets

Change-Id: Icd4d2ef39961e2e0ec5c9e910c74b3e8a35503bf
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake "other" autotests build without widgets
Kent Hansen [Tue, 5 Jun 2012 12:16:16 +0000 (14:16 +0200)]
Make "other" autotests build without widgets

Change-Id: I49e73c31b98e43259771c0e265cf13fc167c45f2
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoDon't build printsupport autotests when widgets aren't available
Kent Hansen [Tue, 5 Jun 2012 12:22:12 +0000 (14:22 +0200)]
Don't build printsupport autotests when widgets aren't available

Change-Id: Ida376a75f376fc0d3696d715648c7229aec301e2
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoFix common device spec paths
Donald Carr [Wed, 6 Jun 2012 15:54:55 +0000 (15:54 +0000)]
Fix common device spec paths

This fixes breakage in the Raspberry Pi spec introduced in:

https://codereview.qt-project.org/#change,27536

due to incorrect depth assumptions regarding included files.

Change-Id: I802b828f1755f299939fed192dd3ca9bf1a83002
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
12 years agoRemove widgets dependency from xmlstreamlint example
Kent Hansen [Tue, 5 Jun 2012 07:12:28 +0000 (09:12 +0200)]
Remove widgets dependency from xmlstreamlint example

Change-Id: I2c7609077bd18864ffd9b2ba5086eb590aff3df0
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRemove widgets dependency from qtconcurrent/map autotest
Kent Hansen [Tue, 5 Jun 2012 12:32:52 +0000 (14:32 +0200)]
Remove widgets dependency from qtconcurrent/map autotest

Change-Id: I734ae73a530ab6eb27271586040ef910e6ad0e2c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake animation autotests build without widgets
Kent Hansen [Tue, 5 Jun 2012 11:04:28 +0000 (13:04 +0200)]
Make animation autotests build without widgets

Change-Id: Icb0560a26973921611f697240fbce121fff518e9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRemove widgets dependency from qdatastream autotest
Kent Hansen [Tue, 5 Jun 2012 11:06:27 +0000 (13:06 +0200)]
Remove widgets dependency from qdatastream autotest

Change-Id: I30ce3ce2d5a0badc7a846256825b4deea8c0856a
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake qprocess autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 11:08:16 +0000 (13:08 +0200)]
Make qprocess autotest build without widgets

Change-Id: I0a428852222accbea8446ba1c284f1c44b9d4bf3
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRemove widgets dependency from qstringlistmodel autotest
Kent Hansen [Tue, 5 Jun 2012 12:51:05 +0000 (14:51 +0200)]
Remove widgets dependency from qstringlistmodel autotest

Change-Id: I9678f9ee3fd8b01648cf2524452145568cf6fb4f
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake itemmodels autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 12:51:32 +0000 (14:51 +0200)]
Make itemmodels autotest build without widgets

Change-Id: I7ff1a575c111452397c3461842c15bb01105cf95
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake qstatemachine autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 11:23:39 +0000 (13:23 +0200)]
Make qstatemachine autotest build without widgets

Change-Id: I3a58cb1cbe0c86aca6e533187e85c166bf0f8957
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake qpixmap autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 11:28:16 +0000 (13:28 +0200)]
Make qpixmap autotest build without widgets

Change-Id: Iabf1e6815a2af79d9da84c0e2bb9c2de52cb698f
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake qpicture autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 11:34:17 +0000 (13:34 +0200)]
Make qpicture autotest build without widgets

Change-Id: Id2047dace7b3087f1c7b83545f5e122ab936d33c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake qmovie autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 11:34:33 +0000 (13:34 +0200)]
Make qmovie autotest build without widgets

Change-Id: Ie53b183e99de08c3cc35f4932b7aabf4bf5b0940
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoget rid of "uninitialized member" gcc warning
Konstantin Ritt [Wed, 6 Jun 2012 14:51:49 +0000 (17:51 +0300)]
get rid of "uninitialized member" gcc warning

Change-Id: I486212829ec9309239645222e7f03f36ae4847f0
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
12 years agoMark the testSslOption method as introduced in Qt 4.8
Laszlo Papp [Wed, 6 Jun 2012 16:27:38 +0000 (19:27 +0300)]
Mark the testSslOption method as introduced in Qt 4.8

Change-Id: Ibe7cb1ca9cdcedd3f09dd4f865907e3f0fa6aef3
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
12 years agoMake gui tests build when widgets aren't available
Kent Hansen [Tue, 5 Jun 2012 11:39:04 +0000 (13:39 +0200)]
Make gui tests build when widgets aren't available

Change-Id: I5b75116d148f84ae2f96dd6b573d14952c4b601c
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoMake qpainter autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 11:58:15 +0000 (13:58 +0200)]
Make qpainter autotest build without widgets

Change-Id: I4e05871e44f7a69aaa9cd5d876c249c7dd9d86e8
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoMake qtextdocumentlayout autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 12:02:51 +0000 (14:02 +0200)]
Make qtextdocumentlayout autotest build without widgets

Change-Id: Ib767f9cac5fc3274ed16e87f0c4da68102147645
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoMake qtextobject autotest build without widgets
Kent Hansen [Tue, 5 Jun 2012 12:04:49 +0000 (14:04 +0200)]
Make qtextobject autotest build without widgets

Change-Id: I9ea79b62d22faeccc07d8c21a0d8f032b40abef0
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoQNX: Take nativeOrientation into account for QNX device orientations
Sean Harmer [Wed, 6 Jun 2012 10:12:25 +0000 (11:12 +0100)]
QNX: Take nativeOrientation into account for QNX device orientations

Change-Id: Idfe4a5bd9c9638a1f9ae52a7b1def3f869286587
Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
12 years agoQtNetwork: disconnect other channels when network layer detected
Martin Petersson [Wed, 6 Jun 2012 11:47:54 +0000 (13:47 +0200)]
QtNetwork: disconnect other channels when network layer detected

With Happy Eyeballs we will connect one IPv4 and one IPv6 channel and
pick the network layer depending on which connects first. When the
first channel is connected we can close the other one.

Before this we let the other connection finish connecting and then
closed it. This will close the other one as soon as the first one
is connected.

Change-Id: Ib2ab3f949704fd39dc0584bd31b9bcaf75ce35f7
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
12 years agoAdd Blackberry path for SSL certificates
Nicolas Arnaud-Cormos [Mon, 4 Jun 2012 15:52:44 +0000 (08:52 -0700)]
Add Blackberry path for SSL certificates

Change-Id: Ic01e4bddaa6f1fd94f16952e0818f4369c2ec8ab
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
12 years agoUse the correct ifdef (QT_WIDGETS_LIB) in qsqlrelationaldelegate.h
Kent Hansen [Wed, 6 Jun 2012 11:12:50 +0000 (13:12 +0200)]
Use the correct ifdef (QT_WIDGETS_LIB) in qsqlrelationaldelegate.h

Change-Id: I4cdb1eef7dab55c7d295463fe8ad29b5480b0788
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRename QSystemLocale::fallbackLocale() to QSystemLocale::fallbackUiLocale()
Mike FABIAN [Mon, 4 Jun 2012 15:08:27 +0000 (17:08 +0200)]
Rename QSystemLocale::fallbackLocale() to QSystemLocale::fallbackUiLocale()

Suggested by Oswald Buddenhagen. This function is about the (main)
UI language, not about other locale features like number formatting etc.
It not in the public API anymore in Qt 5.0 so it can be renamed.

Change-Id: I2a23892c67e5813de4c0e57330749568777e9ee6
Reviewed-by: Oswald Buddenhagen
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoCheck LANGUAGE as well in QSystemLocale::fallbackLocale
Mike FABIAN [Mon, 4 Jun 2012 15:53:34 +0000 (17:53 +0200)]
Check LANGUAGE as well in QSystemLocale::fallbackLocale

Because QSystemLocale::fallbackLocale() is about UI languages,
it makes sense to check LANGUAGE as well if appropriate.
Adapt tst_qlocale.cpp accordingly.

Suggested by Oswald Buddenhagen.

Change-Id: Ib2c9674081809e3251be4e34456b05210eebc010
Reviewed-by: Oswald Buddenhagen
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoUse LC_MESSAGES instead of LC_NUMERIC in QSystemLocale::fallbackLocale()
Mike FABIAN [Mon, 4 Jun 2012 07:50:07 +0000 (09:50 +0200)]
Use LC_MESSAGES instead of LC_NUMERIC in QSystemLocale::fallbackLocale()

commit b9790a04eeba664ecdf9ace24911094a71b5f0bd
(https://codereview.qt-project.org/24304) introduced the problem that
the country gets initialized from LC_NUMERIC and the language from
LC_MESSAGES. For example, if LC_NUMERIC=ru_RU and LC_MESSAGE=fr_FR,
then QLocale::system().name() returns "fr_RU". It is not nice to mix
the values of two LC_ variables there. Therefore, revert this change
and use LC_MESSAGES instead of LC_NUMERIC in
QSystemLocale::fallbackLocale(). This was also suggested in the
changelog of b9790a04 and it looks like a better way to fix the
problem.

Change-Id: I8fa6fec2b33e9f1f5a31c4b288503a658dad6d30
Reviewed-by: Denis Dzyubenko
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoFixed compile error in eglfs plugin due to narrowing conversion.
Samuel Rødal [Wed, 6 Jun 2012 06:13:53 +0000 (08:13 +0200)]
Fixed compile error in eglfs plugin due to narrowing conversion.

qeglfscursor.cpp:300: error: narrowing conversion of
‘((const QRectF*)r)->QRectF::left()’ from ‘qreal’ to ‘const GLfloat’
inside { }

Change-Id: Ic4273828ad361ffac5a68068372bf400d468fb38
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agoTest if the device is grabbed in some of the evdev plugins
Laszlo Agocs [Wed, 6 Jun 2012 11:09:41 +0000 (14:09 +0300)]
Test if the device is grabbed in some of the evdev plugins

Even though they target embedded devices, the touch and tablet plugins
are very often used on desktop, under X, for development and
experimenting. However the X.org drivers like to grab the input
devices, resulting in getting no events when reading
directly. Inspired by evtest, we show a warning from now on in this
case so the user has a clue what's going on.

Change-Id: I19474f1fcc5163f2601e7000aaee0cce54f99367
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agostatemachine: Make delayed event posting work from secondary thread
Kent Hansen [Mon, 4 Jun 2012 19:51:04 +0000 (21:51 +0200)]
statemachine: Make delayed event posting work from secondary thread

postDelayedEvent() and cancelDelayedEvent() are marked as thread-safe
in the documentation. Unfortunately, they didn't actually work when
called from another thread; they just produced some warnings:

QObject::startTimer: timers cannot be started from another thread
QObject::killTimer: timers cannot be stopped from another thread

As the warnings indicate, the issue was that postDelayedEvent()
(cancelDelayedEvent()) unconditionally called QObject::startTimer()
(stopTimer()), i.e. without considering which thread the function
was called from.

If the function is called from a different thread, the actual
starting/stopping of the associated timer is now done from the
correct thread, by asynchronously calling a private slot on the
state machine.

This also means that the raw timer id can no longer be used as the
id of the delayed event, since a valid event id must be returned
before the timer has started. The state machine now manages those
ids itself (using a QFreeList, just like startTimer() and
killTimer() do), and also keeps a mapping from timer id to event
id once the timer has been started. This is inherently more complex
than before, but at least the API should work as advertised/intended
now.

Task-number: QTBUG-17975
Change-Id: I3a866d01dca23174c8841112af50b87141df0943
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoQSqlResult: replace virtual hooks with virtual functions
Mark Brand [Tue, 5 Jun 2012 11:50:03 +0000 (13:50 +0200)]
QSqlResult: replace virtual hooks with virtual functions

Instead of virtual functions which would have broken binary
compatibility, virtual_hook() was used to implement the virtual
functionality. Now, since the step to Qt 5.0 allows breaking
binary compatibility, we take the opporunity to simplify the code
using real virtual functions.

SetNumericalPrecision --> setNumericalPrecisionPolicy()
NextResult --> nextResult()
DetachFromResultSet --> detachFromResultSet()
BatchOperation --> execBatch()

Task-number: QTBUG-25252
Change-Id: Idd3a870f876d8b8a7457559d5f31ec2073786a75
Reviewed-by: Bill King <bill.king@nokia.com>
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
12 years agoRemove insignificant_test for tst_qwindow on Mac OS X
Bradley T. Hughes [Wed, 6 Jun 2012 09:31:41 +0000 (11:31 +0200)]
Remove insignificant_test for tst_qwindow on Mac OS X

tst_QWindow::positioning() still fails on Mac OS X, and it does so in
several places. Skip this test for now as it causes isActive() to fail
as well. With positioning() QSKIP()ed, all the other test functions
pass:

Totals: 19 passed, 0 failed, 1 skipped
********* Finished testing of tst_QWindow *********

Task-number: QTBUG-23059
Change-Id: I58d036120c0121f515813cd20955ab3b82f81fe1
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoDo not build eglfs QPA when cross compiling for QNX
Sean Harmer [Tue, 5 Jun 2012 09:35:34 +0000 (10:35 +0100)]
Do not build eglfs QPA when cross compiling for QNX

Commit 2a1b50d67c1f2f4c5bd5efe048080989db37f44f introduced a dependency
on evdev for eglfs which QNX does not provide. QNX also has a dedicated
QPA plugin so the eglfs plugin is not needed there.

It is not possible to use the -device configure defaults approach as
it is not cross-platform.

Change-Id: I2d151f16cf1a9576a0b0b528f0e9c17834c66e91
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoCocoa: do not send multiple window activation events
Bradley T. Hughes [Wed, 6 Jun 2012 07:25:01 +0000 (09:25 +0200)]
Cocoa: do not send multiple window activation events

When switching the active window within the same application, Cocoa
sends us an NSWindowDidResignKeyNotification for the old activated
window, then an NSWindowDidBecomeKeyNotificationfor the newly activated
window. Our handling of this would first set Qt's active window to zero,
then immediately reset it afterwards. Avoid this by checking the key
window when handling the deactivation event, and don't set the active
window to zero if a new window has become active.

Task-number: QTBUG-24322
Change-Id: I8719fc501049eeaaebb75e9ea03261b2209458b6
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoAdded QScreen::setOrientationUpdateMask().
Samuel Rødal [Tue, 5 Jun 2012 12:17:24 +0000 (14:17 +0200)]
Added QScreen::setOrientationUpdateMask().

It might be too expensive to always have an accelerometer sensor
running, so introduce API so that the application has to explictly ask
to get the orientation updates it's interested in.

Change-Id: Ib7dc5ad8807718409f744ebef53f4476aa05175d
Reviewed-by: Ian Monroe <ian.monroe@nokia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com>
12 years agoCocoa: Fix QCocoaBackingStore::flush on 10.8
Morten Sorvig [Fri, 25 May 2012 09:36:03 +0000 (11:36 +0200)]
Cocoa: Fix QCocoaBackingStore::flush on 10.8

The call to displayRect works on 10.7 but does not
update the pixels on screen on 10.8. Many Qt windows
do not update properly.

This is a workaround found by trail and error
without fully understanding the underlying issue.
I would like to have this in place until we can
determine the cause of the bug.

Change-Id: I1ecee745f42a93ded4f651cc8ad51963f250e78d
Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoFix compilation when configured with -no-widgets
Kent Hansen [Tue, 5 Jun 2012 06:56:00 +0000 (08:56 +0200)]
Fix compilation when configured with -no-widgets

printsupport plugins need QtPrintSupport (which needs QtWidgets).

Change-Id: I8cc9cc15abd19c95b8d4bac26dfd17d027bbfa96
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoExport QPlatformIntegrationFactory to make it usable outside of QtGui.
Balazs Kelemen [Tue, 5 Jun 2012 14:19:10 +0000 (16:19 +0200)]
Export QPlatformIntegrationFactory to make it usable outside of QtGui.

QPlatformIntegrationFactory can be used to load a platform plugin dynamically.
It can be useful for an external platform plugin that want to define some
behaviour on it's own and use the default plugin for the rest. We are going
to implement such a plugin in WebKit for the test infrastructure to tweak
the platform backends in order to provide more platform independent layout
test results.

Change-Id: Iaaabe1cbc173a03132d83474faa7858aead4cae0
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoFixed QJsonObject::find()
Denis Dzyubenko [Mon, 4 Jun 2012 16:52:36 +0000 (18:52 +0200)]
Fixed QJsonObject::find()

The function returns mutable iterator on the object that can later be passed to
e.g. erase(), hence it should detach() to be consistent with
QJsonObject::begin() which also detaches.

Change-Id: Id79e8e012fd5469e06b68fbc9eecb7c6848ce9c1
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
12 years agonormalize the process arguments to Normalization Form D on mac
Konstantin Ritt [Wed, 11 Apr 2012 08:00:55 +0000 (11:00 +0300)]
normalize the process arguments to Normalization Form D on mac

QFile::encodeName() does this for us + simplifies the code a bit

Change-Id: Id2ca2615e20408229dd021c26587fefd60365352
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoDo not set an action on native submenu items on Mac
Pasi Matilainen [Mon, 2 Apr 2012 10:38:03 +0000 (13:38 +0300)]
Do not set an action on native submenu items on Mac

On Mac, clicking on a submenu entry triggers QMenu::triggered(QAction*)
signal, which is unexpected, and also closes the submenu, which does
not match platform behavior. This happens because native submenu items
have an action set, so fix it by not setting the action.

Task-number: QTBUG-16738
Task-number: QTBUG-10706
Change-Id: I6819999e5af35e6acab1aec035d5d85445189f11
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoRemove support for Qt 4 style plugins
Lars Knoll [Sat, 2 Jun 2012 03:42:13 +0000 (05:42 +0200)]
Remove support for Qt 4 style plugins

The new plugin format allows us to avoid loading the plugins in
all cases. Remove the old format, as we could get bad behavior
with the old format if Qt would try to dlopen a Qt 4.x plugin.

Change-Id: I2193e6874d6cca3c0b12298c2b9beb4105a42fd5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoUpdate of the plugin documentation
Lars Knoll [Sun, 27 May 2012 01:04:44 +0000 (03:04 +0200)]
Update of the plugin documentation

Moved the plugin overview from qtdoc to qtbase. Updated
the docs to describe the new plugin mechanism.

Change-Id: I1b92d5099aeaa3a166c1f7698176d811d47c3392
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoRemove references to QtSharedPointer::InternalRefCount
Thiago Macieira [Wed, 23 May 2012 16:34:38 +0000 (18:34 +0200)]
Remove references to QtSharedPointer::InternalRefCount

This class does not exist, is not needed and has never been published
in a released version of Qt.

It existed during the development of QSharedPointer, when internal
reference counting (also known as intrusive counting) was a goal. That
goal was abandoned when use with forward-declared classes was
preferred.

Change-Id: If3a5a29c07fc71e2001d6ba64b90ddd241ab8ae3
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agoGeneralize common device properties out of Raspberry Pi spec
Donald Carr [Thu, 31 May 2012 03:18:26 +0000 (03:18 +0000)]
Generalize common device properties out of Raspberry Pi spec

Change-Id: I58cc9c9219bf3e9ed8e7401cb66f968306d7bfc9
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
12 years agoeglfs refactor: Query screen and format info from hooks
Girish Ramakrishnan [Fri, 1 Jun 2012 19:18:45 +0000 (12:18 -0700)]
eglfs refactor: Query screen and format info from hooks

This allows boards to customize what they really work best for
without having to set environment variables.

Change-Id: Ib40c3a870ade568f66e37e621a8abc6b17e39411
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoeglfs refactor: Move egl initialization to the integration
Girish Ramakrishnan [Fri, 1 Jun 2012 19:04:35 +0000 (12:04 -0700)]
eglfs refactor: Move egl initialization to the integration

Change-Id: If2c870538c742fd034fb9e5c115e4ac0bd8e2e03
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoVerify the surfaceType before activating the GL context
Holger Hans Peter Freyther [Tue, 29 May 2012 13:23:25 +0000 (15:23 +0200)]
Verify the surfaceType before activating the GL context

Verify that the surfaceType() of the QPlatformContext is of type
OpenGLSurface before making the context active. Make it possible
to get the QSurface from a QPlatformSurface, make QPlatformWindow
use that to access the QWindow. Remove the setSurfaceType call from
the eglfs plugin as this hiding a problem.

Change-Id: I08906da052e066bb1f1f042030643c6389ab17d7
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
12 years agoUse QPointer instead of QWeakPointer.
Stephen Kelly [Wed, 30 May 2012 11:53:24 +0000 (13:53 +0200)]
Use QPointer instead of QWeakPointer.

The use of QWeakPointer for tracking QObject pointers is to be
deprecated.

Change-Id: If460ca7f515db77af24030152f4bd56e1a5fae7c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoRemove useless "QT += widgets"
Kent Hansen [Tue, 5 Jun 2012 12:36:41 +0000 (14:36 +0200)]
Remove useless "QT += widgets"

These .pro files have TEMPLATE=subdirs, so there's no reason to be
adding libraries here.

Change-Id: I0fb0a44107710ee746d354106d0c46006958ee62
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoAvoid string-based lookup of signals
Kent Hansen [Mon, 4 Jun 2012 06:37:55 +0000 (08:37 +0200)]
Avoid string-based lookup of signals

Resolving signals by member function is preferable.

Change-Id: I2a47a27bc780c4c3c29cf472f9f063c910e20c18
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoQNX: Implement QQnxScreen::nativeOrientation()
Kevin Ottens [Fri, 25 May 2012 09:14:11 +0000 (11:14 +0200)]
QNX: Implement QQnxScreen::nativeOrientation()

Provide a proper version of nativeOrientation(). We use the screen
physical size as reported by the device to determine its native
orientation.

Change-Id: I45b593b0d62436529f89050e98e10b8c9463b6b9
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
12 years agoIntroduce nativeOrientation() to QPlatformScreen
Kevin Ottens [Fri, 25 May 2012 08:30:52 +0000 (10:30 +0200)]
Introduce nativeOrientation() to QPlatformScreen

Now QPlatformScreen has a nativeOrientation() method which default
implementation return Qt::PrimaryOrientation. Its purpose is to return
the native orientation of the device (e.g. when the device logo is right
up).

Only the QPA backend can know for sure what this native orientation is,
so allow QPA backends to override it with a finer result.

Change-Id: I3bef14acb6b8568e64398ff919d9cb4461a2c9cc
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoWrite test to confirm QStateMachine calls connectNotify().
Mitch Curtis [Fri, 1 Jun 2012 12:31:12 +0000 (14:31 +0200)]
Write test to confirm QStateMachine calls connectNotify().

Task-number: QTBUG-16628
Change-Id: I77535fcb9a6ae306df8ccd670ee1bfc32721d66a
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoQDoc: Look for template and include() under installdir.
Casper van Donderen [Tue, 5 Jun 2012 11:58:31 +0000 (13:58 +0200)]
QDoc: Look for template and include() under installdir.

The installdir will now also be used to search for include() qdocconf
variables and the stylesheet.

Change-Id: I388392114fd5a8d57bab0b71699b30e4a6ddd46e
Reviewed-by: Martin Smith <martin.smith@nokia.com>
12 years agoCorrectly locate files with relative paths
Lars Knoll [Fri, 4 May 2012 09:21:49 +0000 (11:21 +0200)]
Correctly locate files with relative paths

QUrl("relativefilename").toLocalFile() changed behavior
and now returns an empty string if the scheme is not set.
Setting the scheme to "file:" in setSource would however
break some other assumptions in the code about relative
url's.

Task-number: QTBUG-22416
Change-Id: I1b3fcbef81f6e356935ec426903989e783ce9a78
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoFix Mac support for glyph scaling
Jiang Jiang [Mon, 4 Jun 2012 17:38:10 +0000 (19:38 +0200)]
Fix Mac support for glyph scaling

Change-Id: I9ac9da86c38e9313c6219b8049e46b6b58fa6731
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoMake QIODevice::seek() return false for sequential files.
Mitch Curtis [Tue, 29 May 2012 10:01:24 +0000 (12:01 +0200)]
Make QIODevice::seek() return false for sequential files.

Task-number: QTBUG-18173
Change-Id: Ie3a96d3a6f60995b8ba7823153778869d0c2dc58
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
12 years agoconfigure: Auto-detect and enable C++11 support if available
Bradley T. Hughes [Tue, 29 May 2012 05:10:09 +0000 (07:10 +0200)]
configure: Auto-detect and enable C++11 support if available

Enabling support for C++11 adds CONFIG+=c++11 to the Qt build. Projects
using Qt can check for C++11 support using contains(QT_CONFIG, c++11) in
their .pr[iof] files.

The QMAKE_CXXFLAGS_CXX11 and QMAKE_LFLAGS_CXX11 qmake varibles contain
any arguments the compiler needs to enable C++11. CONFIG+=c++11 adds
these arguments to the build.

Support for clang, g++, and the Intel C++ Compiler for Linux are
included in this commit.

Change-Id: Id77f86d7ad4d5c740b890446a40b105879a0d327
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agodirectfb: Compile with C++11 support enabled
Bradley T. Hughes [Tue, 5 Jun 2012 06:18:41 +0000 (08:18 +0200)]
directfb: Compile with C++11 support enabled

qdirectfbblitter.cpp:146: error: narrowing conversion of 'srcRect.x()'
from 'qreal' to 'int' inside { }
qdirectfbblitter.cpp:152: error: narrowing conversion of 'rect.x()' from
'qreal' to 'int' inside { }

The same error exists for calls to y(), width(), and height() at both
locations.

Change-Id: I14f165a6a1cab9502e157e798157b835faf2300f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoQDoc: search for example projectPath for manifest.
Casper van Donderen [Mon, 4 Jun 2012 15:29:53 +0000 (17:29 +0200)]
QDoc: search for example projectPath for manifest.

Previously qdoc would automatically use the first .pro/.qmlproject file
found, now it explicitly searches for a .pro/.qmlproject file with the
name of the example.

Change-Id: I2552e529bd3d1b724d3b4286d98d664edbbabcf2
Reviewed-by: Martin Smith <martin.smith@nokia.com>
12 years agotst_qtoolbutton: stabilize and improve failure message
Rohan McGovern [Tue, 5 Jun 2012 04:24:18 +0000 (14:24 +1000)]
tst_qtoolbutton: stabilize and improve failure message

Allow for a little more leeway in timers.

Task-number: QTBUG-26004
Change-Id: I59936d0f675b7f734e04b3f5e63631c74ca4f163
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
12 years agoAdd StartDragVelocity to style hints
Laszlo Agocs [Mon, 4 Jun 2012 11:18:32 +0000 (14:18 +0300)]
Add StartDragVelocity to style hints

This will be used by Flickable in combination with the drag distance
to improve the drag start detection logic.

Change-Id: Ica30042ef3d15041d857b07fa4173dde3d3f900f
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoExpose the plugins meta data in the plugin loader
Lars Knoll [Sun, 27 May 2012 09:38:36 +0000 (11:38 +0200)]
Expose the plugins meta data in the plugin loader

add a metaData() method to QPluginLoader so that
applications can query the plugins meta data without
having to load the plugin.

Change-Id: Ic3ebb35fd3c403926326e8dd1de4176b0c48dbef
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoMake touch operating better on some touchpads
Laszlo Agocs [Sat, 2 Jun 2012 16:04:00 +0000 (19:04 +0300)]
Make touch operating better on some touchpads

Some MT protocol capable touchpads do not provide
ABS_MT_TOUCH_MAJOR. The calculation for touch area was meaningless in
this case and resulted in a very small area not playing nice with apps
like fingerpaint.

Change-Id: Ibe472e22e5e792059fd594f54be9be8b75287730
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoFix QTemporaryFile::open() failing after remove().
Mitch Curtis [Wed, 30 May 2012 09:55:28 +0000 (11:55 +0200)]
Fix QTemporaryFile::open() failing after remove().

If a QTemporaryFile is constructed using a template file path,
the path is generated in QTemporaryFileEngine::open() and then
filePathIsTemplate is set to false. If remove() and then open()
are called on the same QTemporaryFile, the path is not regenerated.
This change ensures that if the file path was generated, it will be
generated again in the scenario above.

Task-number: QTBUG-2557
Change-Id: I718ceb89daa9a9d46fdbe811fecc3d57d6dc08c2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoMake QString("inf").toFloat() return inf instead of zero.
Mitch Curtis [Wed, 30 May 2012 14:56:20 +0000 (16:56 +0200)]
Make QString("inf").toFloat() return inf instead of zero.

Currently, QString::toFloat() returns 0 (and sets ok to false) if you
try to convert "inf". This is because inf is greater than QT_MAX_FLOAT
and there is currently no check to handle inf.

Task-number: QTBUG-8629
Change-Id: I498daf4a7a6f880f928461fca628fcaf7d1d6d08
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
12 years agoImprove the QTextBoundaryFinder autotests a lot
Konstantin Ritt [Thu, 31 May 2012 09:46:18 +0000 (12:46 +0300)]
Improve the QTextBoundaryFinder autotests a lot

The existing tests has been retained, the new ones has been added.

Change-Id: I12ae1b4e63dde46f3b14a7c1423c13d5881d4507
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRename QVector::realloc and QVector::free.
Jędrzej Nowacki [Mon, 21 May 2012 12:41:54 +0000 (14:41 +0200)]
Rename QVector::realloc and QVector::free.

These names were confusing and conflicting with standard C memory
management functions.

Change-Id: I6efe20665d2ec7ad3e00f3a806cc1843a57374d4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoQProcess: Add accessors for program and arguments.
Christian Kandeler [Wed, 23 May 2012 09:00:04 +0000 (11:00 +0200)]
QProcess: Add accessors for program and arguments.

Task-number: QTBUG-24550

Change-Id: I1ce26e584e39b0b58b1c9f78d8027b2479f2d92c
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoQDoc: Use the correct DITAiXML for table col/rowspan.
Casper van Donderen [Mon, 4 Jun 2012 09:39:10 +0000 (11:39 +0200)]
QDoc: Use the correct DITAiXML for table col/rowspan.

Change-Id: Id5443b4428a5f0b6b9fee92efcf2fd1ae19c0d19
Reviewed-by: Martin Smith <martin.smith@nokia.com>
12 years agoThe QFontEngineFT files are not built into QtGui anymore.
Thiago Macieira [Wed, 30 May 2012 10:24:30 +0000 (12:24 +0200)]
The QFontEngineFT files are not built into QtGui anymore.

These files are only built into QtPlatformSupport, so the Q_GUI_EXPORT
macro is now wrong. Remove it.

Additionally, since these files are built into QtPlatformSupport, the
windows platform plugin does not need to build them again.

To-Do: move the files to src/platformsupport/fontdatabases

Change-Id: I9d69b97ca25ee52ab627cfa633f43b277acc5e05
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
12 years agoAdd QDeferredDeleteEvent
Bradley T. Hughes [Mon, 14 May 2012 11:27:28 +0000 (13:27 +0200)]
Add QDeferredDeleteEvent

Use this to store the loop-level counter needed by QCoreApplication
when determining when it is safe to delete an object.

This removes the hack to hijack the QEvent::d pointer (even though
the pointer is unused).

Change-Id: I91c0b1aa00235ec6e13feb30bf928e56d2f80026
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoMigrate fontconfig config test to unix scope
Donald Carr [Mon, 4 Jun 2012 17:15:57 +0000 (17:15 +0000)]
Migrate fontconfig config test to unix scope

Fontconfig has no X11 dependency and is of broader use to us than the X11
context. The test should also disambiguate whether fontconfig support is
successfully detected or not.

This change also removes a false X11 dependency from the freetype test.

Change-Id: I68a596aa06f614a64163772fe29a09edba119a81
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
12 years agoAllow 24:00:00 for ISO dates in QDateTime::fromString().
Mitch Curtis [Mon, 4 Jun 2012 14:59:46 +0000 (16:59 +0200)]
Allow 24:00:00 for ISO dates in QDateTime::fromString().

ISO 8601 section 4.2.3 states that "The end of one calendar day [24:00]
coincides with [00:00] at the start of the next calendar day", so
fromString() was updated to account for this.

Task-number: QTBUG-25387
Change-Id: I391db0da755dbc822ba0820c302a2c10391e1f3b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoReplace QTEST_APPLESS_MAIN with QTEST_MAIN in tests using QProcess
Rohan McGovern [Tue, 5 Jun 2012 04:03:35 +0000 (14:03 +1000)]
Replace QTEST_APPLESS_MAIN with QTEST_MAIN in tests using QProcess

QProcess requires an application object to be created in order to work
correctly on Windows.

Task-number: QTBUG-26023
Task-number: QTBUG-26024
Change-Id: Ifa90946262bc7e2a7df6b6aad54e10b54473fc97
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
12 years agoIntroduce gcc machinedump considerations to build system
Donald Carr [Thu, 31 May 2012 21:58:32 +0000 (21:58 +0000)]
Introduce gcc machinedump considerations to build system

This information is required by qmake when cross compiling for Debian based
multi-arch devices in order to adequately resolve system libraries and
pkg-config information.

Change-Id: If96e677ab27c6f0453889c8f7cc43bdb9016f8b6
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoevdevtablet plugin
Laszlo Agocs [Fri, 1 Jun 2012 07:36:51 +0000 (10:36 +0300)]
evdevtablet plugin

Change-Id: Ie8fbaac929180e6d4c626253c4c20d1b3a9083f5
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
12 years agoFix parent-children relationship of QWidgetWindows
Debao Zhang [Fri, 1 Jun 2012 11:10:16 +0000 (04:10 -0700)]
Fix parent-children relationship of QWidgetWindows

For a native child widget,
widget->nativeParentWidget()->windowHandle()
should always equal to
widget->windowHandle()->parent()

Change-Id: I2560689d32b0cb2834ed33f96c1c70ef3c14342d
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
12 years agoEnter initial state before QStateMachine::started() is emitted
Kent Hansen [Thu, 31 May 2012 11:33:14 +0000 (13:33 +0200)]
Enter initial state before QStateMachine::started() is emitted

The documentation says that started() "is emitted when the state
machine has entered its initial state", but the implementation
didn't adhere to that.

The consequence is that if you e.g. emitted a signal from a slot
connected to started(), and that signal was used by a transition
from the initial state, the signal would effectively get ignored and
the state machine would remain in the initial state.

Task-number: QTBUG-24307
Change-Id: Ibbeb627d517eaff821d88e256a949eacf6aae350
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoFix typos in QState sorting functions
Kent Hansen [Thu, 31 May 2012 10:17:02 +0000 (12:17 +0200)]
Fix typos in QState sorting functions

A QObject can't be a child of itself, so the comparison always
returned false. In practice, this was causing the entry/exit order
of parallel states to be random.

QObject::children() is documented to contain the children in the
order in which they were added, so this fix actually achieves
deterministic behavior.

Task-number: QTBUG-25959
Change-Id: Id3f12d6bfbc249f1d4fed0bafb7d0217093e458e
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoFix endian detection for wince
Andreas Holzammer [Mon, 4 Jun 2012 11:44:26 +0000 (13:44 +0200)]
Fix endian detection for wince

As the qsystemdetection.h is not included
so Q_OS_WINCE is not defined here, so use
the define from the mkspec.

Change-Id: Ic170725d0da89f0c0e675c62bd2aa5c58803de9f
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoQDoc: check if !isNull() before casting prev/next nodes.
Casper van Donderen [Mon, 4 Jun 2012 07:48:05 +0000 (09:48 +0200)]
QDoc: check if !isNull() before casting prev/next nodes.

Change-Id: Ifac095ef0af0b483fbf53c6a18cf3c3130d37710
Reviewed-by: Martin Smith <martin.smith@nokia.com>
12 years agoFix touchpads with evdevmouse
Laszlo Agocs [Sat, 2 Jun 2012 20:18:05 +0000 (23:18 +0300)]
Fix touchpads with evdevmouse

evdevmouse only worked properly with real mice, the ABS event handling
was somewhat broken, it wasn't possible to properly move a mouse cursor
with a touchpad due to unwanted jumps. The button handling is also
corrected.

Change-Id: Id04ef65d867a75bcfc54240d192a78224a4481d6
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
12 years agoReport mouse events when the driver says so
Laszlo Agocs [Sat, 2 Jun 2012 19:55:26 +0000 (22:55 +0300)]
Report mouse events when the driver says so

Generate mouse events in SYN only, when all available data has
been reported.

Change-Id: I74a9e9dd603ee0747b00115fac0405b1c600bdeb
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
12 years agoQWidgetWindow: Fix handleExposeEvent()
Debao Zhang [Fri, 1 Jun 2012 10:36:32 +0000 (03:36 -0700)]
QWidgetWindow: Fix handleExposeEvent()

When the associated widget of QWidgetWindow is visible but its
updates are not enabled, avoid marking the widget dirty.

Task-number: QTBUG-25991
Change-Id: Ibeac4c0dfd3198a5174372331e50628b0d3a480d
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
12 years agotst_languagechange: increased timeout on Windows
Rohan McGovern [Mon, 4 Jun 2012 00:29:10 +0000 (10:29 +1000)]
tst_languagechange: increased timeout on Windows

This test's runtime significantly varies on separate runs on Windows;
runtimes from 10 to 830 seconds have been observed in CI.

Increase the timeout to restore CI stability.

Task-number: QTBUG-26006
Change-Id: Iba153e65264a177d146b2f3647ec6ba529af7135
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
12 years agomake pre-qmake spec evaluation load device variables
Donald Carr [Thu, 31 May 2012 06:13:10 +0000 (06:13 +0000)]
make pre-qmake spec evaluation load device variables

this is needed to correctly resolve the compiler (cf. $$CROSS_COMPILE)

Change-Id: Iaf7266ae464c15e8483780dcf9c970212630a93b
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
12 years agoChange testlib signal dumper hooks to use signal index range
Kent Hansen [Thu, 31 May 2012 19:49:07 +0000 (21:49 +0200)]
Change testlib signal dumper hooks to use signal index range

Another step towards getting rid of the class method offset
computation in QMetaObject::activate().

Since QMetaObjectPrivate::signal() is private API, this also
required adding a testlib dependency on core-private (and
getting rid of the duplicated QSignalSpyCallbackSet struct).

Change-Id: I0d830f35392a6b44fc321c5285877ec0bf437100
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>