Commit Graph

25854 Commits

Author SHA1 Message Date
Konstantin Ritt
6c84f48da8 Apply Qt-specific changes to the bundled FreeType
Change-Id: I2a5719be48ed8e42ec373ac36d52735a40e85aa0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-03 16:21:13 +00:00
Konstantin Ritt
dba44cd4e5 Update bundled FreeType to 2.6.1
Change-Id: Ic489f8aa8ad42da3922f542e6c9064afe44f3799
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-03 16:21:10 +00:00
Konstantin Ritt
e056be144a Apply Qt-specific changes to the bundled HarfBuzz-NG
Change-Id: I026bc42066cd87b72bce05198aab792c979d7191
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-11-03 16:21:00 +00:00
Konstantin Ritt
4f8c75acbd Update bundled HarfBuzz-NG to 1.0.6
- Unicode 8.0 support
- Universal Shaping Engine
- Various fixes, improvements, optimizations, etc.

Change-Id: Ib6f8c92fa275c2a6575b9ae09068c92aecac7b4e
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-11-03 16:20:57 +00:00
Friedemann Kleint
dbb013d984 QDockAreaLayoutInfo::updateTabBar(): Save and restore current index.
When rebuilding the tab bar after hiding several dock widgets,
the index gets offset.

Task-number: QTBUG-49045
Change-Id: I05f6a976ca1d8c6f7cdf6532f1a728483398eabc
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-11-03 16:18:27 +00:00
Marc Mutz
ad0bc42d00 QStyleSheetStyle: remove use of obsolete QStyleOption*V<N>
They are obsolete since Qt 5.0.

Change-Id: I3bf9926fada136dda7406dc5f7b8edb3c71b55a9
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-11-03 16:11:58 +00:00
Marc Mutz
99d1969284 tests: remove use of obsolete QStyleOption*V<N>
They are obsolete since Qt 5.0.

Change-Id: Iefe47684526832def8fc5be5a170817059dcc530
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-11-03 16:11:51 +00:00
Nico Vertriest
60bb802598 Doc: replaced mentions of deprecated function
setDefaultCaCertificates()
--> QSslConfiguration::defaultConfiguration().setCaCertificates()

Task-number: QTBUG-49119
Change-Id: I0b53165fe658bb7e459ad7a5960210fc6c91b916
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
2015-11-03 15:39:14 +00:00
Paul Olav Tvete
5bb679590e Rename "wl_display" native resource
There is already a "wl_display" resource used by the client-side
Wayland plugin. This is confusing, and would cause horrible bugs
if ever a Wayland server was run as a client (the nested compositor
usecase). Therefore, use "server_wl_display" for the name of the
resource to be used on the server side.

Change-Id: I30455177a154e89b98ad3620b6a14626b821e54c
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
2015-11-03 15:38:07 +00:00
Frederik Gladhorn
b825c702ac Blacklist tst_QPrinter::doubleSidedPrinting for msvc 2013
This test keeps on failing on Windows 8 with 32 bit.
Let's add the platform despite this one test failing.

Change-Id: Id6a2b3e0b587d3cff29d1f616d5edacfcf68746d
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2015-11-03 15:19:33 +00:00
Tor Arne Vestbø
358715acc9 Fix build with Xcode 7.1 toolchain
Change-Id: Iab8111e4d3fd7ce68aae35eb6c0b600262ba3f10
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-11-03 15:19:04 +00:00
Liang Qi
6ed957fd7f fix MinGW ANGLE build
glslang_tab.cpp was not created in the right subdirectory.
This amends commit 69167189.

Change-Id: I031499baa53b72a1923883c58eb5ddfc2a02789a
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-11-03 13:46:03 +00:00
Eskil Abrahamsen Blomfeldt
6a6c14626d Windows: Default to vertical hinting when high-dpi scaling is enabled
Since hinted text layouts are not scalable, we should disable
hinting by default when the high-dpi scaling is active.

This is the Windows version of 0f7bc885aa,
which solved the same issue for the fontconfig database.

Change-Id: I48b5da5b045dec195fd257743175017f39cf9620
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-11-03 09:02:52 +00:00
Alejandro Exojo
115f303352 Fix the closeEvent of the systray example on OS X
The implementation of the close event handler requires handling the two
close events that are received on OS X when the user quits through the
application menu bar or the Command+Q shortcut. The first is an
spontaneous event, and the second a non-spontaneous one with the window
already closed.

Change-Id: I24e3d3f0de4d631bd2d5616c85ce747f085691e0
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-11-03 09:01:36 +00:00
Ulf Hermann
0f68f89205 QtWidgets: Do hide/show via WA_OutsideWSRange for native widgets
If a native widget has a width or height of 0 we don't have to
invalidate its backing store as that is done by the window
system. Certain applications rely on ... interesting ... behavior
of certain window systems in this case.

