Commit Graph

4050 Commits

Author SHA1 Message Date
Kai Koehne
5da094c1aa TestLib: Ignore trailing space in QTest::ignoreMessage
When comparing expected with actual debug messages, allow the expected
ones to contain a trailing space. This is needed to not break all
autotests in a follow up patch, which will prevent ~QDebug() from
generating a trailing space by default.

Task-number: QTBUG-15256
Change-Id: I7f67393ddfbfe37fde1ca5ef45e4ad7f4b5324b4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Jason McDonald <macadder1@gmail.com>
2013-12-04 13:10:49 +01:00
Nikolai Kosjar
9302169bd5 QtConcurrent: Workaround GCC bug 58800 in median calculation
1) Revert 880b614 for libstdc++ <= 4.7.3 || (4.8.0 >= ... <= 4.8.2)
2) Fix off-by-one error in reverted code for Median::_bufferSize <= 2.

Task-number: QTBUG-35058
Change-Id: I9d226c2806c1cf06c3d5b9c9f371262d2d69bf2b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-12-03 11:45:18 +01:00
Marc Mutz
c70750f536 Stabilize tst_QGraphicsItem
The cursor() test was missing a QTest::moveMouse() before sending of the
mouse event (as all the following subtests do). When run on a desktop with
the panel on the left side of the screen, the mouse pointer would land over
the left item instead of in between them, as assumed by the subtest, and
the following QCOMPARE failed.

Change-Id: Ib74fdf0cfbfbc8ecb79a906610a2da5cb50c89d0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-12-03 11:42:13 +01:00
Friedemann Kleint
d1f9f2125e Stabilize tst_QColumnView::dynamicModelChanges().
Use QTest::qWaitForWindowExposed() and QTRY_COMPARE() instead of
hardcoded timeout.

Task-number: QTBUG-35308
Change-Id: I27eee9932dd3b6087db4ad13b1a4fb184a487f57
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-12-03 11:40:57 +01:00
Tasuku Suzuki
c3c424b384 QSqlQuery::isNull string overload
Introduce isNull overload to take field name as a parameter.

This is corresponding to the commit
7e6e141234

Change-Id: I122f79707d26eaa09c2f38dc31aeee1dac7de33b
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-12-01 23:14:15 +01:00
Frederik Gladhorn
777cdb00e7 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Ibb342cc5fc55ff9a3f4b3ecbd53936b57bc13e63
2013-11-29 15:59:34 +01:00
John Layt
e8a45152b5 QPrinter - Fix OutputFormat when no printers
Currently the QPrinter constructor, setOutputFormat() and
setPrinterName() make bad assumptions about the availability of printers
when configuring NativeFormat which can lead to inconsistent print
engine set-ups leading to crashes in the print dialog, especially on
Windows where a valid DEVMODE is needed.

This change cleans up the init and methods to ensure NativeFormat can
only ever be set if we have both a valid plugin and a valid printer,
if not the PdfFormat is used.  One side-effect of this is that it is
now impossible to set an invalid printer name via QPrinter (but still
able to be done via QPrintEngine if really needed).  Also if no
default printer is set then use the first available one.

This also fixes a bug where setting a new printer name on Windows
reset all the saved settings.

[ChangeLog][Important Behavior Changes] QPrinter no longer allows you
to set an invalid printer name.

Task-number: QTBUG-34345
Task-number: QTBUG-26008
Task-number: QTBUG-26430
Change-Id: I19737e4209d8c8df5817ea83246b3dd0c483ee85
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-29 15:59:00 +01:00
Simon Hausmann
8e04691543 Merge remote-tracking branch 'origin/release' into stable
Change-Id: I2e2bf789b0fe8442ed623bc0c8aef591235cdabe
2013-11-29 11:38:28 +01:00
Simon Hausmann
7c029e83a3 Fix invalid memory read when shutting down QML applications
As the last line in the QObject destructor, we call setParentHelper(0) to
remove ourselves from the parent. In the process of that we also initiate the
QML parentChanged callback. The first thing that parentChanged callback used to
do (but now does it too late, after 26350b5ceafa0ade1328037f6234a7d288eb8f48 in
qtdeclarative) is to check if the object was deleted and then return. We could
re-introduce the check there, but I think it's cleaner to not bother calling
the callback on a dead object in the first place.

Change-Id: Ia4d43b65a9b3744a451b4c312a2d6f9c0e3b67dc
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-29 09:54:47 +01:00
Konstantin Ritt
ad684ff2a7 Add QSystemSemaphore::release() auto-tests
Change-Id: I4c48f9ad8c60307e4b922d6a6b82e03e455f14d9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-11-28 20:33:56 +01:00
Konstantin Ritt
ed9e954f4b QSystemSemaphore: Clear error after successful operation
Change-Id: I5c1021b2329439e3aefaa1c0d9c0b8a298d285de
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-28 16:54:22 +01:00
Jan Arve Saether
66b7e7497c Add test for default (style dependent) spacings
Task-number: QTBUG-35099
Change-Id: If19d3ccf7177dcbecef30b3ba1e16b022a3d54c4
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-11-28 15:29:44 +01:00
David Faure
1c046369e3 tst_qthreadpool: fix memory leak
Task-number: QTBUG-22673
Change-Id: I2e554a2ad0119b5f9ce2d36e4720538af5ef6b82
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-28 09:14:11 +01:00
Kurt Pattyn
76580659e6 tests: fix tst_QSettings on Mac
* Add a check for the case sensitivity of the file system, so that
unit tests can determine whether names of preference files with
different case should generate an error or not.
* Add check for OS X native file format in rainersSyncBugOnMac().

