profile/ivi/qtbase.git
12 years agoImproved performance of large text when parts are outside view.
Kim Motoyoshi Kalland [Mon, 12 Dec 2011 12:02:13 +0000 (13:02 +0100)]
Improved performance of large text when parts are outside view.

Avoid generating paths for the parts of the text that are outside
the viewport in the raster paint engine.

Task-number: QTBUG-22687
Change-Id: I06159bc4c1aa82a07606f4b2f0336cb25dfd56d2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
12 years agoFix QPA xlib plugin handling of setParent(0).
Bradley Smith [Tue, 13 Dec 2011 05:47:03 +0000 (21:47 -0800)]
Fix QPA xlib plugin handling of setParent(0).

Dereference of the parent argument did not check for nullptr. For
example, the hellogl example would crash. Now if the parent
argument is null, the screen's root window is used.

Change-Id: Ib06181c9ab9794d577722f1c1dd5ee92e4edaee5
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoQImageReader-test: Make more verbose, use QTemporaryDir.
Friedemann Kleint [Mon, 12 Dec 2011 10:16:43 +0000 (11:16 +0100)]
QImageReader-test: Make more verbose, use QTemporaryDir.

- Add some QVERIFY to check for isNull().
- Use QTemporaryDir to avoid spurious failures in the format
  extension-ignore test (cannot copy to '/tmp/black.jpg').

Change-Id: Ia57ea4daa6b8686d1111c9c27a47666265fa9781
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoFix failing unit tests.
Sarah Smith [Thu, 17 Nov 2011 05:06:17 +0000 (15:06 +1000)]
Fix failing unit tests.

The test that was failing was the readFromDevice one - where the
extension is not known.

Looks as though image detection is required in a positive way, that is
it is not enough to say I think I can read this file, and then fail if
the format is "corrupt", you must be certain that the file was intended
to be that format.

In the case of TGA the original format has no magic byte header, and no
consistent way to check if it really is a TGA file.  With 2.0 the footer
was added at the end, so that can be checked for confirming the file is
TGA.  However rejecting files which do not have this means that old TGA
files will not be read.

On a quick survey TGA files that have been used in applications so far
all seem to be 2.0 TrueVision, so for now, lets just reject earlier
files and see how it goes.

Also add reading the tga test file to the readFromDevice test.

(cherry picked from commit 665bc3951709f0d726cb82501a5bca684f3347a5)
Change-Id: I665bc3951709f0d726cb82501a5bca684f3347a5
Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
12 years agoQClipboard-test: Fix test
Friedemann Kleint [Fri, 9 Dec 2011 16:14:52 +0000 (17:14 +0100)]
QClipboard-test: Fix test

- Use QFINDTESTDATA to locate sub-executables
- Remove dependency on QtWidgets, use QGuiApplication everywhere.
- Improve error handling when running sub-executables, prevent
  hangs (Windows)

Change-Id: If8e3be82f855c8be6bdbfc9f9728e8490ed181f3
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoFix qfile unit test failing on shadow build.
Kurt Korbatits [Tue, 13 Dec 2011 01:08:41 +0000 (11:08 +1000)]
Fix qfile unit test failing on shadow build.

Updated three instances were not using QFINDTESTDATA.

Change-Id: Ibd0f6734791fc5d98ebeb65ac3bd80aa1c076414
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
12 years agoAdd missing assertion to QAbstractTestLogger.
Jason McDonald [Mon, 12 Dec 2011 07:32:48 +0000 (17:32 +1000)]
Add missing assertion to QAbstractTestLogger.

If passed an empty string, QAbstractTestLogger::outputString() would
crash, so add a QTEST_ASSERT to make the cause of any crashes more
obvious.

Change-Id: I00afe2e73120b87e211f858402d441f345dddd08
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agotestlib: fixed actual, expected order in QTest::compare_helper
Rohan McGovern [Tue, 13 Dec 2011 00:20:11 +0000 (10:20 +1000)]
testlib: fixed actual, expected order in QTest::compare_helper

These two parameters were written in the opposite order in the
function's declaration and definition.  Harmless to the compiler,
but confusing to developers and reviewers.

Change-Id: I1d4cb0a41b465b5f918daa76756677fe0cfe0a59
Reviewed-by: Jason McDonald
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
12 years agoStop animation driver in the appropriate place.
Michael Brasser [Mon, 12 Dec 2011 04:51:15 +0000 (14:51 +1000)]
Stop animation driver in the appropriate place.

Calling stop from restartAnimationTimer was incorrect (it was initially
added as a fix after the introduction of QAnimationDriver, but this is
a better location for the fix).

Change-Id: I2507096b846ada061e36a9ece6aa814d801ddd53
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoOnly call profiler callback once per animation tick.
Michael Brasser [Mon, 12 Dec 2011 04:40:35 +0000 (14:40 +1000)]
Only call profiler callback once per animation tick.

Change-Id: I369afdf34ded2c6327ce36cdb80fab51bf89a1b5
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
12 years agoCleanup pause timer handling in QUnifiedTimer.
Michael Brasser [Mon, 12 Dec 2011 04:30:11 +0000 (14:30 +1000)]
Cleanup pause timer handling in QUnifiedTimer.

The animationTimer is now only used for pauses, so can be renamed to
pauseTimer, and directly queried for whether it is active.

Change-Id: I3d9319b6ee76158e875ab43657126a0aa0a1cf2e
Reviewed-by: Leonardo Sobral Cunha <leo.cunha@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoFix possible jump in animation timer.
Michael Brasser [Fri, 9 Dec 2011 02:39:53 +0000 (12:39 +1000)]
Fix possible jump in animation timer.

If both a stop and start happen within an event loop, ensure they are
processed in order.

Based on a patch from Charles Yin.

Task-number: QTBUG-22865
Change-Id: I6131bd43a6ba5ad4fa37c863a9f4598bf2ac0e01
Reviewed-by: Leonardo Sobral Cunha <leo.cunha@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
12 years agoMove QAbstractItemModel into a separate directory.
Stephen Kelly [Sat, 10 Dec 2011 01:22:06 +0000 (02:22 +0100)]
Move QAbstractItemModel into a separate directory.

Change-Id: Ib505520dd5b52743634befbf3f148d7f8c21ec44
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoCompile fix - qxcbconnection.cpp (‘Display’ was not declared)
Thorbjørn Lund Martsum [Thu, 8 Dec 2011 06:47:40 +0000 (07:47 +0100)]
Compile fix - qxcbconnection.cpp (‘Display’ was not declared)

