Commit Graph

2513 Commits

Author SHA1 Message Date
Casper van Donderen
cedf0e03d6 Include threads docs from qtdoc, rename old threads to threads-basics.
Change-Id: Ie603582809e61c2e46566a46cfc81fead4168aad
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
2011-10-18 10:26:47 +02:00
Casper van Donderen
0e341948ae Remove stale documentation.
Change-Id: I85139e0334b648bee0d18129cef9387dcc6c3222
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
2011-10-18 10:26:39 +02:00
Friedemann Kleint
41b01096cc Remove Q_WS_ in text codecs.
Change-Id: Id27d82f91a21107f31f73d7f2920629a512dc2a1
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-18 08:21:33 +02:00
Friedemann Kleint
da68749fdb OpenGL: Remove Q_WS_ defines.
Change-Id: I351a910968ff7f46550af5b3742959cb0cab540d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-18 08:21:19 +02:00
Jason McDonald
730382a968 Prefer QSKIP to QTEST_NOOP_MAIN.
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that these tests aren't testing anything when the required
defines are not defined.

Change-Id: I977e24205a1bb7787ecddbdb1ebbeda1f2ded321
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-18 03:10:24 +02:00
Jason McDonald
f6e3d9d695 Prefer QSKIP to QTEST_NOOP_MAIN.
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that these tests aren't testing anything when the required
defines are not defined.

Change-Id: I8508f50c6264fafa836090c5d6ffa6ce02dda102
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-18 03:09:44 +02:00
Rohan McGovern
be9939ac89 Reduce the runtime of tst_selftests
The addition of testing for multiple loggers greatly increased the total
runtime of this test, in fact making it the slowest testcase in Qt.
Fortunately this is only due to a couple of slow subtests whose behavior
is unlikely to be affected by the loggers.  Change it to run these slow
subtests just for a couple of loggers, instead of all the combinations.

Change-Id: Ie90f6c0ca29470ed6a7c4e2e185f852602a2d162
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2011-10-18 00:56:54 +02:00
Jocelyn Turcotte
4ab691ad65 Fix TouchEnd events not being received on Harmattan.
TouchEnd is sent when all the touch points have a TouchPointReleased state,
and we would clear all touch points on finger release before sending them
up the stack.

Change-Id: I14e7347090ce9a1865743202f6926ae2fc035bd3
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
2011-10-17 18:03:13 +02:00
Jocelyn Turcotte
4521e2ec61 Add multipoint touch support for Harmattan to the xcb platform plugin.
Proper multipoint touch support was only introduced in XInput2.1, but Harmattan uses
a tweaked version of XInput2.0 that transfers touch data through mouse events.

This patch applies on the xcb plugin a subset of the changes that were applied on the
Qt 4.7 that was shipped to Harmattan to get similar multipoint touch support.

Change-Id: Ifda7ad40de29d7ded1443d4f78b3ec3807303a9f
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
2011-10-17 18:03:13 +02:00
Jocelyn Turcotte
09cad13e49 Fix TouchPoint::lastPos() after TouchPointStationary only events.
lastPos is copied from the last point's position, and the position has
to be resolved according the the receiving item's transformation.

However, if a QTouchEvent contains only stationary points, it won't be
delivered, it's pos()/rect() will still be uninitialized, and the
touch point of the next event will be delivered with the uninitialized
pos() as it's lastPos().

This patch makes sure that the lastPos() won't be filled with a
previous incomplete stationary point state even if the platform is
sending us stationary-point-only touch events.

Change-Id: Ia7d10423c8fbe78348edbb0a89fbfa66d1b8b5d1
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
2011-10-17 18:03:13 +02:00
Simon Hausmann
fa607d6272 Fix scaled text rendering with the raster paint engine & FreeType
Before commit 070d9c00c4, the raster paint engine used
to call loadGlyphs() on the FT engine, which ensures that the glyphs are loaded
and (more importantly) that the correct transformation matrix is applied on the
freetype face. After commit 070d9c0 lockedAlphaMapForGlyph is called for each glyph,
which unfortunately doesn't respect the provided transformation matrix. Therefore
when drawing scaled text, it was never actually scaled.

This patch applies the combination of the fontengine transform and the requested
transform on the freetype face actually used, similarly to loadGlyphs.

Change-Id: I0956a9e71784582db6bb90475a001a63800773f4
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-10-17 16:04:33 +02:00
Casper van Donderen
44e3eff29d Add documentation from qtdoc for modularization of docs.
Change-Id: Ic9c4502f19ff077d8416ccb890678e64490349ca
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2011-10-17 13:31:45 +02:00
Casper van Donderen
c3b7a0291d Use a QFunctionPointer for getProcAddress()
qdoc does not understand the void (*) syntax, there is a typedef to
QFunctionPointer that does work.