Task-number: QTBUG-32655
Done-with: Liang Qi <liang.qi@digia.com>
Change-Id: I76821653dd4ebc00e20abdbb5b79c1a80290dece
Reviewed-by: Liang Qi <liang.qi@digia.com>
2013-11-27 22:40:14 +01:00
Frederik Gladhorn
4a8273a6fc Merge remote-tracking branch 'origin/stable' into dev
For the conflicts in msvc_nmake.cpp the ifdefs are extended since we
need to support windows phone in the target branch while it is not there
in the current stable branch (as of Qt 5.2).

Conflicts:
	configure
	qmake/generators/win32/msvc_nmake.cpp
	src/3rdparty/angle/src/libEGL/Surface.cpp
	src/angle/src/common/common.pri
	src/corelib/global/qglobal.h
	src/corelib/io/qstandardpaths.cpp
	src/plugins/platforms/qnx/qqnxintegration.cpp
	src/plugins/platforms/qnx/qqnxscreeneventhandler.h
	src/plugins/platforms/xcb/qglxintegration.h
	src/widgets/kernel/win.pri
	tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp
	tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp
	tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp
	tools/configure/configureapp.cpp

Change-Id: I00b579eefebaf61d26ab9b00046d2b5bd5958812
2013-11-26 22:35:48 +01:00
Andrew Knight
1c2be58fec Fix test compilation on WinRT
Tweak a handful of tests which didn't compile on this platform.

Change-Id: I208d9eb289dfb226746c6d0163c3ea752485033b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-11-26 20:29:09 +01:00
John Layt
db4afbef7d QPrinterInfo - Fix isNull() by fixing constructors
The QPrinterInfo copy and QPrinter constructors and the assignment
operator were not taking the shared_null into account, and so any use
of them resulted in a new null QPrinterInfo different to shared_null,
which lead to isNull() always returning true in anything other than
the simplest use case. While fixing this also make the shared_null a
Q_GLOBAL_STATIC.

Task-number: QTBUG-21087

Change-Id: I0beb24088208e9ed58d21ca26b0c8d00b02e5b8f
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-26 18:45:10 +01:00
Marc Mutz
036c5db468 QString: add missing contains(QLatin1String) overload
Since contains() just wraps indexOf(), which has a QLatin1String overload,
add one for contains(), too, for consistency.

[ChangeLog][QtCore][QString] Added QLatin1String overload of contains()

Change-Id: I2acc628a51e00789fb2b90400cf0c523a5b5e65a
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-26 17:15:46 +01:00
Frederik Gladhorn
3061dc4abd Merge remote-tracking branch 'origin/release' into stable
Change-Id: I83ff8f4d7dffd7385013a1bd8a1732a89ee20d56
2013-11-26 10:51:34 +01:00
Olivier Goffart
f805020410 Fix a race that occurred as we unlock the mutex to destroy the functor in ~QObject
When we unlock the mutex, we need to take in account that the Connection
pointed by 'node' may be destroyed in another thread while it is unlocked
Doing  'node->prev = &node'  will make sure that 'node' is actually
updated when it is destroyed.

Setting isSlotObject under the mutex is safer and ensure that no other
thread will attempt to deref the object.

The regression was introduced in 5885b8f775

tst_qobjectrace was updated to catch races arising when we are
connecting with function pointers.

Change-Id: Ia0d11ae8df563dad97eb86993a786b579b28cd03
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-26 08:24:25 +01:00
Dmitry Ashkadov
4a9092eaad Add QVERIFY_EXCEPTION_THROWN macro for testing exceptions using QtTest
New macro QVERIFY_EXCEPTION_THROWN may be used to check that some code
really throws an exception of specified type.

Change-Id: I7cf499c7c37a35407862bc604c6eb862c5f329d3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jason McDonald <macadder1@gmail.com>
2013-11-26 07:37:06 +01:00
Frederik Gladhorn
225526410b Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable 2013-11-22 16:47:35 +01:00
Friedemann Kleint
219455951b Center/position windows in tst_qmenu.
Avoid menus showing up at 0,0 which is a taskbar area when running
Unity.

Task-number: QTBUG-33972
Change-Id: I156eec78248cec1708adf6bcf2e9ddcc98b7d8c4
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-11-21 21:06:53 +01:00
Graham Coleman
92b2275c3d remove finishEdit() call, fix double textChanged on delete
There is a known bug where duplicate textChanged signals are
triggered on backspace/delete. The bug has been seen on Windows,
Mac, and Linux. Gabi showed that this duplicate signal is caused by
two calls to finishEdit(), one direct and one nested,
in QTextCursorPrivate::remove().

To attempt a fix, I removed the direct call and do not change the
nested call. This change only affects text buffers when they
receive remove commands.