Task-number: QTBUG-48321
Change-Id: I78ef29975181ee22429c9bd4b11d96d9e68b7a9c
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
Reviewed-by: Alexander Volkov <a.volkov@rusbitech.ru>
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-11-03 08:21:35 +00:00
Eirik Aavitsland
24c50f8dcf Mirclient: Improved support for autotests
Outside qmlscene, a window may be created before its size has been
set. So check if the size is valid before using it.

Also, allow an app to bypass the adjustment to the requested window
size that is normally done in order to leave room for the system's
status panel. Such adjustment does not make sense in the context of
autotests, and would often cause false test failures.

Change-Id: I1627a2e4c37c68ac61c4976be5b73045eb2bb989
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-11-03 08:20:42 +00:00
Marc Mutz
de50a6da9f bb10style: remove use of obsolete QStyleOption*V<N>
They are obsolete since Qt 5.0.

Change-Id: I0f375b6dbc3def659d084e94081ad0e9dcfd1ca0
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2015-11-02 18:47:27 +00:00
Marc Mutz
d2bb036d50 [docs] widgets: remove remaining references to QStyleOption*V<N>
They are all obsolete since Qt 5.0.

Change-Id: Ie56b99ad470fddb87f277f3f4f3845764828d10a
Reviewed-by: Jens Bache-Wiig <jensbw@gmail.com>
2015-11-02 18:43:35 +00:00
Marc Mutz
595d6797be widgets snippets: remove unreferenced snippets
They were using QStyleOption*V<N>, which are all obsolete since
Qt 5.0.

Change-Id: I6a8a666cf18d52fcac8f305f38c8ef0843ec7bfd
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-11-02 18:43:30 +00:00
Marc Mutz
1c9f53c4e5 examples: remove use of obsolete QStyleOption*V<N> typedefs
These are obsolete since Qt 5.0.

Change-Id: I297477eff129558553f52a04bb7828d95db27969
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-11-02 18:43:26 +00:00
Peter Kümmel
8c5acf6573 configure: add link-time-optimization option
Windows' configure.exe supports -ltcg since several years,
this patch adds -ltcg to Unix's configure script.

Change-Id: I3f39086c67c3f4cacd252f63de30e3cfc4aa22bb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-11-02 14:45:57 +00:00
Joerg Bornemann
dfaffcbf2a QWindowsPipeReader: fix occasional "Unknown error 995"
After canceling the asynchronous read operation, the
notified() slot receives ERROR_OPERATION_ABORTED.
We must not handle this situation as an error.

This amends commit 5ce567c5.

Task-number: QTBUG-48336
Change-Id: Iff948ceb3ad1f805a9de8c188fbc39ed4c76ba82
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-11-02 12:38:50 +00:00
Paul Olav Tvete
317b9e9c5f Support for Wayland servers on i.MX6
A wayland compositor on i.MX6 needs to create the wl_display
before creating the EGL display. This wl_display then needs to be
exposed so that QWaylandCompositor can use it.

Change-Id: Id60f6dd2fbba05140ca0671da6f17dbc2ecce3a3
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-11-02 09:43:29 +00:00
Edward Welbourne
ab1a5f1003 Fix pauseEvents() test to test what should be true, not what is.
If the future is finished when a watcher starts watching it, it is
perfectly reasonable for the watcher to get the finished message
promptly.  If you pause the watcher before any message loops get to
run, the message presently won't get through until the watcher is
resumed, but there is no reason to guarantee that; indeed, one could
consider it somewhat perverse behavior.

So move the reportFinished() calls to after the pause()s.
Also eliminate a used-once local variable and use QTRY_VERIFY() in one
place where qWait() was used before.

Change-Id: I4bc6091fd7437a4d341be511b7a140f3d72d850e
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-11-02 09:40:32 +00:00
Edward Welbourne
ada4b4aaa5 Attach all signal spies before setting the watcher's future.
Attaching spies afterwards was provoking a warning during tests:
QFutureWatcher::connect: connecting after calling setFuture() is likely to produce race

Change-Id: I6ee8c3613cecebd1c69b0337139d8a19a33f4a11
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-11-02 09:40:09 +00:00
Topi Reinio
70eb137768 Doc: Fix snippet tags for QString::[last]indexOf() overloads
Duplicate identifiers were introduced for QString code snippets,
resulting in the wrong snippets to be quoted.