To avoid getting
qxcbconnection.cpp:89:29: error: ‘Display’ was not declared in this scope

Platform linux - configured with
./configure -nokia-developer -nomake examples -nomake demos -nomake tests -no-gtkstyle -no-v8

Change-Id: Ief7315bb8aa67c6454cdeddb1c02e60ea79801b5
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoUse QVarLengthArray in QXcbConnection.
Robin Burchell [Wed, 7 Dec 2011 19:58:04 +0000 (20:58 +0100)]
Use QVarLengthArray in QXcbConnection.

There's no need in using a QList here, since it's never passed around anywhere;
the reference counting is just unnecessary overhead.

Change-Id: I92107c69f7338acc396e2ac4a69123c6a2becaed
Reviewed-by: John Brooks <john.brooks@dereferenced.net>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoAdd the .exe suffix to executables on Windows.
Stephen Kelly [Mon, 12 Dec 2011 11:57:17 +0000 (12:57 +0100)]
Add the .exe suffix to executables on Windows.

Change-Id: I257bb7d62ae18ea529df6b10694fcf25eedc83f4
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoMake QApplication::type() set by QGuiApplication.
Frederik Gladhorn [Mon, 12 Dec 2011 13:12:15 +0000 (14:12 +0100)]
Make QApplication::type() set by QGuiApplication.

QApplication::type used to be static and set by the
QApplicationPrivate constructors.

In QCoreApplication we have the new application_type that should take its place.
QApplication::GuiServer is deprecated (since it doesn't have any functionallity
any more with QWS being removed).

This change prepares QStyle to be called from a QQuickCanvase based application
that does not inherit the QWidget version of QApplication.

Change-Id: Ifbe992e25f1e5821fa047b6eb915f75fa675ab97
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
12 years agov8: give sensible error message if v8 sources are not checked out
Rohan McGovern [Mon, 12 Dec 2011 00:26:22 +0000 (10:26 +1000)]
v8: give sensible error message if v8 sources are not checked out

A common error for developers attempting to build qtbase for the first
time is to miss cloning the v8 submodule.

Let qmake check for existence of the sources so we get a sensible error
at qmake time, rather than a relatively inscrutable error at make time.

Change-Id: I70b478e63c962263dac4f2ddccb377b4c9777ceb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoAdd a wayland-scanner rule to qmake
Jørgen Lind [Mon, 12 Dec 2011 11:55:23 +0000 (12:55 +0100)]
Add a wayland-scanner rule to qmake

Change-Id: I142ca2ba2a817745b818d2740d9ae8e0eaf3b797
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
12 years agoAdd touchEvent() virtual to QWindow.
Laszlo Agocs [Mon, 12 Dec 2011 15:24:33 +0000 (17:24 +0200)]
Add touchEvent() virtual to QWindow.

Unlike keyPressEvent(), mousePressEvent(), etc. the touch events had
no equivalent so one had to fall back to reimplementing event() or
using an event filter. This is now corrected by introducing
touchEvent(). Touch events are finally becoming a first-class citizen
in Qt 5.

Change-Id: Ia2044030154fd5b1b5384f08a3cb1749b798435f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoRemove symbian cases from library and plugin loading code.
Stephen Kelly [Mon, 12 Dec 2011 12:56:56 +0000 (13:56 +0100)]
Remove symbian cases from library and plugin loading code.

Change-Id: I381873449b1520152cd2a7aede9c7253e110ef7a
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
12 years agoCocoa: Add autorelease pools.
Morten Johan Sørvig [Mon, 12 Dec 2011 08:52:40 +0000 (09:52 +0100)]
Cocoa: Add autorelease pools.

A couple of cases where we call Cococa APIs without
having an autorelease pool in place surfaced after
removing the global autorelease pool in 1a218a7.
(This happens when when Qt API is called before
app.exec() has started the Cocoa event loop.)

Add local autorelease pools to prevent memory leaks.

Change-Id: I0c4be3ff102aaff4539235857f95ab29fdbc9d70
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@nokia.com>
12 years agoAdd QVarLengthArray::length().
Robin Burchell [Fri, 9 Dec 2011 16:21:12 +0000 (17:21 +0100)]
Add QVarLengthArray::length().

This also adds a unit test for length()/count()/size(), since there wasn't one
testing it explicitly.

Change-Id: Ifb7f113aa97beef5f76e5fb246eb38495344b0ad
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Marco Schmidt <Marco.Schmidt@Taugamma.de>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agoRemove unused member variables from private class.
Richard Moore [Sun, 11 Dec 2011 20:17:12 +0000 (20:17 +0000)]
Remove unused member variables from private class.

These aren't used, and so they shouldn't be there.

Change-Id: Id4a08d90836c45c140d811b8eca07756e14c56e5
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
12 years agoRemove template <class T> class QRingBuffer
João Abecasis [Mon, 12 Dec 2011 12:37:51 +0000 (13:37 +0100)]
Remove template <class T> class QRingBuffer

.. as it is declared and defined in .cpp file but never used.

Change-Id: I7b72daf62712b4ec25717afbe2b7f0792ffa2a85
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoWindows-DnD: Fix cursors.
Friedemann Kleint [Mon, 12 Dec 2011 14:06:23 +0000 (15:06 +0100)]
Windows-DnD: Fix cursors.

Re-add pixmaps that were removed from QGuiApplication.

Change-Id: I9936da115e494cf816116159419d40840176afd5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoWindows: Fix clipboard test.
Friedemann Kleint [Mon, 12 Dec 2011 13:38:45 +0000 (14:38 +0100)]
Windows: Fix clipboard test.

Return the QMimeData set on the Ole object if we own it.

Change-Id: I08de0968e04a7356fed1255feb495f7b85e7a6f8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoSilence -Woverloaded-virtual warnings in QRasterPaintEngine
Bradley T. Hughes [Mon, 12 Dec 2011 14:00:30 +0000 (15:00 +0100)]
Silence -Woverloaded-virtual warnings in QRasterPaintEngine

The QRasterPaintEngine::updateState() is not a reimplementation of
QPaintEngineEx::updateState(const QPaintEngineState &state). Rename the
updateState() function to updateRasterState(), and ensureState() to
ensureRasterState(). These names were chosen to match the class name
QRasterPaintEngineState on which these functions operate.