Change-Id: Idbe9d43d00f8676304d088d72795b6ddb7e4ee72
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-17 13:31:45 +02:00
Friedemann Kleint
bf96c83b15 Replace Q_WS_WIN by Q_OS_WIN in uic/network.
Change-Id: I592936859f6932fcd1aa47f0617ba9f8efee86dc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-10-17 13:31:45 +02:00
Jason McDonald
19168ca21f Prefer QSKIP to QTEST_NOOP_MAIN.
There is no way for a .pro file to know if exceptions are supported in
the Qt build, so these tests cannot be omitted from the build if
exceptions are not supported. Because of this limitation, these tests
were using QTEST_NOOP_MAIN when exceptions were not available, making
the tests appear to pass.  This commit changes QTEST_NOOP_MAIN to QSKIP,
so that the user receives a clear indication that the test isn't testing
anything when exceptions are not available.

Change-Id: I2facf08ba69e6f985e2da50dd36ad2658246b22e
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 10:30:04 +02:00
Laszlo Agocs
5d8d7b1dbc Add a warning and a return value to xcb's createGLPlatformContext
There was no value returned previously when none of GLX, EGL, DRI was
enabled. Now we show a warning message and return null (resulting in a
crash). Previously not returning a value resulted in obscure crashes
with strange-looking call stacks, now it will be clear what the
problem is.

This is particularly important because not having libx11-xcb-dev
installed results in silently disabled xlib support which in turn
disallows the usage of glx too. The result is an obscure crash in any
GL (e.g. QML2) app. Now there will be a proper warning message at
least.

Change-Id: I15cf3a6c16ca373d4ada7abb6d3c8f7e30c1e03d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-17 10:29:57 +02:00
Laszlo Agocs
86ea95259d Do not fail user time window creation when xcb is using xlib
QXcbWindow::updateNetWmUserTime() creates a new window using the
actual window as its parent. This operation was failing when Xlib
usage and GLX (or EGL) was enabled because in these cases the real
window was created with a different visual using XCreateWindow.

For the user time window however we were passing the xcb_screen's
root_visual always, and this cannot work when Xlib+GLX/EGL is in use,
resulting in a BAD_MATCH (followed by some annoying flicker on the
screen on Ubuntu at least, or a full log off (X crash?) on Fedora).

The patch saves the visual id used to create the actual window and
passes that when creating the user time window. This way the creation
of the user time window succeeds with Xlib+GLX too.

Change-Id: If3925d9ac1670d385dcc7c2b475c196908569f06
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-17 10:28:25 +02:00
Jason McDonald
83611473ac Remove qcopchannel autotest.
The QCopChannel class was removed during Qt5 refactoring.

Change-Id: I62914eca1db65c680d90233ce9dad5d891890c4a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 07:59:29 +02:00
Jason McDonald
25a62d7d6b Don't build empty tests.
The qgraphicswidget and qgraphicsproxywidget tests are empty if Qt is
built without the cleanlooks style, so don't build the tests in that
case.

Change-Id: I2308e723a9b0abcc3e95b32a562fcb02afe0444d
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
a40ebefcd3 Only build exceptionsafety_objects test if useful
The test appears to be applicable only if building with g++, and even
then the test is broken.

Change-Id: I9eefb13325a10ec295a59c2bd1111e3c324ff94f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
73d2970acd Remove Mac accessibility autotest.
This test was empty, the logic having been recently removed because it
only applied to the Carbon UI, which will not be supported by Qt5.

Change-Id: I2b5d6aba6be4a51eadbac3ca9d19d1a68c4fc1ab
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
33af6dfa7d Tidy qwizard autotest .pro file
Remove commented out sources and redundant Symbian-specific directive.

Change-Id: I7637b4dfc186eeac7f314faf13aa97e8ef1990de
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
43dd58eba3 Remove QtMD5 autotest.
This test is only valid with obsolete Qt Solutions packages.  Any Qt
Solutions that are still of value need to be rewritten as Qt5 addons and
will be delivered with their own unit tests.

Change-Id: I099ef816655cc7de13715f5a4e5f4a06099df2d5
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
a1121b977e Make test .pro files more consistent.
Make the parent .pro files follow the pattern of listing all tests in
one place and then removing inapplicable tests as needed.

Change-Id: Ide1ae98d50dd63cd8c1b4d6fd53135cdff801bc3
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
fe48366b48 Don't build empty qwineventnotifier test.
This test is only useful on Windows, so avoid building it elsewhere
rather than building an empty test.

Change-Id: I01d91266bcb2dd242e02e70741ad5b81a13c33f0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
55f1560605 Remove redundant logic from tools autotests.
The tools tests are not built for cross-compiled Qt builds, so the logic
to make those tests empty when cross-compiled is redundant.