This seems to fix the problem, shown by the test project
uploaded to the bug tracker and also in countTextChangedOnRemove
in tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp.

Further analysis of finishEdit() and QTextCursorPrivate::remove():
finishEdit() calls signals contentsChanged() as long as a valid block
is being edited. Remove() calls finishEdit for all non-table edits,
so finishEdit will be called for most cases.

Methods in the public QTextCursor all seem to set adjusted_anchor
and anchor, none reading it directly, so I haven't found publicly
observable consequences to "adjusted_anchor = anchor = position;".

Task-number: QTBUG-15003
Change-Id: Ic35f25ee81c4007867b47cd8be03c146a673f86d
Reviewed-by: Graham Coleman <ravelite@gmail.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-21 18:30:05 +01:00
Tor Arne Vestbø
773610cc45 Revert "Ensure Qt::WA_Mapped is set in case of obscured native windows."
Qt::WA_Mapped maps (sic) to windowHandle()->isExposed(), and we set/update
it in QWidgetWindow::handleExposeEvent(). Setting it directly in show_sys
shortcuts QPA and assumes showing a window is synchronous on all platforms,
resulting in trying to flush the widget backingstore when the window was
not exposed yet (due to discardSyncRequest starting to return false).

This reverts commit 829b1d13b2.

Change-Id: I0bd700d4939bc69ba184d8586435b68ec3dd72fb
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-21 16:28:36 +01:00
Shawn Rutledge
b4bb709733 Remove QMacStyle titlebar height + 4 adjustment and consequences
This was a tweak to fix a bug in 2005 which has probably outlived its
usefulness, plus an accumulation of workarounds on top.  (started as
48b5266e8ff9b472a16290dd923fe24dd0b6989b in the historical repo)

Task-number: QTBUG-34760
Change-Id: I2c01269e43636385ee5c89305c6b90f4a7f2c537
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-11-21 11:22:38 +01:00
John Layt
6ad97bfa73 QTimeZone - Fix dateForLocalTime() to check validity of next transition
The private method dateForLocalTime() was not checking that transitions
were valid, resulting in infinite looping when a time zone didn't have
any future transitions.

Change-Id: I0e5d07063861778dd86056a80c36fdd9f9d36133
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-21 09:25:23 +01:00
John Layt
8e6258f059 QTimeZone - Fix TZ file abbreviations
Fix parsing of TZ file abbreviations, to correctly return cases where
POSIX rule doesn't have separate DST rules, and where abbreviation
is a sub-string of another abbreviation, otherwise any toString() call
will crash.

Add test to exercise all available time zones, especially useful for TZ
file to confirm all file format variations dealt with.  Fix parsing of
Version 3 of TZ file, and ICU display name, to allow all files generated
from release 2013f to pass, otherwise isValid() call will crash.

Task-number: QTBUG-34061
Change-Id: Ie0b6abc218adff1c8967eb33fdb0762041d2305f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-21 09:25:23 +01:00
John Layt
6bf759b310 QTimeZone - Change Olsen ID to IANA ID
The name Olson was misspelled as Olsen in the public api of QTimeZone
which is needed to be fixed before first public release in 5.2 would
freeze the api and prevent it being fixed.  It has been decided that
renaming as IANA ID would be more future-proof.

Fixes to the private code will be done separately to keep this patch
against release branch to the minimum required.

Task-number: QTBUG-34735
Change-Id: I8ee90644862c907f6d1937b8536f0c02583ae736
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-21 09:25:23 +01:00
Marc Mutz
885bd1d0e5 tst_QFileSystemModel: don't expect ~/Documents to exist
For me, this test failed because I don't have a Documents folder in my
home directory, even though that's what's returned from QStandardPaths
as the first DocumentsLocation.

Fix by falling back on the home directory if documentPaths.front()
does not exist.

Change-Id: I483f62f3b4b43d055c74774a7058a4aa420849b1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-21 07:45:38 +01:00
Friedemann Kleint
054dfae39d Stabilize tst_QGraphicsWidget::updateFocusChainWhenChildDie().
Position windows, use QTRY_VERIFY.

Change-Id: I185bcd91bcdffbc0460a4d24f685d3dde84338a7
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-11-20 18:19:01 +01:00
Friedemann Kleint
0787550f63 Stabilize tst_QGraphicsView::hoverLeave().
Position windows, use QTRY_VERIFY.

Change-Id: I0fab91c65b30e7028343c7e9b19a1b232fe72ebf
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-11-20 18:18:55 +01:00
Friedemann Kleint
097be87a64 Stabilize tst_QGraphicsScene::isActive().
Position windows, use QTRY_VERIFY.

Change-Id: I84349dd696a633840973e9db0c538830aaa96948
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-11-20 18:18:48 +01:00
Frederik Gladhorn
ff4ad44b69 Merge remote-tracking branch 'origin/release' into stable
Conflicts:
	configure