../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengine_raster_p.h:271:10:
warning: 'QRasterPaintEngine::updateState' hides overloaded virtual
function [-Woverloaded-virtual]
    void updateState();
         ^
../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengineex_p.h:202:18:
note: hidden overloaded virtual function 'QPaintEngineEx::updateState'
declared here
    virtual void updateState(const QPaintEngineState &state);
                 ^

Change-Id: Ie9ff0230019b383d53757029c6b2194dfc6a2664
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoSilence -Woverloaded-virtual warnings in QBlitterPaintEngine
Bradley T. Hughes [Mon, 12 Dec 2011 13:48:21 +0000 (14:48 +0100)]
Silence -Woverloaded-virtual warnings in QBlitterPaintEngine

QPaintEngineEx declares several virtual clip() overloads, but clip()
with no argument does not reimplement any of these. Rename it to
clipData() (to make the name of the return value more closely).

../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengine_blitter_p.h:104:29:
warning: 'QBlitterPaintEngine::clip' hides overloaded virtual function
[-Woverloaded-virtual]
    inline const QClipData *clip(){return raster()->d_func()->clip();}
                            ^
../../include/QtGui/5.0.0/QtGui/private/../../../../../src/gui/painting/qpaintengineex_p.h:157:18:
note: hidden overloaded virtual function 'QPaintEngineEx::clip' declared
here
    virtual void clip(const QPainterPath &path, Qt::ClipOperation op);
                 ^

Change-Id: Ifd7c494e2c999d743216cfb4c27a9c3ccf66f2a9
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
12 years agoFix NTLM authentication with email address
Shane Kearns [Fri, 9 Dec 2011 12:06:04 +0000 (12:06 +0000)]
Fix NTLM authentication with email address

When using "user@dns-domain" for NTLM authentication, the whole string
should be sent as the username, and the domain should be set to an
empty string.
The domain sent by the server is still reflected if the username
does not contain an '@' character.

Manually tested using MS IIS on a domain-joined PC.

Task-number: QTBUG-19894
Task-number: ou1cimx1#949951
Change-Id: Ie1f81172e71cb7cce7b8c909062be990c24aea47
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
12 years agoFix null pointer dereference in NTLM authentication
Shane Kearns [Fri, 9 Dec 2011 11:49:50 +0000 (11:49 +0000)]
Fix null pointer dereference in NTLM authentication

If NTLM authentication is required for the URL with an empty path,
then QNetworkAuthenticationCache::findClosestMatch(url.path()) returns 0.
e.g. "http://10.1.2.3".
Return a default constructed credential in this case.

Change-Id: I84ad3b308ee3f74fbbac9ad0f11dbdc66047b50b
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
12 years agoDelay masking the last character in Password echo mode.
Andrew den Exter [Mon, 25 Jul 2011 03:25:15 +0000 (13:25 +1000)]
Delay masking the last character in Password echo mode.

If QT_GUI_PASSWORD_ECHO_DELAY is defined in qplatformdefs.h with an
integer value in milliseconds, QLineEdit and TextInput will display
the last character entered unmasked for that delay period and then
mask the character as normal.  If QT_GUI_PASSWORD_ECHO_DELAY is
not defined then the behaviour is unchanged.

Task-number: QTBUG-17003
Task-number: QTBUG-20719
Reviewed-by: Martin Jones
(cherry picked from commit f9e7aee2019d321edd655bfde7de43f20a106971)

Change-Id: If69b384636e3775ad7898b8ffc441011c21abe98
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoFix TextInput test failures.
Andrew den Exter [Mon, 5 Sep 2011 07:42:08 +0000 (17:42 +1000)]
Fix TextInput test failures.

emitCursorPositionChanged won't emit cursorPositionChanged if the
cursor position hasn't changed but that doesn't mean the micro focus
hasn't changed, so emit updateMicroFocus changed when
cursorPositionChanged isn't.

Task-number: QTBUG-21017
Task-number: QTBUG-21011
Task-number: QTBUG-20719
Change-Id: I86344621151dbeba0eebc67fbc786a8da76b7021
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoMove cursorDelegate with the mouse selection of read only text input.
Andrew den Exter [Thu, 4 Aug 2011 00:58:26 +0000 (10:58 +1000)]
Move cursorDelegate with the mouse selection of read only text input.

Task-number: QTBUG-20719
Task-number: QTBUG-19109
Reviewed-by: Martin Jones
Change-Id: I2cec51eb5b01dc5750614edf5b39d6a3da661fc6
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoMake it easier to select words at the start of a line.
Andrew den Exter [Wed, 24 Aug 2011 01:26:29 +0000 (11:26 +1000)]
Make it easier to select words at the start of a line.

QTextControl's word selection will only include a word if the cursor
position is past the mid point of the word. This can make it
difficult to select words near the edges of the screen on touch
devices.  For the TextEdit word selection mode select a word ignore
the relative position within a word.

Task-number: QT-5206
Task-number: QTBUG-20719
Change-Id: I77e71e01d8021d66ada785cf894ba876faccefdf
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
12 years agoUpdate .gitignore for tests/auto/corelib/io/qresourceengine
Bradley T. Hughes [Mon, 12 Dec 2011 08:03:08 +0000 (09:03 +0100)]
Update .gitignore for tests/auto/corelib/io/qresourceengine

The test generates the runtime_resource.rcc data file at build time. Add
this to .gitignore.

Change-Id: Ief4057072b28499049147b86f166523b71afe269
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
12 years agoStore the primary status in the touch point flags.
Laszlo Agocs [Wed, 30 Nov 2011 17:19:27 +0000 (19:19 +0200)]
Store the primary status in the touch point flags.

For some reason the primary bit has previously been encoded in the
touch point state, even though it has nothing to do with the regular
states like Pressed, Released, etc.

The value is now stored in the recently introduced flags member of the
touch points. This also reduces the need for error-prone internal
masking of the state value.

The structure used by QWindowSystemInterface::handleTouchEvent also
becomes cleaner because the primary status can now be set in the flags
member and the isPrimary bool can be dropped.

Change-Id: I1da2cb99154afd97e1e3a5943ab115cae3a8232f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
12 years agoCheck driver validity before using it
Honglei Zhang [Thu, 8 Dec 2011 13:38:25 +0000 (15:38 +0200)]
Check driver validity before using it

