Commit Graph

23880 Commits

Author SHA1 Message Date
Alexander Volkov
1d9a6d0859 xcb: Set _NET_WM_WINDOW_TYPE from a single place
Merge QXcbWindow::setNetWmWindowFlags(), which was called from
QXcbWindow::setWindowFlags(), into QXcbWindow::setWmWindowType().
Now setWindowFlags() can't override window type set by
QXcbWindowFunctions::setWmWindowType().

Also reorder _NET_WM_WINDOW_TYPE atoms in QXcbWindow::setWmWindowType()
as it was in Qt 4.

Change-Id: Id1752d78f91caf04e9d16bb1ac40ed180597df7b
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2015-06-13 08:45:11 +00:00
Joerg Bornemann
2a0c003e6b fix decoding of file paths in QLockFilePrivate::processNameByPid
QFile::decodeName should be used instead of a simple QString::fromUtf8.

Change-Id: I76955ab01af55dd373f860f6e3dbffa37e60892c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-12 08:00:43 +00:00
Joerg Bornemann
b23f1d2c8b fix unterminated char buffer glitch
readlink does not append a NUL character to buf. If readlink places
PATH_MAX characters into buf, then an unterminated character buffer
would have been passed to QString::fromUtf8.

Change-Id: Ib1865b8df760fa7da91c3be746dc701a165d93ee
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-12 08:00:38 +00:00
Kai Pastor
c2ea62dd34 QPicturePaintEngine: Avoid slow QPainter::clipRegion
QPainter::clipRegion() is expensive especially for certain clip paths.
QPainter::clipBoundingRect() does not promise to return an exact (tight)
bound but delivers the desired result quickly. In addition, this avoids
discretization.

Change-Id: Ib35406edc12fb8206ca978bc140a7c5e21279ca2
Task-number: QTBUG-46578
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-06-12 07:28:46 +00:00
Alan Alpert
eb9f2e304f Version transitionType as a new property
It is exposed in the QtQml.StateMachine import, but note that the metaobject
version is just incremented (no need to match QtQml.StateMachine, which
is in a different module).

Change-Id: I50773d9dec5252aa93846b7e5f743958ee838023
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-06-11 16:14:14 +00:00
Ivan Komissarov
9a029c9de4 Fix sizes QStorageInfo returns for invalid drives
Zero is a legitimate size to be returned by bytesFree/bytesAvailable
functions, so change those functions to return some 'invalid' size
in case of an invalid drive.
This is also consistent with the original version from the Qt Systems
framework.

[ChangeLog][QtCore][QStorageInfo] Fixed sizes returned for invalid drives.

Task-number: QTBUG-45724
Change-Id: I312fba521fdf8d52d7a0ac0e46cacca625775e80
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-06-11 16:13:49 +00:00
Friedemann Kleint
56d62345ad Fix less-than comparison for QStandardItem and QSortFilterProxyModel with invalid data.
Previously, QStandardItem::operator<() returned true when both
items had invalid data. With MSVC in debug mode (checked
iterators/STL), this triggered an assert in
tst_QStandardItem::sortChildren() since that verifies
that !(b < a) when a < b:

Debug Assertion Failed!
Line: 3006
Expression: invalid operator<

Introduce a stable sort order for invalid items such that
other items are always less than invalid items and comparing
invalid items returns false (indicating equivalence).

Change-Id: Ica0f0d9f001c86973b1941dbcc1faf282e4c47df
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-06-11 13:29:23 +00:00
Richard Moe Gustavsen
827e195f17 OSX: check if we have a native drag before accessing it
We used to check if [sender draggingSource] != nil to determine
if the current drag was started by the application itself or
somewhere else. While this is correct use of the API, the problem
is that a drag can also be started by UIKit if e.g dragging the
file icon in the titlebar. And in that case, Qt has no no
native drag data. Since we didn't take this usecase into account, we
tried to access the data anyway, which led to a crash.

This patch will instead check if we have native drag data directly
before trying to access it, which will also cover the
usecase mentioned above.

Task-number: QTBUG-46598
Change-Id: Ic91b86f658670b895d90a1533246ba24a00dde41
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-06-11 11:46:00 +00:00
Friedemann Kleint
05dcc0499b QCoreApplication::applicationFilePath(): Fix array bounds violation of argv.
Check for argc > 0 before accessing argv[0].

tst_qapplication constructs QApplication(0, 0) and has been
observed to crash sporadically. Fix valgrind error:

=9845== Conditional jump or move depends on uninitialised value(s)
==9845==    at 0x4C2F1BC: strcmp (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==9845==    by 0x5DEEFB3: qstrcmp(char const*, char const*) (qbytearray.cpp:262)
==9845==    by 0x6011EAA: QCoreApplication::applicationFilePath() (qcoreapplication.cpp:2058)
==9845==    by 0x6011D0B: QCoreApplication::applicationDirPath() (qcoreapplication.cpp:2029)
==9845==    by 0x5DD285D: QLibraryInfoPrivate::findConfiguration() (qlibraryinfo.cpp:184)
==9845==    by 0x5DD32AF: QLibraryInfo::platformPluginArguments(QString const&) (qlibraryinfo.cpp:596)
==9845==    by 0x5746A95: init_platform(QString const&, QString const&, QString const&, int&, char**) (qguiapplication.cpp:1017)
==9845==    by 0x5747C91: QGuiApplicationPrivate::createPlatformIntegration() (qguiapplication.cpp:1177)
==9845==    by 0x5747DDE: QGuiApplicationPrivate::createEventDispatcher() (qguiapplication.cpp:1194)
==9845==    by 0x4FAF81D: QApplicationPrivate::createEventDispatcher() (qapplication.cpp:196)
==9845==    by 0x600F568: QCoreApplication::init() (qcoreapplication.cpp:768)
==9845==    by 0x600F2C4: QCoreApplication::QCoreApplication(QCoreApplicationPrivate&) (qcoreapplication.cpp:689)
==9845==    by 0x574594C: QGuiApplication::QGuiApplication(QGuiApplicationPrivate&) (qguiapplication.cpp:570)
==9845==    by 0x4FB008A: QApplication::QApplication(int&, char**, int) (qapplication.cpp:569)
==9845==    by 0x41148A: tst_QApplication::lastWindowClosed() (tst_qapplication.cpp:561)

Change-Id: I2fb324ab63617f14f5f43835154aae339bfa9520
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-06-11 10:32:48 +00:00
Friedemann Kleint
0b8cb39d34 Diaglib: Output window/widget state(s).
Change-Id: I0f27027c95ed70a0b2992c58df7e12eddfad17e3
Task-number: QTBUG-46416
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-06-11 07:55:08 +00:00
Giuseppe D'Angelo
92cda94742 QSslSocket: move default cipher, EC and default CA APIs to QSslConfiguration
QSslConfiguration is better suited for these APIs. The ones
in QSslSocket that already have a counterpart have been deprecated.

[ChangeLog][QtNetwork][SSL/TLS Support] Most of the QSslSocket
functions to deal with ciphersuites, certification authorities
as well as elliptic curves have been deprecated in favor of the
corresponding counterparts in QSslConfiguration.

Task-number: QTBUG-46558
Change-Id: I1de03379efcbcab931c20e876e252769fe4279e0
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
2015-06-11 04:18:37 +00:00
Peter Seiderer
2cb4b7e947 Disable gold linker/new dtags support for host builds
There is no test for gold linker and new dtags support for the host build
(only for the target compiler/build) which leads to trouble in some cross
compiling environments (see [1] for details).

So disable gold linker/new dtags support unconditionally for host builds.

[1] http://lists.busybox.net/pipermail/buildroot/2015-May/128303.html

Task-number: QTBUG-46125
Change-Id: Ic62828704dcce461487d63860705158cce3e4af8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-10 22:17:59 +00:00
Richard Moe Gustavsen
45edf00fa8 iOS: handle loading assets with different format than jpg
The current implementation assumed that the image format
of the file loaded would be jpg. This has proven not to be
correct, e.g sometimes the format is png.

This patch will change how the image url is reconstructed so
we doesn't loose/hard code the format.

Change-Id: I22d8ca0108e52d3670c2601f0bb9255406b896cf
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-06-10 10:42:31 +00:00
Nico Vertriest
9ca4c2e71f Doc: corrected qdoc syntax error
Task-number: QTBUG-36985
Change-Id: I8cf79432bcdd497ee11c3f2ed70b11eaac1c0f57
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-06-10 10:41:33 +00:00
Friedemann Kleint
4fe332f543 Fix leaking of link in tst_QFileInfo::canonicalFilePath().
Give the link a name containing time stamp and ensure
it is deleted.

Change-Id: I846c58095acbcd92e7daccfd43a69dd97e95e7b0
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-06-10 10:06:17 +00:00
Friedemann Kleint
83d952c2d0 Refactor handling of environment variable QT_WINVER_OVERRIDE.
Rename variable named "override" and check using
qEnvironmentVariableIsSet() to avoid constructing a QByteArray
in the default case. Remove DOS-based OS.

Change-Id: Ibf348cd74ada5be99b9d2ed7637184a786df8244
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-06-10 10:06:08 +00:00
Morten Johan Sørvig
5818ba4b0b Compile on 10.7: Disable constexpr support
Apple Clang 3.2 is known bad with broken or partial
support. Which version is the first good version is
unknown.

Change-Id: I1b938281680dde5acbe0e08979444b6055a1cc4e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-06-10 08:14:59 +00:00
Lars Knoll
5dbd1ed7a3 Fix signature of new methods
Don't return a const QString &, return the QString by value. This
is still broken for some of the older methods, but let's not add
to it.

Change-Id: Ic5cabb1b89eda0fcf678dbe175963e03109e5c2c
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
2015-06-10 08:14:44 +00:00
Alex Blasche
36640aa0af Don't enforce all QMetaType::TypeFlag difference across Qt versions
QMetaType::IsGadget was introduced in Qt 5.5 and set when Q_GADGET is used.
If an existing Qt 5.4 class was converted to a gadget in Qt 5.5+,
the two types would have differing QMetaType::TypeFlags. Such a conversion
happened for QGeoCoordinate, QGeoShape, QGeoRectangle
and QGeoCircle. There might be other classes too.

In principle, the same problem exists for every future addition to
QMetaType::TypeFlag too. This patch ensures that new flags are kept in
the metatype database and the related qFatal call is not triggered for any
flag >= TypeFlag::WasDeclaredAsMetaType.

Change-Id: Ibb15daeb28d9a11b7f31658f4219cbca2499213f
Task-number: QTBUG-46454
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-06-10 05:29:22 +00:00
Marc Mutz
81054b117b Inline QSpacerItem::sizePolicy()
There's zero reason not to do it, esp. given how small
a QSizePolicy is.

Change-Id: I88b92bb27e6341b60a2cb3f2ddcc232f25f03ca8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2015-06-10 05:29:12 +00:00
Jake Petroules
62d7221850 Update for the newest Darwin-family operating systems.
Change-Id: I5ea44a720e01e388a8d219a89c5b0ccd8fd23146
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
2015-06-10 05:28:55 +00:00
Friedemann Kleint
bf440c18bb Fix return value of QWindowsFileSystemWatcherEngine::removePaths().
Previously, the path was removed from list returned (indicating failure
to remove) only when the thread's list was empty
(last file in directory). Move the statement up so that removal
happens when it is found in thread's list.

Task-number: QTBUG-46449
Change-Id: Ib79199c731f79357b0e5c17636254fbeb3a754a0
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
2015-06-09 09:50:35 +00:00
Kai Uwe Broulik
b38615c7e4 Don't manually delete QPlatformScreen
Change-Id: Ic0cdb08c948a0fd9a4da2d76fe321e72e1c478d5
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2015-06-09 09:14:30 +00:00
Christian Strømme
5ef662f1af Android: Delay initialization of Accessibility.
The accessibility class was created and activated in onCreate(), which
meant we where trying to activate accessibility before the platform
plugin was properly initialized.
With this change we will also activate, or deactivate, accessibility in
Qt whenever the state is changed by Android, compared to doing it at
start-up only.

Task-number: QTBUG-46355
Change-Id: I5cbae125df43f7694d4464d5054e6cfec4626e26
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-06-09 09:06:39 +00:00
Marc Mutz
42f5f03d0a Unexport QSslPreSharedKeyAuthenticator
Exporting value classes (as opposed to just their non-inline
methods) creates subtle binary incompatibility problems.

In this case, between C++11 and C++98 builds because of the
move assignment operator.

Even though it's not a problem in practice, so far, for some
types of classes this issue ie real (QVector, say), so it's
best to avoid exporting what we don't need to export.

Change-Id: Ifca6aaedcbfa79ca35e651de7630e69c3b266fe3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-06-09 08:51:35 +00:00
Jake Petroules
d0d0ee4ed7 Fix build on 32-bit OS X.
Change-Id: I5f01cb2a5a34a7a2a0c8f0571d50698bd46be733
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-06-09 08:51:10 +00:00
Marcel Krems
8046a574d2 Added support for Windows 10 in QSysInfo::productVersion()
Change-Id: I9e21ae62eea6c694e0b3b68dfd14264c3ce76246
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-06-09 07:59:02 +00:00
Friedemann Kleint
25fb41a58c QTest::qExtractTestData(): Set permissions of extracted files.
Currently, the files are extracted with read-only permissions.
If the data are extracted under a temporary directory, this prevents
it from being deleted, causing a leak and test failures (for example,
tst_qfileinfo).

Change-Id: Idc85f31265af234446ed21d736e9a2b9866dc62d
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-06-08 15:48:22 +00:00
Thiago Macieira
861cbef49f Remove useless truncation to the size the string already has
Caused by the refactor in 05351b0cde.

The count was probably wrong in the creation of the QKeyEvent, so this
commit keeps it wrong.

Change-Id: I049a653beeb5454c9539ffff13e573bba826e927
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
2015-06-08 13:23:51 +00:00
Alexander Volkov
5ca4cab712 xcb: Ignore emulated pointer events
X server sends emulated XI_Motion events before each touch sequence.
Filter them out to avoid a mess with mouse events synthesized in
QGuiApplication.

Change-Id: Ic919c86b41e2467a594de7c903cc0f3fc88a6804
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-06-08 12:59:10 +00:00
Alexander Volkov
e098b93488 xcb: Fix getting the window types from the property of QWindow
wm_window_type_property_id is a dynamic property, so we should
check that it is set by using QObject::dynamicPropertyNames()
instead of QMetaObject::indexOfProperty().

Change-Id: Ic7f3408a0d028f349538e0538c40c4b58360f7df
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2015-06-08 12:58:56 +00:00
Jaeyoon Jung
5772d7fe06 Load GLESv2 library with correct major version
Make sure GLESv2 library to be loaded even when the symlink of .so is
not installed.

Change-Id: Ie7c810a137cebc7fa59612830e3643861b532fdb
Reviewed-by: Jaeyoon Jung <jaeyoon.jung@lge.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-06-08 12:10:25 +00:00
Roman Bogolyubov
7672e1a8eb Fixing error with reading Time fields by qibase sql driver.
Change-Id: I8b874d2fbf54d0a2dcd6eea13f5b6d7405f6e663
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2015-06-08 12:07:10 +00:00
Friedemann Kleint
eb926dc31f QSwipeGestureRecognizer: Allow for small direction changes.
When trying to do a straight right/left/up/down swipe, a minimal
change in the other direction caused to the gesture to be canceled.
Introduce a threshold for checking such to prevent this.

Task-number: QTBUG-46195
Change-Id: I3e199f2ec0c81d23a16073b1f5b8fff004958239
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
2015-06-07 20:10:12 +00:00
Alexander Volkov
6468cf4e79 Fix centering dialogs
QDialog::setVisible() tries to adjusts the dialog position, but
it's not really possible if the dialog size is not defined yet.
Besides, if the dialog window is not created, QWidget::move()
will not really move it and will set WA_PendingMoveEvent flag.
And QWidget::setVisible() also will not change the position,
because we reset WA_Moved flag. Thus it may break adjusting
the position in QDialog::showEvent().

So adjust the position only in QDialog::showEvent().

Task-number: QTBUG-36185
Task-number: QTBUG-39259
Task-number: QTBUG-41844
Change-Id: I015a19f2e533f68178f4ee7519b17f5e9b5def7b
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-06-06 17:48:46 +00:00
Dyami Caliri
2d8c7087fb Fix race condition with QProcess on OSX 10.7
Closing the forkfd descriptor before disabling the deathNotifier causes
a race condition in ~QProcess. This is the same underlying cause as
QTBUG-22789.

Change-Id: I1cbdedc567fdfa8d95d111827b7bf9994661ecc7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-06-06 03:07:35 +00:00
Topi Reinio
bb7c78ed73 Doc: Remove generic thumbnails for a number of examples
These examples now define their own images. Having duplicate
definitions is bad as it results in invalid example manifest
xml, and Qt Creator fails to detect all examples declared in
that file.

Task-number: QTBUG-41996
Change-Id: Ia9d6cd0b3ec4e82b79b1df54774c2d9cea279a59
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
2015-06-05 20:04:34 +00:00
Joerg Bornemann
f54a3d783e embed a VERSIONINFO resource into QML plugins
On Windows, we set VERSION for QML plugins, because this embeds a
VERSIONINFO resource into the DLL that can be inspected by the user.

Change-Id: Ifb42efed6ceee05d05f61a271e028776cac6a3a2
Task-number: QTBUG-46473
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-05 13:08:41 +00:00
Topi Reinio
b0d85c45ad qdoc: Clear the map of HTML anchors for each generated page
To avoid conflicting anchors within an HTML page, QDoc keeps
the used anchors in a map, and appends 'x' to new anchors if
it was already used. However, this map was never cleared, so
anchors on one page affected the ones generated for another
page.

This commit clears the map for each page when generating the
page header.

Change-Id: Id30baced46917bb4d48cf58dde047f4fbcdf74cf
Task-number: QTBUG-46153
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-06-05 12:57:09 +00:00
Oswald Buddenhagen
d32f47b703 fix usage of wince scope
Fix style issues along the way.

Change-Id: Ic6a6de28e198eb0b14c198b802e78845703909b9
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-06-05 10:29:10 +00:00
Morten Johan Sørvig
50cd28b31d Cocoa: Remove ToolTip windows from popup stack
Match the cases for the adding logic.

Change-Id: I61f49975b4cfcf2acf26b31b521cbc9b96f9d150
Task-number: QTBUG-46447
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-06-05 10:02:30 +00:00
Timur Pocheptsov
4ee7bfaff4 QNSImageView - remove observer before dealloc
It can happen that NSMenuDidEndTrackingNotification comes after our imageCell
QNSImageView was deallocated (for example, mouse button is not released yet
when dealloc called). Remove soon-to-be-deallocated observer.

Change-Id: Ib155cc5f0b884c6b1fed0f986d12599096b582c6
Task-number: QTBUG-46425
Reviewed-by: Thierry Bastian <thierryb@filewave.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
2015-06-05 04:41:15 +00:00
Tim Blechmann
92b3397a89 testlib: fix compile error with macosx10.8
[NSDate date] returns an id, so one needs to send a message instead of
accessing a property.

Change-Id: I21ce9b64310315accb7a89278b292dd5c73adc4d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-06-04 11:52:51 +00:00
Tor Arne Vestbø
ef4ef2884d Use absolute rpath to Qt libraries for non-prefix builds
Task-number: QTBUG-46391
Change-Id: Iaebba29c340fb027e23a0923f3692d47f9d450d5
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-06-04 10:22:58 +00:00
Tim Blechmann
536c5df13f Cocoa: QCocoaApplicationDelegate - correctly install cleanup handler
+ (id)allocWithZone:(NSZone *)zone returns before the cleanup handler is
installed. this causes the QCocoaApplicationDelegate not to be cleaned up
by the garbage collector

Change-Id: Ic4862b96228539f3da857955f08157402974a104
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-06-04 07:56:48 +00:00
Allan Sandfeld Jensen
769cc4d878 Make logicalDpi consistent in relation to device pixel ratio
In GNOME/Unity XCB, logical DPI is scaled by device pixel ratio, and on
Macs logical DPI is constant but pixel ratio is based on physical DPI,
making logical DPI effectively physical DPI divided by pixel ratio.

This patch ensure the same logic is used for other XCB desktops.

Change-Id: I60f24618cd49f6b34a6ff1eff317883d191d3491
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-06-04 04:49:45 +00:00
Alexander Volkov
015bc9d7ce xcb: Track touch points on a per device basis
Until now there was no connection between the tracked touch points and
the touch device. So the touch point for one device could be updated
by the touch event from another device.

Change-Id: I09fcf03a171cc361c6b5b4995758aa53d29ff414
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
2015-06-03 14:05:11 +00:00
Allan Sandfeld Jensen
f04ed82ca2 Font definitions with different style names are not equal
Since we added font matching by style name, the style name is not just
a derived property and should not be ignored in comparisons.

The QFontDef::exactMatch comparison is left unchanged, since it tests
if a loaded font matches a requested one.

Task-number: QTBUG-30851
Change-Id: I4187c5b993815001f35bcf24dc449059bfdcba6f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-06-03 14:00:07 +00:00
Mitch Curtis
525a660ea3 Clarify QPainter::drawText() documentation.
The difference between rectangle and boundingRect was not quite clear.
This patch adds a snippet with a corresponding image, in order to
illustrate the difference.

Change-Id: Icb1fe737788cc93f1c5baa16bc0e04b8ec728f3a
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-06-03 13:41:37 +00:00
Allan Sandfeld Jensen
8f760808e0 Fix premul conversion from ARGB32 to A2RGB30 formats.
When a premultiplied alpha changes value because it is rounded to fewer
bits the premultiplied colors may need to be recalculated with the new
value. Otherwise the color will both be wrong and potentially invalid.

Change-Id: I9ec74a22aac73cd7ffab04e180cf2bf35bb4c315
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-06-03 12:01:26 +00:00