Change-Id: I75e9c99cbc73bf39262079f7f53342a6ac90c2a7
Task-number: QTBUG-49111
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
2015-11-02 09:17:24 +00:00
Laszlo Agocs
635394c84a WinRT: Fix wrong mouse event position for non-fullscreen windows
When calling handleMouseEvent and similar, there are two choices when it
comes to the global and local position: by specifying the window it is the
caller's responsibility to provide a valid local position. When the window
is null, QGuiApplication calculates the local position. The winrt plugin
chose the former and therefore passing the global position as local is
wrong.

Task-number: QTBUG-48208
Change-Id: I3e1137cdb5d023296c4d73899da016641303c7df
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-11-02 09:16:31 +00:00
Laszlo Agocs
9b735a4618 WinRT: Add support for QOpenGLWidget
Also involves adding support for sharing contexts.

Task-number: QTBUG-48663
Change-Id: I0b18846ae70b63a0a21132f820a12ea744c0e936
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-11-02 08:48:51 +00:00
Friedemann Kleint
97b564374b qcoreapplication_win.cpp: Correct FIXME comment on qWinMain().
Mention that it is still used by Active Qt.

Task-number: QTBUG-49148
Change-Id: Ic31b2f60b25886cd55c5fa516082d79311ab84cc
Reviewed-by: Fredrik Orderud <forderud@gmail.com>
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-11-02 08:48:16 +00:00
Takao Fujiwara
550cd1d68c IBus: Implement QPlatformInputContext::locale()
Listen to "GlobalEngineChanged" dbus signal.

Task-number: QTBUG-48772
Change-Id: Ia186a66c75fb3ce2fdf5ef9e358c1807f674594b
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-02 01:16:01 +00:00
Marc Mutz
7796562998 QDataBuffer: disable copy special member functions
The compiler-generated ones would break class
invariants.

This internal class so far isn't copied. This patch makes sure
that it stays that way.

Change-Id: I8bf75058edaf2adf148ae9edff4bf4e9a3b3368d
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-10-31 18:50:38 +00:00
Morten Johan Sørvig
8793ad8175 QMacStyle: Select high-dpi pixmaps from icons
Pass a QWindow pointer to QIcon::pixmap(), which
allows it to select a pixmap based on the target
device pixel ratio.

Change-Id: Ifb8e49c0eff0a42233a90eee3dfb995c2441bfd6
Task-number: QTBUG-38100
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-10-30 22:02:23 +00:00
Morten Johan Sørvig
74a2e29705 QCommonStyle: Select high-dpi pixmaps from icons
Pass a QWindow pointer to QIcon::pixmap(), which
allows it to select a pixmap based on the target
device pixel ratio.

Change-Id: Ib592de2a25060658b70b4e4ab7ff5fbaa9b60260
Task-number: QTBUG-44424
Task-number: QTBUG-38100
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2015-10-30 22:02:05 +00:00
Timur Pocheptsov
25717bedfb tst_qudpsocket::multicast - blacklist several combinations
Different multicast tests fail on different platforms for different reasons.
Blacklist them to get rid of insignificant and later fix/un-blacklist.

Change-Id: I91548366c7666478ea1cc446bbf337becfdefd49
Task-number: QTBUG-46612
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@theqtcompany.com>
2015-10-30 22:01:50 +00:00
Maurice Kalinowski
b347697a9d winrt: Only destroy existing egl surfaces
Running for instance the widget auto tests reveals a lot of egl warnings
due to items being created and not shown. Hence no surface was created
but tried to be destroyed when window was deleted.

Change-Id: I5c99eeb94a8fc2cfeb98f85445e013de61ff9ca9
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-10-30 21:50:58 +00:00
Maurice Kalinowski
25dcc90d79 winrt: Exit application properly
After returning from main() it is not sufficient to exit the main
thread, it also needs to be ensured that the Xaml::IApplication object
gets notified by invoking Exit.

Task-number: QTBUG-49141
Change-Id: I8ca434be5f17ddddd465ede2a79585c28c51b3ef
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-10-30 21:50:43 +00:00
Maurice Kalinowski
ccbb1b4409 winrt: store egldisplay globally
The QWinRTEGLContext must not store the display, as it might get
destroyed while other objects still need it, for instance QWinRTWindow
to delete the surface. Rather create a global static for creating the
display once and delete it when application lifecycle ends.

Change-Id: Id176b6934e1d1327f5bb70ad0d258de91f675041
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-10-30 21:50:09 +00:00
Andrew Knight
5814cd9d27 winrt: initialize EGL display with automatic Trim and WARP
The minimum feature level is now detected before requesting a display.
If it is less than 9_3, use the WARP device instead.

Task-Id: QTBUG-44495
Task-Id: QTBUG-44694
Change-Id: I9f81f4f92269fab73c291f7373aa07236c7e5f98
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-10-30 21:49:54 +00:00
Friedemann Kleint
d946507727 Testlib: Avoid formatting unneeded messages.
Brings down gui/painting/qcolor from 7s to 3s, reducing the calls
to printf() helpers from 16E6 to 10E6.