Even though it is stated in the documentation that the SQL driver must
remain valid during the life time of QSqlQuery, there are users who don't
follow the rule. It's common that the destructor of QSqlQuery is called
after the driver is already deleted. This fix checks the validity of
the SQLite driver before QSqliteResult uses it in destructor.

Task-number: QTBUG-16967
Change-Id: If0f52113f12e14102da1671cd6e12bdaa267114f
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
12 years agoRevert "Remove unused overload of QTest::qExec."
Friedemann Kleint [Fri, 9 Dec 2011 15:16:46 +0000 (16:16 +0100)]
Revert "Remove unused overload of QTest::qExec."

The overload is used in Qt Creator
(see src/libs/extensionsystem/pluginmanager.cpp).
The use case here is an application whose internal
QObjects can be tested by passing a command line parameter.

For this use case, it is inconvenient to have to allocate
memory and create a char argv[]- array.

This reverts commit ad80d42f8eefd72d9297c272139acc70e24bfa13.

Change-Id: I2a2f91e2840100fd62743f6d03b33005d67b18f8
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
12 years agoSilence -Woverloaded-virtual warnings in QFileDialog
Bradley T. Hughes [Fri, 9 Dec 2011 13:36:33 +0000 (14:36 +0100)]
Silence -Woverloaded-virtual warnings in QFileDialog

The QPaintDevice::init() virtual, reimplemented in QWidget, is hidden by
these declarations, and clang (and gcc with -Woverloaded-virtual) warns
about this. There is no need to overload the init() name, use more
descriptive names instead.

dialogs/qsidebar_p.h:124:10: warning: 'QSidebar::init' hides overloaded
virtual
      function [-Woverloaded-virtual]
    void init(QFileSystemModel *model, const QList<QUrl> &newUrls);
         ^
dialogs/qfiledialog_p.h:303:10: warning: 'QFileDialogLineEdit::init'
hides
      overloaded virtual function [-Woverloaded-virtual]
    void init(QFileDialogPrivate *d_pointer) {d_ptr = d_pointer; }
         ^
dialogs/qfiledialog_p.h:314:10: warning: 'QFileDialogComboBox::init'
hides
      overloaded virtual function [-Woverloaded-virtual]
    void init(QFileDialogPrivate *d_pointer);
         ^
dialogs/qfiledialog_p.h:330:10: warning: 'QFileDialogListView::init'
hides
      overloaded virtual function [-Woverloaded-virtual]
    void init(QFileDialogPrivate *d_pointer);
         ^
dialogs/qfiledialog_p.h:342:10: warning: 'QFileDialogTreeView::init'
hides
      overloaded virtual function [-Woverloaded-virtual]
    void init(QFileDialogPrivate *d_pointer);
         ^
kernel/qwidget.h:682:10: note:
      hidden overloaded virtual function 'QWidget::init' declared here
    void init(QPainter *painter) const;
         ^

Change-Id: I7a317a551b92fde966e61958dcaf25dea94d69b4
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoRemove -keyevent-verbose option for autotests.
Jason McDonald [Mon, 12 Dec 2011 05:55:42 +0000 (15:55 +1000)]
Remove -keyevent-verbose option for autotests.

This option does nothing -- the only function that checks if the option
has been set is never called.  This appears to have been the case ever
since testlib was imported into the Qt repository in October 2005.

Change-Id: I837aa957e2d8bd47c3d1c551f1b94d4374daa25e
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoStop using QTest::qt_snprintf() in testlib.
Jason McDonald [Mon, 12 Dec 2011 02:23:02 +0000 (12:23 +1000)]
Stop using QTest::qt_snprintf() in testlib.

After the previous commit, QTest::qt_snprintf() is equivalent to
qsnprintf(), so just use that instead.

Change-Id: I89ad6e3749ba5efb1926b0b618a904e8baca9f52
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoImprove definition of QTEST_NO_SPECIALIZATIONS
Jason McDonald [Mon, 12 Dec 2011 05:22:02 +0000 (15:22 +1000)]
Improve definition of QTEST_NO_SPECIALIZATIONS

Remove the part of the definition that applies to gcc versions <= 2.x
as these versions are not supported by Qt5.

Change-Id: Icee6b51ffe78fa30fd7193ef96b6ce0484b8fcae
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoFilter unprintable chars out of all test output.
Jason McDonald [Mon, 12 Dec 2011 01:46:45 +0000 (11:46 +1000)]
Filter unprintable chars out of all test output.

Previously, unprintable characters were filtered out of test output
while the output strings were being formatted by either qt_snprintf() or
qt_asprintf().  Any strings not formatted by one of those functions
weren't filtered at all, and any strings passed more than once would be
filtered more than once.

This commit separates the filtering of output strings from their
formatting, leaving the filtering until just before the strings are
written to the output stream.  For now, the filtering is done by a
protected method of QAbstractTestLogger, but this could easily be
changed to a virtual method in future to allow different filtering
for loggers with different output character sets.

Change-Id: Ia4bb49cd10d37c84af75d2cf58325d27f0e16d99
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoClean up includes in QStringListModel.
Stephen Kelly [Sat, 10 Dec 2011 18:18:48 +0000 (19:18 +0100)]
Clean up includes in QStringListModel.

Change-Id: Idb7167d1206925179fa812b6e3643ed9172f8479
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoRemove QMetaObject guards and deprecate QPointer.
Bradley T. Hughes [Tue, 22 Nov 2011 13:45:35 +0000 (14:45 +0100)]
Remove QMetaObject guards and deprecate QPointer.

QWeakPointer is superior and preferred.

Remove QMetaObject::addGuard(), QMetaObject::changeGuard(),
QMetaObject::removeGuard(), and QObjectPrivate::clearGuards().

Implement QPointer using QWeakPointer<T> instead. This changes the
behavior of QPointer in 2 ways:

- During destruction of a QWidget. Previously, the destructor of QWidget
would reset all QPointers so that they would return zero when destroying
children. Update tst_QPointer to account for this change.

- When constructing a QSharedPointer to take ownership of an object
after a QPointer is already tracking the object. Previously, the shared
pointer construction would not be affected by the QPointer, but now
that QPointer is implemented using QWeakPoiner, constructing the
QSharedPointer will cause an abort(). Fix tst_QSharedPointer by
removing the use of QPointer in the objectCast() test.

These behavior changes are documented in the QPointer class
documentation and in the changes file.