Change-Id: I0d31f23483ea67c4cac5af16014366e1ba5ac093
2013-11-20 17:16:59 +01:00
Gunnar Sletta
54b8c27e03 Fix crash when windowcontainer is used in a dockwidget
The dockwidget's toplevel window would be a parent of the container's
window when floating. When plugged back into the mainwindow the
dockwidget's window is destroyed and the container's window along
with it. Added a function toplevelAboutToBeDestroyed to unparent
the containers window before this happens so parentWasChanged will
work correctly.

Change-Id: I06679cfb3a8fa3834c0db0be5973c012b8277275
Reviewed-by: Ulf Hermann <ulf.hermann@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2013-11-20 14:10:37 +01:00
Tor Arne Vestbø
49a3fe0cf8 tst_QWindow: Use showNormal() to prevent maximize/fullscreen interference
We don't want platform behavior for whether or not maximized/fullscreen
windows can be resized to affect the test for resize event propagation.

Change-Id: I8c118733ca5d2553aacf24d0b8debeb1a4e27103
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-20 14:10:18 +01:00
Frederik Gladhorn
c83c08d84f Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable 2013-11-20 12:18:23 +01:00
Friedemann Kleint
829b1d13b2 Ensure Qt::WA_Mapped is set in case of obscured native windows.
Task-number: QTBUG-33520
Change-Id: I51f9b4634be29fd32f4ad9cc8b5d3e10b19ea2f5
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-20 09:39:56 +01:00
David Faure
e1c0a1b56c QProgressDialog: add unittest for the auto-show feature
Change-Id: I244d0b740467a09e8833f4debb95b19e45df371f
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-20 09:03:09 +01:00
Friedemann Kleint
1b9be3f481 Testlib.selftest: Improve process execution, run on openSUSE.
Give processes a more complete environment (openSUSE
requires more variables to start an X11-process),
add test column indicating whether a test is
supposed to crash. If it is not, report crash reason.

Change-Id: I1e0ad59824963f69ee425f331d845741be2b3928
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-11-19 22:47:43 +01:00
Christoph Schleifenbaum
7e768dde39 Widgets: Never revoke focus by click on focused widget.
When clicking on a widget currently focused, w/o having Qt::ClickFocus
set as focus policy, the focus should stay on the widget and not get
propagated to the widget's parent.

Task-number: QTBUG-34042

Change-Id: I53f1153829cc7228de02a90e38125b5cf4ee5008
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-18 20:38:41 +01:00
Tor Arne Vestbø
69a8c59b3f tst_QWindow: Set explicit window position to please qWaitForWindowActive
qWaitForWindowActive waits until the timeout for the window to receive
a non-0x0 position, even when it's active, just in case the WM sets
the position as a response to focus-in.

Change-Id: I748cce2747f406a8cdff556465175f02675fcd13
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-18 19:26:47 +01:00
Frederik Gladhorn
72ea790085 Merge remote-tracking branch 'origin/release' into stable
Change-Id: Ie6d44caf1d630cb029178a1af40c637f24a25ee7
2013-11-18 12:27:04 +01:00
Thorbjørn Martsum
aafbd7392e QHeaderView - do not ignore -1 as minimum section size
We claim that -1 is a special automatic value, but calling
setMinimumSectionSize with -1 is unfortunately ignored due a
regression in 524c3e05e8

Change-Id: I7d7e5dbbf78e561849d2f2352c9edb2df36aa181
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-17 20:49:00 +01:00
Friedemann Kleint
943ae8bb70 Add overload of QTest::ignoreMessage() taking a QRegularExpression.
Make it possible to match messages by a pattern.

Change-Id: I713312e86db5471755459f1ecc43e8f1ac7a95fb
Reviewed-by: Jason McDonald <macadder1@gmail.com>
2013-11-17 19:10:22 +01:00
Marc Mutz
eb122a6fe4 tst_QAlgorithms: fix compilation with C++11 enabled
GCC refuses to use a merely static const uint array in a constexpr function.

Fix by making the array constexpr if supported by the compiler.

Change-Id: Idd59d3f74f8f4e98aad82bc892f4a6469932df9f
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-17 09:48:17 +01:00
Marc Mutz
3e803b5180 QCollator: enable move semantics
This necessitates adding d==0 checks in QCollator. By documenting that
moved-from instances can only be assigned to or destroyed, we can
limit the functions in which to check for d==0 to the assignment
operator and the destructor.

Doing otherwise would destroy all advantages of move semantics by
introducing a heap allocation to re-populate other.d.