Task-number: QTBUG-38890
Change-Id: I34065e6f09fc9a14920b06aa6936908229f3f9c4
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
2015-10-30 21:28:20 +00:00
Jarek Kobus
11638dad10 Add a test case for conflicting transitions
This tests a fix: ff3ba1045e

Change-Id: I623b4e270c7eba1af0c4c023e83b6eea50fb45a1
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-10-30 21:15:38 +00:00
Dyami Caliri
5a7f69f824 Fix Vista style compilation with QT_NO_ACCESSIBILITY
A recent change uses an accessibility function even if accessibility
is disabled.

Change-Id: Ibf9afbb90120772065743b2f9dd3615e4e6a2f37
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
2015-10-30 16:42:25 +00:00
Edward Welbourne
f86e6643b6 Compile-fix: add missing declaration in debug.
QAbstractSocketPrivate::readFromSocket() had a qDebug() that
references its q->... so it also needs its Q_Q() declaration.
Only relevant when QABSTRACTSOCKET_DEBUG is enabled (which it
normally isn't).

Change-Id: Ib82fd032fb2c4143a0987b9162377d0d7e968e95
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-10-30 09:58:15 +00:00
Jarek Kobus
ff3ba1045e State machine: fix removeConflictingTransitions()
Since QSet<>::intersect() modifies the original
set, exitSetT1 has wrong content for next iterations.
Use intersects() instead.

Change-Id: I09e0961ec6dfb34ade88d48d1e009529aeab82b4
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-10-30 08:20:01 +00:00
Rafael Roquetto
f7f4dde80e Fix C++11 compiler detection for QNX.
1. _HAS_DINKUM_CLIB is defined whenever a C header is included, even when
Dinkum is disabled.

2. _HAS_* macros are always defined, as either 0 or 1.

Change-Id: I727b854a6a733e2028e6facc327e264d0c4c9e90
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-10-29 16:07:02 +00:00
Marc Mutz
132b032a2f src/gui/painting/painting.pri: add missing qdatabuffer_p.h
Change-Id: I40ae6beb14058948030e63a2535ff72a6b8072c1
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-10-29 11:26:39 +00:00
Frederik Gladhorn
0667ba3f24 Disable tst_QSslCertificate::subjectAndIssuerAttributes completely
As a follow-up for 5c1b9bbdf1 disable the
test on all platforms, since it fails on newer openssl. This was now
also happening on Windows, so until a fix is there, skip the test.

Change-Id: I6c8822c0ac5411b1114e9cd426219574ab1c9b54
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2015-10-29 10:13:57 +00:00
Thiago Macieira
d020e0781c Workaround: don't create ELF version scripts for Android
Somehow qmake doesn't add the correct rules for the Android makefiles,
so the build fails when cross-compiling from Windows. The reason for
that is unknown (could be related to that "qt_android_deps" config, but
that isn't used anywhere in qmake or the buildsystem).

This isn't likely to be a problem, since there are no global installs of
Qt on Android.

Change-Id: I1d0f78915b5942aab07cffff140f95ce32324030
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-10-29 10:04:04 +00:00
Joni Poikelin
b20d6cded7 Fix QDomNamedNodeMap::item crash with negative index
Task-number: QTBUG-49113
Change-Id: I62dee4c112b73a25628657bc3d2ae675f26b87d8
Reviewed-by: David Faure <david.faure@kdab.com>
2015-10-29 08:05:45 +00:00
Romain Pokrzywka
26238aca8c Fix crash on process exit when the evdevtouch plugin is loaded
The QGuiApplicationPrivate object is already destroyed by the time
the plugins are cleaned up during the application destruction, causing
a segmentation fault in updateInputDeviceCount().
There's no point in calling updateInputDeviceCount() in the destructor
anyway as the whole process is on its way out that stage, and we
don't support unloading plugins during the application lifetime
otherwise, so the call can just be removed from the destructor.

Change-Id: Id819d73cb8234ccedb6ea7c3e39950589ee680a1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-10-28 21:38:23 +00:00
Thiago Macieira
a90869861c QLocale: Actually get the language script for the system locale
The Windows code was always returning AnyScript, which in turn made
QLocale::textDirection() for the default and system locales always
return LTR, even if the Windows UI was in RTL mode.

[ChangeLog][QtCore][QLocale] Fixed a bug that caused
QLocale::textDirection() to always return Qt::LeftToRight and
QLocale::script() to return QLocale::AnyScript on for the Windows system
locale.

Task-number: QTBUG-49031
Change-Id: I7e6338336dd6468ead24ffff14112c8d348eedba
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-10-28 21:02:56 +00:00