Change-Id: I92d0276219c076ece7bcb60f6e1b9120ce4f5747
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoDon't overload the meaning of QObjectData::wasDeleted
Bradley T. Hughes [Fri, 9 Dec 2011 09:58:14 +0000 (10:58 +0100)]
Don't overload the meaning of QObjectData::wasDeleted

The union in QObjectPrivate of declarativeData and
currentChildBeingDeleted shouldn't use wasDeleted to determining the
meaning of the unioned pointer. Instead, add
QObjectData::isDeletingChildren, set that in
QObjectPrivate::deleteChildren(), and only use the
currentChildBeingDeleted member when the parent's isDeletingChildren is
set.

This solves aborts seen in autotests when widgets are deleting window
children. The abort comes from QWeakPointer on the parent in the child's
close event handler (the abort checks that wasDeleted is not set).

Change-Id: I1a58449159d4a5312aad8ba12e559d05d6c43d93
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoFix typo in APIDocs
Thomas Zander [Fri, 9 Dec 2011 13:01:32 +0000 (14:01 +0100)]
Fix typo in APIDocs

The name of an enum was slightly misspelled in the API docs, so lets
make sure its now copy-paste friendly.

Change-Id: I5da5230ab29743b63bf238a379891c98ac9d5039
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Thomas Zander <zander@kde.org>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoMake headers safe with QT_NO_CAST_FROM_BYTEARRAY.
Stephen Kelly [Fri, 9 Dec 2011 00:18:07 +0000 (01:18 +0100)]
Make headers safe with QT_NO_CAST_FROM_BYTEARRAY.

Change-Id: I0f9dfee505ebc48d9c586c010ad75877a7387836
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
12 years agoRemove QWidget dependency from QTouchEvent.
Laszlo Agocs [Wed, 30 Nov 2011 16:51:00 +0000 (18:51 +0200)]
Remove QWidget dependency from QTouchEvent.

QWidget *widget() is replaced with QObject *target().

Change-Id: Ib2c860480764410cf1527662e89f352ff688b32a
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRemove event type parameter from handleTouchEvent.
Laszlo Agocs [Wed, 30 Nov 2011 13:48:54 +0000 (15:48 +0200)]
Remove event type parameter from handleTouchEvent.

Requiring platform and generic plug-ins to pass TouchBegin,
TouchUpdate, or TouchEnd is unnecessary. The type can be easily
deduced from the touch point states. In fact handleTouchEvent already
collected the combined point states, it was just not utilized until
now.

Change-Id: Icf3c787fefdebc51609a763bc4286c18a0b6aac2
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoCorrectly reimplement QPlatformCursor::pos() in QCocoaCursor
Bradley T. Hughes [Fri, 9 Dec 2011 12:40:47 +0000 (13:40 +0100)]
Correctly reimplement QPlatformCursor::pos() in QCocoaCursor

QPlatformCursor::pos() is a const function, the reimplementation should
be as well.

Change-Id: I7e37e41086e3b329dc31ebc060fcb0915771d884
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoFixes for tst_QTemporary(File|Dir)::nonWritableCurrentDir
João Abecasis [Thu, 8 Dec 2011 14:51:19 +0000 (15:51 +0100)]
Fixes for tst_QTemporary(File|Dir)::nonWritableCurrentDir

- Check path/fileName is empty upon failure, variable was unused
- Use /home instead of /, as / is writable by admins on Mac

Change-Id: I705471fda8b73843e98b30eb52aa0a73634ec075
Reviewed-by: David Faure <faure@kde.org>
12 years agoExtend touch events.
Laszlo Agocs [Sun, 27 Nov 2011 15:42:23 +0000 (17:42 +0200)]
Extend touch events.

The capability flags indicate which information is valid in the touch
points. Previously there was no way to tell if e.g. the value returned
by pressure() is actually the value provided by the driver/device or
it is just something bogus due to pressure not being supported.

The points' flags return information about the individual touch
points. One use case is to differentiate between touches made by
finger and pen.

Velocity, if available, is now also exposed.

Each touch point can now contain an additional list of "raw"
positions. These points are not reported individually but are taken
into account in some way by the underlying device and drivers to
generate the final, "accurate" touch point. In case the underlying
drivers expose these additional positions, they are made available in
the lists returned by the touch points' rawScreenPosition().

The raw positions are only available in screen coordinates to prevent
wasting time with mapping from global positions in applications that
do not use this data. Instead, apps can query the QWindow to which the
touch event was sent via QTouchEvent::window() and can call
mapFromGlobal() manually if they need local raw positions.

The capability and device type information is now held in a new
QTouchDevice class. Each touch event will contain only a pointer to
one of the global QTouchDevice instances. On top of type and
capability, the new class also contains a name which can be used to
differentiate between multiple touch input devices (i.e. to tell from
which one a given QTouchEvent originates from).

The introduction of QTouchDevice has three implications: The
QTouchEvent constructor and QWindowSystemInterface::handleTouchEvent
need to be changed (to pass a QTouchDevice pointer instead of merely a
device type value), and each platform or generic plug-in is now
responsible for registering one or more devices using the new API
QWindowSystemInterface::registerTouchDevice.

Change-Id: Ic1468d3e43933d8b5691d75aa67c43e1bc7ffe3e
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRemove QtWidgets dependency from QTcpSocket autotest
Shane Kearns [Thu, 8 Dec 2011 15:04:45 +0000 (15:04 +0000)]
Remove QtWidgets dependency from QTcpSocket autotest

QMessageBox was being used to test nested event loops. This has been
changed to use QEventLoop directly.
Also, there was an unnecessary use of QPushButton to trigger a test
case, which has been removed.

As a result, 3 test cases can be run on VXWORKS, and one more test case
on Windows that were previously skipped.

Change-Id: Ic65ed441cd37d242f89df3ef3b8638a1458d9cf3
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agoFix unstable test case
Shane Kearns [Thu, 8 Dec 2011 13:49:36 +0000 (13:49 +0000)]
Fix unstable test case

tst_QTcpSocket::disconnectWhileLookingUp required the host lookup +
connect + disconnect procedure to complete in <50ms, which is not always
true.
When disconnecting (rather than aborting with close()), wait for the
disconnection to complete with a timeout of 5 seconds.

Task-number: QTBUG-21043
Change-Id: I3b59abf9a8eb2c6d99416e1a8ec6b528885b656e
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agoQProcess-test: Fix executable location on Windows.
Friedemann Kleint [Fri, 9 Dec 2011 08:59:30 +0000 (09:59 +0100)]
QProcess-test: Fix executable location on Windows.