Change-Id: Ia3a3a680d7ade2cee78aa633b41c9ef5be6f2f15
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
9e31f88d7a Don't build empty qaccessibility test on WinCE.
Rather than building the test with all the logic #ifdef'd out, just
avoid building the test at all.

Change-Id: I394f48b2dacb40325d03de719096da36fcb7312a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Jason McDonald
e33713f03a Only build Mac-specific tests on Mac.
All but one of these tests was already excluded from the build on
non-Mac platforms, but still had #ifdef's to make the test empty if
compiled on a non-Mac platform.

Change-Id: I1a3677c1cdb7bd467cf4317ed4cfbac89e934e76
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-17 03:30:55 +02:00
Lars Knoll
5ad123c136 Less friends is good, at least for C++ code :)
Change-Id: Ia46359ee80eb30b8e16a02b7d5376cc9610fac84
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-17 01:57:26 +02:00
Martin Petersson
e07d7ab265 QHttpNetworkConnection: fix compile warning
Change-Id: I05f114dcb1c43a98c416d02b3e764dcb40d56e09
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-10-14 23:40:08 +02:00
Eskil Abrahamsen Blomfeldt
23e5594735 Add QGlyphRun::SplitLigature flag
If the glyph run is generated based on characters which split a
ligature glyph, it needs to include the ligature glyph in the run,
and when painting, we need to clip the painter to the reported
bounding rect of the run in order to avoid painting too much of
the ligature. To make it possible to reduce clipping to a
minimum, we need a flag to inform of whether the glyph run contains
a split ligature or not.

Change-Id: Id787e0bec6d6e8e06cc818700ae0fca22cf81e98
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-10-14 23:39:46 +02:00
Harald Fernengel
b2a45e02a2 Disable ELF interpreter check when cross-compiling
It's not a good idea to look at the host's /bin/ls when cross-compiling

Change-Id: I1fe67b17abd92f01c1d89146227c5419eaa3242f
Reviewed-by: Arvid Picciani <arvid.picciani@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-10-14 21:21:28 +02:00
Joerg Bornemann
d1ff829072 qmake: fix incrementalLinker option writing for vcxproj
Change-Id: I7d3b33a3a2e2f7c89ea956cd1304e7d2e365151f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-10-14 19:42:32 +02:00
Laszlo Agocs
b091ec9a22 Avoid using 0 as the default winId in QPlatformWindow.
When the platform plugin does not reimplement QPlatformWindow::winId()
to return a non-zero value, the default implementation provides a WId
of 0. This breaks various scenarios with QWidgets which, for example
in nativeParentWidget(), rely on internalWinId() being non-zero for
TLWs.

As a result, apps like collidingmice will crash with the 'minimal'
platform plugin when they try to do markDirtyOnScreen for the graphics
view's viewport widget because viewport()->nativeParentWidget()
unexpectedly returns null, even though it should return the
QGraphicsView.

The patch makes the default value WId(1) in order to to avoid this.

Change-Id: Iafef2e510e32b5610b8cef742313e9119ed64963
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-14 19:42:26 +02:00
Laszlo Agocs
be1e6d17b9 Make the window active in eglfs and minimal plaform plugins.
Without a call to QWindowSystemInterface::handleWindowActivated() or
QPlatformWindow::requestWindowActivated() QGuiApplication's
activeWindow() and focusWindow() will return 0 all the time, and this
breaks key event delivery when key events are received not from a
windowing system but directly from e.g. evdev. In such cases the only
choice is to send the event to the active window but if there isn't
one the event will be lost.

These platforms will have one fullscreen window at a time so marking
it the active one should be a safe assumption.

Change-Id: Ia6f0e9f021fbd61bbd368ddc46f8a13fccda1c2f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-14 19:42:17 +02:00
Lars Knoll
cfb2f5fdd1 Remove commented out reference to QShortcutMap
Change-Id: I62ca413c4f5e11e5ba91dcbb05d8088ca1d7a2b9
Reviewed-on: http://codereview.qt-project.org/6582
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-14 16:22:00 +02:00
Kent Hansen
d5aa4355f1 Add autotest for QMetaType creation of gui types
This test verifies that all gui types with built-in QMetaType
support can be created, either using the default constructor
or the copy constructor.

Change-Id: Ibb1c5aab8571b598638c74112471d6869516a202
Reviewed-on: http://codereview.qt-project.org/6344
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2011-10-14 14:46:35 +02:00
Kent Hansen
45358303d1 Improve the QMetaType::create() autotest coverage
It only tested creating a copy of QSize.
This change adds testing of all core types, both
copy and non-copy creation.

Change-Id: If2b8fb45718c4a976dd8b883b332878f7fb0da6f
Reviewed-on: http://codereview.qt-project.org/6343
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2011-10-14 14:46:35 +02:00
Lars Knoll
046740f5ce Remove dependencies of QShortcutMap onto widgets
This is the first towards bringing shortcut support
back into QtGui.

