Commit Graph

25961 Commits

Author SHA1 Message Date
Thiago Macieira
932ad39080 Remove support for disabling C++11 support in configure
Qt now requires it.

We could try and run the common/c++11 test for MSVC too, but we know it
passes, so we won't bother and thus slow down the configure step.

Change-Id: Ib056b47dde3341ef9a52ffff13ef6b53b9f8bb65
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-11-04 14:04:35 +00:00
Richard Moe Gustavsen
b63160b079 iOS: refactor removeMnemonics(const QString &) to QPlatformTheme
This function is needed across several OS', so refactor it out to
a common place.

Change-Id: I35b957029c965672739d03cd2db3e87f5bd0acdf
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-11-04 14:00:54 +00:00
Friedemann Kleint
50bda9e2ac Windows: Use logical DPI to activate High DPI scaling.
High DPI should be disabled when the user chooses small fonts on a
High DPI monitor, resulting in lower logical DPI. The auto-algorithm
should then be equivalent to that of the device pixel ratio scaling
of Qt 5.5.

Task-number: QTBUG-49195
Change-Id: I756770ec7251b5b9b901253ded82e829aa50d38b
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-11-04 13:43:39 +00:00
Friedemann Kleint
3dbdc367ff Suppress the modal window handling for dialogs embedded into QGraphicsView.
A dialog embedded into QGraphicsView has Qt::WA_DontShowOnScreen set
(similar to a native dialog). It must not trigger the modal handling
though as not to lock up.

Task-number: QTBUG-49124
Change-Id: I22ce3f18d01df017b9317666770686bd4491387f
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
2015-11-04 13:43:29 +00:00
Nico Vertriest
1c01cfa077 Doc: corrected error about path list separator
Task-number: QTBUG-48673
Change-Id: Id5b99c0dd778b55c937d345e49995086c5ef372e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-11-04 13:38:56 +00:00
Nico Vertriest
e22e8cee75 Doc: fixed broken links
Task-number: QTBUG-43810
Change-Id: If6ac30a0407731b31e8aaad28d33e2bb49dee6f3
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-11-04 13:38:45 +00:00
Samuel Nevala
b0e89845df winrt: Don't wait for runOnXamlThread to finish for timers.
Fixes possible deadlock that occurs when synchronous WS event handling
(introduced in ee767c8) is used across threads.

Task-Id: QTBUG-49051
Change-Id: Iae973c2d4f4619b9eeb6e9393330b166ec608d27
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-11-04 13:34:18 +00:00
Maurice Kalinowski
39639694c8 winrt: move input context creation into xaml thread
This way we ensure that creation always works and we can access the
input pane statics.

Task-number: QTBUG-49034
Change-Id: I5d0340a7f6304b717f17f2106134fa9d083a7fde
Reviewed-by: Samuel Nevala <samuel.nevala@intopalo.com>
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-11-04 13:17:00 +00:00
Thiago Macieira
439a713643 Workaround part 2: don't use the version tagging symbols on Android
Commit d020e0781c added a workaround to
the QtCore build due to a qmake bug in handling the extra target on a
Windows host. The workaround removed the tagging symbols from QtCore.

This commit removes the using of those symbols from everywhere else.

Task-number: QTBUG-49208
Change-Id: Idba8c29717f34c70a58fffff14133399f9f0b7f2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-11-04 13:08:02 +00:00
Liang Qi
e304dfb2d3 Merge "Merge remote-tracking branch 'origin/5.5' into 5.6" into refs/staging/5.6 2015-11-04 13:06:17 +00:00
Samuel Nevala
96c9817575 winrt: Avoid blocking the XAML thread
Blocking the XAML thread can lead to a deadlock, so switch to the
non-blocking version of handleExtendendKeyEvent.