The executable needs to be in the test directory
as it expects it sub-executables from there.

Breakage introduced by 3385fb91e1e55e1bfa1f78dfb8ce2e9f3fdaedef

Change-Id: Ic1f3db70851f65e2f12041c3a16cb8f0b7bdf35e
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
12 years agoDo not assert on invalid model index.
Frederik Gladhorn [Thu, 8 Dec 2011 12:16:22 +0000 (13:16 +0100)]
Do not assert on invalid model index.

No need to crash here, just warn.
This will happen when asking a table for out of range indexes.

Change-Id: Ida83604bd587390a3b54fbed68f98dab8038c757
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoPromote openStandardStreams sub-tests to top level
João Abecasis [Thu, 8 Dec 2011 14:30:59 +0000 (15:30 +0100)]
Promote openStandardStreams sub-tests to top level

Commit a72468e820c2922540737c053eef27d033c2e77b split the test into two
functions, but kept them combined in a single slot for QTest to invoke.

That being the case, we might as well have them as test functions of
their own right. Should work nicer with test failures, skips and such.

Change-Id: I62c1fc7777c08b3e87a5903632d73dc1e1d97e1a
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoAdd support for three new X11 keys
Albert Astals Cid [Wed, 7 Dec 2011 22:04:07 +0000 (23:04 +0100)]
Add support for three new X11 keys

New keys are: XF86XK_TouchpadToggle, XF86XK_TouchpadOn and XF86XK_TouchpadOff

Change-Id: I51c0330213def093adf959d4065ee6d7c1f66d76
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoQPixmap test: Re-enable tests of Windows bitmap/icon conversion.
Friedemann Kleint [Thu, 8 Dec 2011 08:46:49 +0000 (09:46 +0100)]
QPixmap test: Re-enable tests of Windows bitmap/icon conversion.

- QPixmap::to/fromWinHICON/BITMAP() became free internal
  functions (see b8d330904b279de57d70caef70ab2d2a6770f0cc)
- Improve QImage check function similar to
  11732d133b6a1e367b43d6a2853b3e297eafbf9f

Change-Id: I80ff066964ce6c339a6b9bfa5a0e10421dca162a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoTests: Fix the language change test.
Friedemann Kleint [Thu, 8 Dec 2011 11:38:48 +0000 (12:38 +0100)]
Tests: Fix the language change test.

- Use correct overload for QTranslator::translate()
- Fix LTR source text
- Use QDir::TempDir correctly (check for slash).
- Do not copy executable on Windows (which is locked), use
  arbitrary data instead.
- Use Q_OS_MAC

Task-number: QTBUG-21402
Change-Id: I6ba1c7c764d4c847278eaff9a96c8cd312ac204d
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoQFile-test: Do not fail when run with redirected stdout/stderr.
Friedemann Kleint [Thu, 8 Dec 2011 15:11:13 +0000 (16:11 +0100)]
QFile-test: Do not fail when run with redirected stdout/stderr.

Check whether stdout/stderr is sequential.

Change-Id: Ia6311e265f0da03dce5b05d78a2058e0c2098bbf
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
12 years agoQProcess-Test: Improve error handling.
Friedemann Kleint [Thu, 8 Dec 2011 16:00:20 +0000 (17:00 +0100)]
QProcess-Test: Improve error handling.

In case a subprocess fails to start.

Change-Id: I1372c07de8f3580a8e7aadd6874da15bf273ac53
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agoRe-enable 'check' target for tests/auto/gui on Mac OS X
Bradley T. Hughes [Thu, 8 Dec 2011 11:08:12 +0000 (12:08 +0100)]
Re-enable 'check' target for tests/auto/gui on Mac OS X

Failing tests are marked with CONFIG+=insignificant_test.
tst_QTextLayout currently asserts, so it has been disabled to prevent
destabilization of the CI system.

Change-Id: I7bd836ee14085689c8a0f0ce8e3c80d81a55eb94
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
12 years agoForward the contents of the parents argument through this proxy.
Stephen Kelly [Fri, 25 Nov 2011 12:54:38 +0000 (13:54 +0100)]
Forward the contents of the parents argument through this proxy.

Change-Id: Ifabc2a7deec8ea045bf9a9f46fb3a97410dd33f2
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoNotify about moves in the source model more efficiently.
Stephen Kelly [Thu, 24 Nov 2011 22:05:22 +0000 (23:05 +0100)]
Notify about moves in the source model more efficiently.

Change-Id: I5ea2a2dddc1b39a3d2b405bda815f42df7c07c75
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoRemove wacomcfg.h from 3rdparty
João Abecasis [Wed, 7 Dec 2011 16:04:41 +0000 (17:04 +0100)]
Remove wacomcfg.h from 3rdparty

The last reference to this file was removed in commit a2337f79.

With the new QPA architecture there is no longer a reason why this
should be needed in qtbase.

Change-Id: I84765eca066fd6bdd1dabac32e866c58a39fe183
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoFix failing setSocketDescriptor test in QTcpSocket
Shane Kearns [Fri, 2 Dec 2011 11:14:47 +0000 (11:14 +0000)]
Fix failing setSocketDescriptor test in QTcpSocket

setSocketDescriptor fails because socket is in the wrong state.
This is timing dependent, if qt-test-server is still in the DNS cache
then the test failed.
 - clear the DNS cache to avoid the host lookup state being skipped.

Change-Id: If159d514b1aa9b62a4834f6352d5e7b0a00a5724
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
12 years agotestProcessSpacesArgs fixed
Joerg Bornemann [Thu, 8 Dec 2011 10:25:38 +0000 (11:25 +0100)]
testProcessSpacesArgs fixed

Target names with spaces must be quoted.

Change-Id: I913ef386353fc75991c8db4e3205ab511fc1f1a9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoRemove the backwards compatibility signal emissions when moving items.
Stephen Kelly [Thu, 24 Nov 2011 22:21:36 +0000 (23:21 +0100)]
Remove the backwards compatibility signal emissions when moving items.

Change-Id: I29a44835d3397c1dbf37026daf0c5234dae770e0
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoImprove/cleanup qtemporarydir (and qtemporaryfile) unit tests
David Faure [Thu, 8 Dec 2011 14:32:27 +0000 (15:32 +0100)]
Improve/cleanup qtemporarydir (and qtemporaryfile) unit tests