Change-Id: Ic2cf376d08c326402fb90a0cf170a987b07ac304
Reviewed-on: http://codereview.qt-project.org/6577
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-14 13:13:01 +02:00
Jędrzej Nowacki
3bdce9a8ba Small re-factor of QVariant autotest.
Enrich playWithVaraint template by a macro that returns correct line
number in case of failure.

Change-Id: I7684169852481a6905b71e4420135e7e3f298b12
Reviewed-on: http://codereview.qt-project.org/6570
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-14 13:13:01 +02:00
Frederik Gladhorn
736b3a6aca Accessibility plugin for mac and xcb.
Instead of creating new instances of the class whenever
accessibility() is called, create one on startup.

Change-Id: Idd5b06ee935d7acf4934b98882d254a1ef0ca04e
Reviewed-on: http://codereview.qt-project.org/6435
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2011-10-14 11:41:16 +02:00
Jocelyn Turcotte
bb22b49650 Fix OpenGL on Harmattan showing only the first frame.
swapBuffers would wait until DRI2_InvalidateBuffers was received from the
X server, but would never receive it since we are not running the xlib event loop.

This patch calls the XESetWireToEvent xlib callback of an unhandled event from the
xcb event loop directly, if one is available for its response type.

Change-Id: I3b4ef3f6e3efbae25f49f161e229e9b15e951778
Reviewed-on: http://codereview.qt-project.org/6557
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-14 00:25:20 +02:00
Laszlo Agocs
472028c1d4 Calculate an area in the touchscreen qpa plugin.
Instead of ignoring the touch major/minor and returning a rectangle
with width and height of 1, the size of the area is now calculated
based on the major. This is incomplete and far from perfect but at
least it makes visualizers, like the fingerpaint example app, work out
of the box.

Change-Id: I3bb70b4d7247f289e5cae4e7de2460ecf2c9d009
Reviewed-on: http://codereview.qt-project.org/6566
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-10-13 17:36:01 +02:00
Friedemann Kleint
1582407fc7 Remove Q_WS_ and Q_OS_SYMBIAN from QtGui.
Change-Id: I2ac3376513c3fbfc81a2e695a73a0d948d2696bc
Reviewed-on: http://codereview.qt-project.org/6607
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-13 15:07:41 +02:00
Friedemann Kleint
30cb91e17d Fix struct/class mismatch.
Change-Id: I282c9d9e10b0783cc10d32de031a30d07b802a55
Reviewed-on: http://codereview.qt-project.org/6610
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-10-13 14:49:08 +02:00
Simon Hausmann
28c0b26fb7 Fix build on Harmattan when cross-compiling
When configure detects the presence of font-config/freetype via pkg-config
_and_ we are cross-compiling for Harmattan, make sure that we pick up the
include path for freetype. The .pri file is included in various places in
qtbase when the usage of freetype is required.

Change-Id: I4a5390dfc063504def80a891bc9153d6a376ccd7
Reviewed-on: http://codereview.qt-project.org/6509
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2011-10-13 12:57:26 +02:00
Morten Sorvig
8346c192ad Cocoa: Update QPlatformWindow geometry on move
Change-Id: I976e4da646480d10cc6af444288c421d0645f689
Reviewed-on: http://codereview.qt-project.org/6541
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2011-10-13 12:57:22 +02:00
Laszlo Agocs
75246bbda7 Migrate the touchscreen generic qpa plugin to QWindow.
This plugin was still using QApplication and QDesktopWidget. The code
is now migrated to QGuiApplication, QWindow, and QScreen.

Change-Id: I22a7e15982efea16cbf560d09c8831cd82ed29d0
Reviewed-on: http://codereview.qt-project.org/6528
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
2011-10-13 08:05:48 +02:00
Martin Petersson
2b58e3db35 QNetworkAccessManager: hostInfo lookup should use proxy if set
startHostInfoLookup will try to detect if IPv4 or IPv6 will be used
when connecting to the host. If a proxy is set we should lookup
the proxy hostname instead, in case host name can't be resolved
via DNS and should be resolved by the proxy.

Task-number: QTBUG-21889
Change-Id: I2012798784fc40f153469a1298e261c52981297e
Reviewed-on: http://codereview.qt-project.org/6447
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2011-10-12 18:01:19 +02:00
Shane Kearns
f43ca8d4e7 fix tst_QNetworkReply::headFromHttp failure
The reference file has suffered whitespace changes during the cherry
pick from 4.8. Refetched from the test server.

Change-Id: I03a0b7a66cf6743de3391905422b2f4cdcd86dcf
Reviewed-on: http://codereview.qt-project.org/6454
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-10-12 18:01:19 +02:00