Task-Id: QTBUG-49051
Change-Id: I65a348af1f77b6afcd7d0fb9a80c70d60fc94c27
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-11-04 12:42:19 +00:00
Edward Welbourne
cf0843c5f5 Make variable const as it should be
Change-Id: If5782473eceaa38de75b25d1da247dea9fe135da
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-11-04 12:10:18 +00:00
Edward Welbourne
0ea6ed9fc4 Use memset to clear struct tm before filling fields.
This ensures any non-standard fields (e.g. glibc's tm_gmtoff) are
clear, as well as the other fields mktime overtly promises to ignore.

Change-Id: I45d69eff7b5cb37ab910bf3d4d2d1481fd93aedb
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-11-04 12:10:12 +00:00
Morten Johan Sørvig
add58edcdb Update high-DPI scaling enablers.
Make it possible to enable and disable both at the
environment variable level and at the source code
level. This applies to scaling done by Qt using display
density information provided by the operating system.

Disabling is done with a 'veto' system: both the environment
and source code my prevent the other for enabling
scaling. This covers use cases of 'my system does not
provide correct display metrics' and 'my application
needs access to display pixels', respectively.

On the environment, scaling is now enabled with
QT_AUTO_SCREEN_SCALE_FACTOR=1 and disabled with
QT_AUTO_SCREEN_SCALE_FACTOR=0. In source code the
corresponding application attributes are AA_EnableHighDpiScaling
and AA_DisapleHighDpiScaling. Not setting any of these
indicates 'no preference'.

The global scale factor set by QT_SCALE_FACTOR is
not affected by any if the disablers.

Task-number: QTBUG-46615
Change-Id: If18607d4b56ace1914a710e5aa60b2f0968e0010
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-11-04 12:08:59 +00:00
Liang Qi
f8246099ea Merge remote-tracking branch 'origin/5.5' into 5.6
Conflicts:
	src/corelib/io/qstorageinfo_unix.cpp
	src/plugins/platforms/windows/qwindowsmousehandler.cpp
	src/widgets/styles/qwindowsvistastyle.cpp

Change-Id: Ie1725933815891cc8c86258d4c0e8ed0ab386edf
2015-11-04 12:28:48 +01:00
Samuel Nevala
1bf639d560 Modify QPA handleExtendedKeyEvent.
Allow setting tryShortcutOverride for handleExtendedKeyEvent
with no timestamps.

Change-Id: I469b144cfcaf063861debe86195e1f96ac94cc37
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-11-03 17:16:22 +00:00
Marc Mutz
efe993fb2d QAndroidStyle: remove use of obsolete QStyleOption*V<N>
They are obsolete since Qt 5.0.

Change-Id: I1295ba7a8895b1f066b8714dda40afd619018dce
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-11-03 17:06:31 +00:00
Peter Kümmel
7c19b28c58 configure: set ltcg only for Qt modules
Adding ltcg to qconfig.pri enables ltcg
unconditionally for everyone using msvc.

Change-Id: Ie1d11612a10fcdcb27de41664141e661a17323dd
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-11-03 17:03:53 +00:00
Marc Mutz
c5239ec12d QCalendarWidget: hold SectionToken by-value
There really is no point in allocating a struct containing a
pointer and an int on the heap. Allocate by-value instead.
Since QList would be inefficient then, switch to QVector.

A pointer to the current token was replaced by its index.
That saves looking it up on every toPreviousToken()/
toNextToken().

This saves 816 bytes of text size on optimized AMD64 / GCC
builds, even though QVector expands to more code than QList.

Change-Id: I030ee3f6acabe76168a518495bd4462711519e54
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-11-03 16:34:01 +00:00
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
Timur Pocheptsov
8e43f25edd tst_QNetworkReply::ioGetFromBuiltinHttp - fix for large kernel buffers
On some platforms our 1200 x 1000 bytes seems to be not enough to
fill kernel buffers (socket write). But it's not a reason to fail test,
just skip it.

Task-number:QTBUG-49205

Change-Id: I13ea6f315f9318288ba054cf8bfa6cdd61e489d2
Reviewed-by: Richard J. Moore <rich@kde.org>
2015-11-03 15:33:53 +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
Ulf Hermann
8c2ca33073 Replace qdtoa and qstrtod implementation by a 3rdparty library
This also fixes the underlying cause of QTBUG-44039 and QTBUG-43885.

You can choose between system, qt, and no libdouble-conversion
support. If you choose "no", snprintf_l and sscanf_l will be
used.

By default, system double conversion is used if the system provides a
double-conversion library. Otherwise the bundled libdouble-conversion
is built. sscanf_l and snprintf_l are not used by default as the
planned "shortest" conversion mode to produce the shortest possible
string will give less precise results when implemented with snprintf_l.

Change-Id: I8ca08a0fca5c54cf7009e48e771385614f6aa031
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-11-02 17:00:50 +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