To follow the comments in the review by João Abecasis.

Change-Id: Ie566705d3b4071b8628d269246aadcde4866f34f
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
12 years agoQTemporaryDir/File: cleanups (static internal function, QScopedPointer)
David Faure [Thu, 8 Dec 2011 15:00:33 +0000 (16:00 +0100)]
QTemporaryDir/File: cleanups (static internal function, QScopedPointer)

Change-Id: I61311d151e2ae94a22df58297bbfb7a636a01c4a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoMerge QColorDialog::getColor() overloads.
Robin Burchell [Tue, 6 Dec 2011 10:41:02 +0000 (11:41 +0100)]
Merge QColorDialog::getColor() overloads.

Symbian-specific code was removed as a side effect of the merge.

Change-Id: I01d28b2aa2fef16ce3988382c2b2a0436c46227c
Reviewed-by: John Brooks <john.brooks@dereferenced.net>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
12 years agoFix QTemporaryDir unittest on Mac OS X
David Faure [Thu, 8 Dec 2011 13:49:31 +0000 (14:49 +0100)]
Fix QTemporaryDir unittest on Mac OS X

mkdtemp(10*X) replaces all 10 chars on Mac, while on linux it only
replaces the last 6. Adjusted the too-strict tests to allow for
both possibilities.

Change-Id: Ie6d57bd4947254ad7a39e75ac0e8881cebeaa428
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agodocument the -force-asserts switch
Harald Fernengel [Thu, 8 Dec 2011 14:51:37 +0000 (15:51 +0100)]
document the -force-asserts switch

Change-Id: I6af833625d94be98ffebbdecff725f4669e7cbc6
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
12 years agoCocoa: remove autoreleasepool in QCocoaIntegration
Morten Johan Sorvig [Thu, 8 Dec 2011 09:54:49 +0000 (10:54 +0100)]
Cocoa: remove autoreleasepool in QCocoaIntegration

This one was far to long lived and would delay
releases until application shutdown.

We might get more "no autoreleasepool in place"
warnings now, these should be fixed by adding local
auto release pools.

Change-Id: Ia7a46ab05fb1937154997d0c47b8899d2a0cef65
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@nokia.com>
12 years agoRemove unused QMapData::createData()/node_create() overloads.
Robin Burchell [Wed, 7 Dec 2011 12:40:29 +0000 (13:40 +0100)]
Remove unused QMapData::createData()/node_create() overloads.

Change-Id: I79010e1ecfdfe579d996db65681ab1559598f3ce
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
12 years agoQPixmap test: Make lenientCompare() more verbose.
Friedemann Kleint [Wed, 7 Dec 2011 15:55:53 +0000 (16:55 +0100)]
QPixmap test: Make lenientCompare() more verbose.

- Output cause of failure
- Streamline code

Change-Id: I597e8cf0178c2417ea55c2319398a48d839b4474
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoQTestlib/Selftest: Fix Windows.
Friedemann Kleint [Wed, 7 Dec 2011 15:45:14 +0000 (16:45 +0100)]
QTestlib/Selftest: Fix Windows.

- Do not run with empty environment. At least PATH
  is required at least (Qt + MSVC/MinGW runtime)
- Account for MSVC's different formatting of double numbers.

Change-Id: Ic7b1cf4a16a88c5384347b2651b011ac13c92d70
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
12 years agoCreate a class to contain accessibilty enums.
Frederik Gladhorn [Wed, 30 Nov 2011 16:07:39 +0000 (17:07 +0100)]
Create a class to contain accessibilty enums.

This is needed in order to expose the enums to qml.
Do not inherit QAccessible.

Change-Id: I220a0ea3add2d790e4fa6e93ce3deda762859e1a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
12 years agoAvoid variable shadowing in qobject_impl.h
Kent Hansen [Wed, 7 Dec 2011 11:29:28 +0000 (12:29 +0100)]
Avoid variable shadowing in qobject_impl.h

Some people like to build their Qt-based projects with -Wshadow
-Werror, and since qobject_impl.h is included from a public Qt
header, their build breaks.

Change-Id: I5d8a5ee1937092149a18c0ff66a723f5bfc9ffc3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoRemove unused overload of QTest::qExec.
Jason McDonald [Mon, 5 Dec 2011 01:54:03 +0000 (11:54 +1000)]
Remove unused overload of QTest::qExec.

The overload of QTest::qExec() that takes a QStringList is not used
anywhere in Qt's autotests, despite having been in the qtestlib API
since Qt 4.4.

This lack of use most likely derives from the fact that none of the
QTEST_MAIN macros use the overload, and more than 99% of Qt's tests
use those macros to avoid explicitly calling QTest::qExec().

Change-Id: I264b21d7fe1a9f2d565f748cf8bbe32414a73bb0
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoRemove ptmalloc from source tree
João Abecasis [Wed, 7 Dec 2011 14:10:52 +0000 (15:10 +0100)]
Remove ptmalloc from source tree

This malloc-replacement library is marked experimental and disabled by
default. It is also Unix-only.