Add a test for this (QCollator didn't have any before).

Change-Id: Ic6ff202072822bebfd5e48259c3d0fa345a63118
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-17 09:47:07 +01:00
David Faure
2026e50259 QCommandLineParser: add word-wrapping algorithm
Rather than breaking at column 79 precisely, break entire words,
to improve readability.

Change-Id: Ie30db00f0e6ed95cce87480c3b91804826c6076b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-11-17 00:45:03 +01:00
Martin Pley
6c04c21c10 Crash fix in QTreeView::sizeHintForColumn().
Vertical scrollbar may get out of sync. When this happens, the calculation of
firstVisibleItem will retrun "-1". This must be handled in ::sizeHintForColumn().
Added an auto-test for the crashes.

Task-number: QTBUG-34717

Change-Id: I867fd144ef3ce45e382337c5eafe345f573cd944
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2013-11-16 16:40:46 +01:00
Friedemann Kleint
afe8e36872 Stabilize tst_qabstractitemview.
Center windows on screen to avoid conflicts with Unity taskbars,
observe minimum geometry for Windows, move cursor out of the
way for Mac. Introduce QScopedPointer to ensure cleanup in
case of failures.

Change-Id: Ic169e015e795597457b8e85a28ff7fcb7b9b9430
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-11-16 14:57:10 +01:00
Friedemann Kleint
e2557933cb Remove QTRY_ macro from tst_qabstractitemview.
Change-Id: Ic8b8e5c242b640581aa735a3716666d4e7ff44eb
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-11-15 12:42:36 +01:00
Jan Arve Saether
de5b3780cf QFormLayout: Avoid assertion with negative spacings.
It's not really clear if styles *must* return a non-negative value for
QStyle::pixelMetric(PM_Layout{Vertical,Horizontal}Spacing), but both
QBoxLayout and QGridLayout seems to be robust enough to handle this.
They will simply make sure that the spacing is never negative.
We therefore make QFormLayout equally robust.

Task-number: QTBUG-34731

Change-Id: I62235bfcd8adf7757cf15bc9927b29650ae6459d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-15 09:15:13 +01:00
Alan Alpert
7d72516b52 Change platform selectors to match qmake selectors
Previously matched Qt.platform.os, however that can only provide one
string. Multiple selectors can be present at once, so we can provide
both unix and linux instead of having to pick the most specialized one.

Task-number: QTBUG-34796
Change-Id: I219517d740fa7385e923a9e09cb7e241378fbaee
Reviewed-by: David Faure <david.faure@kdab.com>
2013-11-15 06:36:44 +01:00
Marc Mutz
38e90ad2b3 qcompilerdetection.h: add Q_COMPILER_UNIFORM_INIT
Up to now, the feature classe Uniform Initialization was subsumed by the
Q_COMPILER_INITIALIZER_LISTS flag together with support for
std::initializer_list.

This caused at least two problems:
1. On QNX, the standard libray does not ship <initializer_list>, even
   though the compiler (a GCC 4.6, IIRC) supports it. But since there
   was only one Q_COMPILER flag for both, support for the compiler-only
   part of the feature had to be disabled, too.
2. MSVC 2013 supports initializer lists, but has a bug that renders full
   uniform initialization support, as required for QUuid, useless.

By splitting the feature into two, we can separate them better, and do
so in QUuid, which is the only class that currently takes advantage of
uniform initialization (to provide constexpr constructors).

Since Q_COMPILER_INITIALIZER_LISTS worked as a flag for uniform
initialization so far, with the two known exceptions above,
UNIFORM_INIT is defined whenever INITIALIZER_LIST is, except that
I don't revert UNIFORM_INIT on QNX as I do for INITIALIZER_LISTS
and that I expect the MSVC 2013 features to set INITIALIZER_LIST,
but not UNIFORM_INIT.

Task-number: QTBUG-34705

Change-Id: I81916e950a0f3aab3de7977e0326d2de3d31b14c
Reviewed-by: Yuchen Deng <loaden@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-15 06:30:53 +01:00
Andy Shaw
3396ba5612 Match up the specified paper size to an existing one if possible
When EnumForms was used then the dmPaperSize was not always correct for
the custom paper sizes available on some printers. By using
DeviceCapabilities we can be sure that the information is correct in this
respect.

This also fixes respecting of the custom paper size if one is given and
there is no corresponding existing paper size for it.

Task-number: QTBUG-34276

Change-Id: I9924d5be8527027fc434261e37f6c7aae66210c3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-14 21:15:35 +01:00
Marc Mutz
4d1ece8b44 QKeySequenceEdit: simplify clear()
As the test case shows, clear() is semantically equivalent to
setKeySequence(QKeySequence()), so implement it that way.

Change-Id: Id68edbbf85aac3bcff82c81310c38274ed8e6708
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-14 18:59:54 +01:00
Mitch Curtis
f1053d94f5 Fully expand entities to ensure deep or widely nested ones fail parsing
With 46a8885ae4, we failed when parsing
entities whose partially expanded size was greater than 1024
characters. That was not enough, so now we fully expand all entities.

Amends 46a8885ae4.

Change-Id: Ie80720d7e04d825eb4eebf528140eb94806c02b1
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-14 17:43:58 +01:00
Gunnar Sletta
105da329a3 Skip tst_QGraphicsItem::ensureUpdateOnTextItem() on OSX 10.7
Change-Id: Iedb8ed3ac797d11c47f08b92507401e2e1e96c14
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
2013-11-14 15:24:47 +01:00
Maurice Kalinowski
c784ec00fa WinRT: implement QStandardPaths
need to leave some items out like media folder access, as this is not
available by default and also requires certain capabilities to use
those.

Furthermore updated the tests for sandboxing as well as skip cmd.exe
related tests as that does not exist on WinRT.

Change-Id: I992b1e195b79615bea0be4f84f56cfb8f0d902bf
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-11-12 12:46:37 +01:00
Simo Fält
ee53530a0e Mark tst_qgl as insignificant in angle build
All ci nodes are currently missing 3d support, when that is enabled
this test will start to fail.

Task-number: QTQAINFRA-711
Change-Id: Ie6b840e290a9371fa895681e58d6dedf55b777e6
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-12 07:11:07 +01:00
Maurice Kalinowski
0de8370531 Enable qfile tests for platforms without network
Currently network is only required to gather the host info for one
test case. That does not justify to disable all other tests, which can
provide useful information on the state when doing a port. Hence
disable that testcase if no network is available.

Change-Id: I202ef49b3e07ae69ec85ee0432ae0a771a90e816
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-11 20:13:12 +01:00
Stephen Kelly
459fb11481 uic: Accept an -include argument to generate a #include.
Change-Id: I2854619ab995b4ba3c820fec58e998ad04ac9858
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-11 15:56:52 +01:00
Peter Hartmann
becdfa6fab QSslConfiguration: rename [get]session() to [get]sessionTicket()
to reflect the fact that this returns and sets the whole session
ticket, and not just the session ID.

Change-Id: I00fe2bc4197dbcd7a02b3ae4f2f84e3a2a7edad0
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-11-08 18:58:27 +01:00
Olivier Goffart
34d21610ba QVariant: Convert automatically from enum types to integral types.
[ChangeLog][QtCore][QVariant] Variant containing enum types can now
be converted to integer

Change-Id: Ibbbc9ae29ab45d67c582fa2d406afc19c5dc41ce
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-11-08 16:45:26 +01:00
Olivier Goffart
2ee97f505b Fix QVariant::canConvert with longlong
Add few cases where conversion to or from LongLong was missing

We need to make it work if we want to use variant.canConvert<qint64>

[ChangeLog][QtCore][QVariant] Fixed QVariant::canConvert with longlong

Change-Id: I0f65073802b62d99250601dd90a8cd2e4d934b60
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-11-08 16:45:26 +01:00
Friedemann Kleint
dd262dc7f5 Revert "Fix setVisible() of QWidget has no effect in QTreeWidgetItem"
It introduces  QTBUG-34653 (Qt Designer widget box no longer
repainted after collapsing items or using the filter).

This reverts commit 04de24c644.

Task-number: QTBUG-13522
Task-number: QTBUG-34653
Change-Id: Ieb9766e7f15acea901fce4ad7142aa72557b9957
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-08 16:45:26 +01:00
Kai Koehne
79b975756a Revert "Add tracing to logging framework"
The tracing API still misses some real-world exposure. Let's
re-do this in dev to have more time.

This reverts parts of following commits:

466e0dff4b
7a47aebe9e
a652bab6a7
8f0654ceb8
4162522edd
32f27b4367
9ff81bdc1a

Change-Id: If97340c37b8b3363f597683336a8390d5ff386f1
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-11-07 11:29:30 +01:00
Maurice Kalinowski
18bb8d6b16 compile fix if no QFileSystemWatcher is available
Change-Id: I22d0cd90da96e6b6f651768955c7f445dfbcf6bc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-11-07 11:16:12 +01:00
Marc Mutz
ecfbb4e441 tst_QFlags: make constExpr() check compile on clang trunk
The problem is the verifyConstExpr<>() line involving the ~ operator.

The result as an integer is a value that can no longer be represented
in an int. This is known at compile time and thus template deduction,
which only has an int to match against, fails.

To fix, use an unsigned int as the first template argument of
verifyConstExpr<>().

Clang's error message for this is really sub-optimal, cf.
   http://llvm.org/bugs/show_bug.cgi?id=17834

Change-Id: I3a77dc54d2bee12b016d75724ac1bd7801f4cf2d
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-11-07 03:06:29 +01:00
Stephen Kelly
8ef5e700b8 QMetaType: Fix conversion between module types.
Change-Id: I7215b4599c3f0459139b32b6571f0a9e60182ee9
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-11-06 16:15:15 +01:00
Marc Mutz
569dec8e78 QIntegerForSize: add test
Make sure that the size of QIntegerForSize<N>::{Signed,Unsigned} is
actually N.

Change-Id: I221304f7c420e80758ef7b115bafb7cf1f8c8829
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-06 00:35:43 +01:00
Andy Shaw
0cdf2a8023 Revert "Ensure CSS rules are inherited from the parent tags"
Since the original change caused a problem with the CSS
rules being always inherited where in some cases this should
not be happening.

This reverts commit 6f65466137.

Change-Id: I6e9cf163d752b1869b5e967a7ab59963d655ba87
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-05 23:04:16 +01:00
David Faure
44d48862c0 QStandardPaths: add GenericConfigLocation
This is what ConfigLocation was meant to be. A directory shared by all
applications. Unfortunately when I wrote the fallback on Windows,
I picked DataLocation (which is app-specific) instead of
GenericDataLocation (which is shared between apps). This makes it
impossible to have config files shared between apps, e.g. for libraries.
It also makes ConfigLocation quite inconsistent (on Windows one cannot
use it to load another app's config file, while it works everywhere else).

All this is fixed by GenericConfigLocation, which is shared between apps.

Change-Id: I23a755131061d4fea01e13dd1038fbd8ef333a5d
Reviewed-by: Alex Richardson <arichardson.kde@googlemail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-05 19:08:08 +01:00
David Faure
ec12d641fa tst_qurl: add test for matches() with empty vs null case
Change-Id: I0f31eed9af0a7f1aed9ce5118b49ddbbff4f5f39
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-05 19:08:08 +01:00
Olivier Goffart
94ad841ab5 Test that QMetaObject::invokeMethod is exception safe
Change-Id: Ie4662b7e475dc3d1ce9f36e8219361d9507622b4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-11-05 17:37:05 +01:00
Olivier Goffart
73efc9a2cd Test exceptions in signals and slots
Only DirectConnection is tested

Change-Id: I525c6a65428489c34e58d1d9600b4e5ebda733b9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-05 17:37:05 +01:00
Mitch Curtis
46a8885ae4 Disallow deep or widely nested entity references.
Nested references with a depth of 2 or greater will fail. References
that partially expand to greater than 1024 characters will also fail.

Change-Id: Id4e49d6f7cf51e3a247efdb4c6c7c9bd9b223f6e
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-05 15:55:17 +01:00
Friedemann Kleint
161e8653c3 Disable clear button in read-only QLineEdit.
Task-number: QTBUG-34315
Change-Id: I6c318879aee907c080e871a541da4ba5eadd71ed
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-05 09:16:47 +01:00
Andrew Knight
04d1da1c1b Fix QTimeZone test compilation on WinRT
WinRT doesn't use the Windows Timezone backend, so don't build the
Windows test.

Change-Id: I32620546de3ad1f19402cc1359f8038200c915ec
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-11-04 11:16:34 +01:00
Andrew Knight
8120083436 Replace use of putenv in test case
This should be using qputenv; putenv is deprecated on MSVC.

Change-Id: I7c27cf5f7955624fa3553b7a34ab11c6fae462b8
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-11-04 11:16:16 +01:00
Jan Arve Saether
7b33bd4110 Fix stability issues in tst_qwidget with VERIFY_COLOR
The grabbing always grabbed the desktop. This caused it to also grab
tooltips, siderbars etc that could overlap the window which again
caused the pixmap comparison to obviously fail.

This will currently only fix it on windows. If needed, it should also
be fixed for other platforms.

Task-number: QTBUG-30566
Change-Id: I5cee8651e1d94dedded0acae8b19f351acd976c4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-01 14:52:47 +01:00
Chengyong Xie
04de24c644 Fix setVisible() of QWidget has no effect in QTreeWidgetItem
Check if the item is hidden before show the item(QWidget)

Task-number: QTBUG-13522
Change-Id: I1c605d5cb8a80f340e9b7601612d3760f51cb4a7
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2013-10-31 19:41:49 +01:00
David Faure
a9b6a78e54 QThreadPool: fix race at time of thread expiry.
The current synchronization mechanism was racy: decrementing waitingThreads
and then hoping that the wakeOne will wake a thread before its expiry
timeout happens. In other words, on timeout, a just-assigned task would
never run. And then no other task would run, if maxThreadCount is reached.

Fixed by using a queue of waiting threads (rather than just a count), and by
moving the wait condition into the thread itself, so we know precisely
which one we're waking up, and we can remove it from the set of waiting threads
before waking it up, and therefore it can determine on wakeup whether it
has work to do (caller removed it from the queue) or it expired (it's still
in the queue). This is reliable, whereas the return value from QWaitCondition::wait
isn't reliable, when the main thread has already decided that this thread
has work to do.

Task-number: QTBUG-3786
Change-Id: I1eac5d6c309daed7f483ac7a8074297bfda6ee32
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 17:45:58 +01:00
Friedemann Kleint
33a88d6cd7 Stabilize moveChild/showAndMoveChild-tests.
Pass window flags on to ColorWidget constructor and use a window
frame + stay on top-hint for the moveChild/showAndMoveChild tests
to make the screen grabbing more reliable.

Disable animations on Windows since they seem to affect screen
grabbing as well (fading in of windows).

Task-number: QTBUG-30566
Change-Id: I8eacfc203d26674dc1b283d6643f3d434f218f26
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-10-31 14:22:25 +01:00
Jørgen Lind
aa92cab346 remove compiler warning
Change-Id: I40750320d21165333b195aca7564a6f4ee9d9eef
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-30 13:09:47 +01:00
Marc Mutz
ed827acc27 QSignalBlocker: (new) RAII class for QObject::blockSignals()
I don't think I ever worked on a project of non-trivial
size that didn't at some point add a QSignalBlocker.

This commit adds code, tests and documentation. Later
commits will convert naked blockSignals() calls to use
QSignalBlocker.

The implementation is purely inline to avoid the heavy
overhead of cross-dll function calls for this miniscule
task. This should not be a problem because QSignalBlocker
only uses public API and a pattern that we anyway need
to keep working until Qt 6, at least, so even changing
the implementation later will be no problem as the old
implementation lurking in non-recompiled code will be
acceptable, too.

This implementation is an evolution from KDTools'
KDSignalBlocker, with the following changes:
- Implements unblock() and reblock()
- Uses the return value of blockSignals() instead of a
  separate signalsBlocked() call.

Change-Id: I1933dfd72a0f5190324be377cfca3c54cf3d6828
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-30 12:56:44 +01:00
Simo Fält
c1f76a3347 Adding CI utilities to Android test script
It is now configurable if test results are stored in xml, plain text
or in both formats. Default is xml, like it was,
Max runtime is also configurable so that we can reduce the CI round.
With default setting it takes more than eight hours within current
CI node.
The latest test result dir is linked as latest.

Change-Id: I5d27cefe17e4f86648132db7ec104711d993c3de
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-30 11:29:04 +01:00
Stephen Kelly
fae95d5da3 Test that Qt tools can handle ' as a digit separator.
Change-Id: I0a3446d02184989c32367e66d4f5d9e464a56ec6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-30 09:44:07 +01:00
Joerg Bornemann
721ec98501 remove qt_windows.h include from qwineventnotifier.h
We must not include qt_windows.h in public headers,
otherwise we're cluttering the environment with a colorful
bouquet of Windows API preprocessor macros and typedefs.

Task-number: QTBUG-34058

Change-Id: I415717ea2a47f39e7f4b7ce1c1df9d49afc99278
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-29 19:59:17 +01:00
Gabriel de Dietrich
12981e70a8 MacGui tests: Remove references to CGPostMouseEvent
CGPostMouseEvent is obsolete and known to have "undocumented special
cases and undesirable side effects." The newer Quatz API doesn't
allow neither multiple mouse button events nor preserving the mouse
cursor location.

Change-Id: I121b02fd01e2990488b05e45431cbdc13589656e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-29 18:30:48 +01:00
El Mehdi Fekari
2a704239ea QLocale: Add auto tests for Poruguese(Brazil) and Greek locales
Change-Id: Ib1b553efb39a150710ceb609d2cb099f19f73e35
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-29 16:09:53 +01:00
Oto Magaldadze
e913972d52 added QAbstractSpinBox::setGroupSeparatorShown function.
[ChangeLog][QtWidgets][QAbstractSpinBox] QTBUG-5142 - This will
allow a group (thousand) separator to be shown in QSpinBox
and QDoubleSpinBox widgets.

Task-number: QTBUG-5142

Change-Id: I2e23f5f83c93bb092a2dbd784e06d17d40d42909
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-10-29 12:12:16 +01:00
Marc Mutz
1ea191276e QWizard: give all buttons an objectName
Only Commit, Finish and Cancel didn't have an object name, yet.
Also Extract Method on the switch statement, add a test, and
use QStringBuilder.

Task-number: QTBUG-29924
Reported-by: Leo Arias

Change-Id: I8c29606bc53e9d4caab631da2089e971a9da2d75
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-28 12:05:22 +01:00
John Layt
041abb9316 QPrintSupport: Move QAbstractPrintDialog test into QPrintSupport
Move the test for QAbstractPrintDialog from widgets into printsupport

Change-Id: Ia7595fa650a7ad565df3090207500ed06564e842
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-10-26 00:39:51 +02:00
J-P Nurmi
1f22c1d981 Introduce QTextDocument::baseUrl
Required for QQuickText & friends to implement image resource handling
in a clean way - to get rid of QQuickTextDocumentWithImageResources and
eventually make QQuickTextEdit's document interchangeable.

Change-Id: I97314a6c3e2d5726539d5722795a472631388cb0
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-10-25 14:18:05 +02:00
Frederik Gladhorn
840f6a40e6 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Ie56539b2e0be611a363b5f15ae5412a78d6945a2
2013-10-24 12:48:42 +02:00
Shawn Rutledge
7e30d3afd3 QFileDialog can delete files too, not just directories
After Ic12de12ec51c20de52d040514e90be5e783add43 this functionality
was broken.  Added an autotest.

Task-number: QTBUG-34159
Change-Id: I8f41b7073dc57fea855ab87796f09e8a91520d13
Reviewed-by: David Faure <david.faure@kdab.com>
2013-10-23 19:09:54 +02:00
J-P Nurmi
a83983d861 QTextHtmlParser: restore the default link color from app palette
The default link color used to be resolved to the link color of the
application palette, but got lost during the Qt 5 modularization (see
commits 7351a43 and 3f9a7f9).

Task-number: QTBUG-28998
Change-Id: I7f07427f6c03f83c557100938ad9f7a39349d303
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-23 00:01:44 +02:00
Tasuku Suzuki
109bf980b3 Fix a bug in QSqlQuery::isNull documentation
the method returns true if there is not such field.

Change-Id: I25db8de4561d3e0604f3e64edc1810140ba4aad2
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-10-22 17:05:47 +02:00
Gunnar Sletta
72a7882cec Better QWindowContainer by not relying on native widgets.
We change the behavior slightly from the initial implementation in
5.1. Forcing the use of native child widgets is causing massive
performance issues so instead, we attach the embedded QWindow directly
to the root window. The only exception is QScrollArea and QMdiArea
which still enforces native windows for the entire parent chain
to make clipping and stacking work.

Task-number: QTBUG-34138
Change-Id: If713637bd4dce630552ace2f8ad6b2e86c063721
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-22 10:46:21 +02:00