On linux (GNU C library, actually) ptmalloc graduated to become the
native allocator, according to its webpage (http://www.malloc.de/en/),
making the need to have a copy here significantly lower.

Anyway, there is nothing preventing interested parties from adding this
library to their own setup and very little value in keeping it around in
qtbase.

Change-Id: I2b1c798ca38b59bb767b44d6e5190080ec6ecdf4
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoMake reduce-relocations the default if supported
Lars Knoll [Wed, 7 Dec 2011 08:20:16 +0000 (09:20 +0100)]
Make reduce-relocations the default if supported

reduce-relocations will enable the -bsymbolic-functions
linker option when supported by the linker. This
reduces the amount of relocations required within
a shared library, by binding symbols locally where
possible.

Change-Id: I00ddc408df79097857d6b36f7fc1b0f510362fcc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoAdd "see also" links for QPrinter::{get|set}PageMargins
David Faure [Tue, 6 Dec 2011 13:47:42 +0000 (14:47 +0100)]
Add "see also" links for QPrinter::{get|set}PageMargins

Change-Id: Ie1ec9cf3740818c71a7afbdec2c99f5fa0e81337
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
12 years agoPort externaltests.cpp to QTemporaryDir
David Faure [Wed, 30 Nov 2011 17:02:42 +0000 (18:02 +0100)]
Port externaltests.cpp to QTemporaryDir

Change-Id: I6097ea92dd4b300cb562510e0ea27cee3c01b466
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoRemove unused include
David Faure [Sun, 4 Dec 2011 19:15:33 +0000 (20:15 +0100)]
Remove unused include

Change-Id: Idec12079fdc7ad29e780b537577050f01d8d076c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoQNetworkAccessManager: check the buffer size before allocate
Martin Petersson [Wed, 7 Dec 2011 15:09:29 +0000 (16:09 +0100)]
QNetworkAccessManager: check the buffer size before allocate

The downloadBuffer size should not be larger then the
downloadBufferMaximumSize. I also added a try catch for the allocation
incase we are low on memory, so that we don't crash.

Task-number: QTBUG-23040
Change-Id: Ib9820bc19fc5db994ede20f123f8c167a8d43ff7
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
12 years agoqtbase: Remove QSound.
Friedemann Kleint [Wed, 30 Nov 2011 13:58:53 +0000 (14:58 +0100)]
qtbase: Remove QSound.

Which currently causes tests not to compile on Windows
due to missing symbols in QtWidgets (QSound::QSound() ,etc).

Change-Id: I87f0a403e61c3a67f9a758f114e33db1012e33e8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoCheck we're connected before startClientEncryption()
Richard Moore [Fri, 2 Dec 2011 18:10:59 +0000 (18:10 +0000)]
Check we're connected before startClientEncryption()

The docs say this is required, but we don't check it and instead
segfault right now.

Change-Id: I825b00a312a481c5383af127333c0c4698188348
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
12 years agoqmake: Add object_parallel_to_source config option
Tor Arne Vestbø [Mon, 5 Dec 2011 14:50:43 +0000 (15:50 +0100)]
qmake: Add object_parallel_to_source config option

This solves the problem of two source files in the same project
having the same name, which ends up with colliding object files.
It also solves issues with moving files around in the source tree
when the GNUmake option is used together with gcc_MD_depends,
where the dependency file would end up with a dependency to the
old source location.

We already have object_with_source option, but that does not play
nicely with shadow-builds. The new option tries to keep the same
hirarcy in the output dir (while still respecting OBJECTS_DIR),
as the sources. Any source with a path outside of the root project
directory (absolute or relative, ../../foo.cpp), will be put inside
the objects directory with the full path appended.

Change-Id: I0c96291974f4801f4c55a26485d512b15c144c00
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
12 years agoSet QMAKE_*_VERSION_OVERRIDE for all modules.
Rohan McGovern [Tue, 6 Dec 2011 07:44:59 +0000 (17:44 +1000)]
Set QMAKE_*_VERSION_OVERRIDE for all modules.

On Windows, qmake searches for and uses the highest numbered available
version of each requested library, or a version with no number if no
libraries were found.  This meant that qmaking a library's consumer
before qmaking the library itself could result in the consumer
incorrectly attempting to link against $${LIB}.lib rather than the
correct $${LIB}5.lib (for example).

QMAKE_$${LIB}_VERSION_OVERRIDE is the way to work around this.

Previously, a hardcoded list of libraries had version overrides set up
on Windows, but the qmake order issue affects all libraries, not just
these.  Therefore, handle it for all modules.

Change-Id: I83b4646e3819f525193d1fc065b0d0e65b3be99f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoBetter handling of GLX / EGL errors.
Samuel Rødal [Tue, 6 Dec 2011 11:55:41 +0000 (12:55 +0100)]
Better handling of GLX / EGL errors.

If context creation fails, try again without a shared context. Added
QPlatformOpenGLContext::isSharing() and
QPlatformOpenGLContext::isValid() to propagate whether the platform
context was successfully created with or without sharing.

Change-Id: I37080b645f531fd207946441057be6d3f6be3f6e
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
12 years agoAccessibility: Add Text::DebugDescription
Morten Johan Sorvig [Thu, 1 Dec 2011 20:32:37 +0000 (21:32 +0100)]
Accessibility: Add Text::DebugDescription

Useful for debugging QML accessibility.

Change-Id: I814c64bcc4c6b534666adca5865b1588e4d13f44
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
12 years agoRemove the hacks for having QxmlStream in core and xml
Lars Knoll [Sat, 26 Nov 2011 13:13:57 +0000 (14:13 +0100)]
Remove the hacks for having QxmlStream in core and xml

QXmlStream was moved from QtXml to QtCore for Qt 4.4.
Remove all the hacks that we added to support that move
in a binary compatible way.

Change-Id: Iea348e980b8efce322d5a7510e5b3ab5c3a108ce
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agofixqt4headers: Support renaming from QtDeclarative to QtQuick
Kent Hansen [Mon, 5 Dec 2011 12:08:08 +0000 (13:08 +0100)]
fixqt4headers: Support renaming from QtDeclarative to QtQuick

QtDeclarative was recently split into two modules, with the
QtQuick(2)-specific API moved to QtQuick. While strictly speaking
the old API wasn't "Qt 4", it's more convenient to modify this
script than to create a separate one.

For example, "QtDeclarative/qquickitem.h" will now be changed to
"QtQuick/qquickitem.h".

Change-Id: I50b32d60cfd21e3c49ee4222fbd6116f80eac25b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoUse QTRY_VERIFY to test asynchronous behaviour.
Jason McDonald [Wed, 7 Dec 2011 03:30:37 +0000 (13:30 +1000)]
Use QTRY_VERIFY to test asynchronous behaviour.

QTRY_VERIFY waits for a condition to become true while regularly
processing events.  There is no need for a custom solution to this
problem.

Change-Id: Ia65c90cbdb165b543f5c78f9bac3cfadd77dfb3f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoUse QTRY_VERIFY to test asynchronous behaviour.
Jason McDonald [Wed, 7 Dec 2011 03:26:00 +0000 (13:26 +1000)]
Use QTRY_VERIFY to test asynchronous behaviour.

QTRY_VERIFY waits for a condition to become true while regularly
processing events.  There is no need for a custom solution to this
problem.

Change-Id: Ia23e2fb61cdc5c3a3a8a729cd4356ba930fe7cb7
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoUse VERBATIM where needed in macros.
Stephen Kelly [Tue, 6 Dec 2011 19:24:06 +0000 (20:24 +0100)]
Use VERBATIM where needed in macros.

Forward port of fix for http://cmake.org/Bug/view.php?id=12554

Test fails before and passes after.

Change-Id: I7a3ab2369cb3095c63f9e2a3e604088ebdcc2465
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>