Commit Graph

33755 Commits

Author SHA1 Message Date
Friedemann Kleint
29b38bea45 Polish the StorageView example
Introduce nullptr and override. Change the ready/valid columns to
use check marks. Right-align the numerical columns. Add a shortcut
to refresh. Sort by path, making sure the root volume is first.

Task-number: QTBUG-60635
Change-Id: I74cda7647f544902aaf4d2a0ab76986f1523aa6f
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
2017-09-20 12:19:39 +00:00
Liang Qi
01bc69f99f Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts:
	src/plugins/styles/mac/qmacstyle_mac.mm
	src/widgets/util/qcompleter.cpp
	src/widgets/widgets/qmainwindowlayout.cpp
	src/widgets/widgets/qmdisubwindow.cpp

Change-Id: If0e96981af07ce36ac68f2e69211bc2120f93973
2017-09-20 11:58:32 +02:00
Tony Sarajärvi
bf41fbb233 Blacklist tst_QGraphicsScene::isActive in openSUSE 42.3
This autotest is blacklisted as it is deemed flaky.

Task-number: QTBUG-63260
Change-Id: I3e83bcb0dbbe4fbf9d5c16f764fbeeca2b52d10c
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-09-20 09:48:36 +00:00
Stephan Binner
6d699d0820 Convert features.menu to QT_[REQUIRE_]CONFIG
Change-Id: I031356411294b259ebd2b22c53159c93fd92af6e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-19 10:57:12 +00:00
Stephan Binner
9833e68217 Convert features.textedit to QT_[REQUIRE_]CONFIG
Change-Id: I0fb0e658796484f374586d8d1f0f1b9167ab30d2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-19 10:57:08 +00:00
Laszlo Agocs
14e20bb474 windows: Blacklist Intel 8.15.10.1749
Task-number: QTBUG-56360
Change-Id: I438e58e13b364a7c4748a4325cb7ff00bb00b25b
Reviewed-by: Joni Poikelin <joni.poikelin@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-09-19 10:52:49 +00:00
Allan Sandfeld Jensen
6c4a1914e0 Hide ibus IM on password fields
We haven't hooked on any of the properties to tell ibus IMs the type of
field or that it should be hidden, so hide it like is standard.

Change-Id: Iaa64c669f7162b60c16971ec962101b974108e65
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2017-09-18 22:20:05 +00:00
Thiago Macieira
4e30001e5f Mark Clang 5.0 as warning-free
Change-Id: I27b55fdf514247549455fffd14b17a4ae1d8ff2d
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-09-18 21:21:15 +00:00
Andy Shaw
3c95c748e0 Fix recordOCI() test to treat clob/nclob as QByteArray
Change-Id: I0315b23dad66f98fc681c624d4afa8b5abb54a7b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-18 21:06:49 +00:00
Andy Shaw
2d168af7d7 OCI: Use correct type for getting doubles
Change-Id: Iffb81a37a517e58d48757d82f93f20e8c5100033
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-18 21:06:42 +00:00
Jake Petroules
83122b1932 Remove unnecessary VxWorks ifdef
Change-Id: Ie655bdff9a09c6060f66e4346b94ba52443241f4
Reviewed-by: Tuomas Heimonen <tuomas.heimonen@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-18 21:06:25 +00:00
Jake Petroules
54a242f7ed Add missing pwd.h include
This file uses functions declared in this header, and it is not pulled
in transitively on all platforms.

Change-Id: I6654118883a8dc22dacf1beb7b9b1c662719d25c
Reviewed-by: Tuomas Heimonen <tuomas.heimonen@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-18 21:06:21 +00:00
Jake Petroules
69b16a46e8 Exclude QSystemSemaphore test with -no-feature-systemsemaphore
Change-Id: I9db6b68c3d26b27a0203c68c48ab73602eb15095
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2017-09-18 08:56:53 +00:00
Giuseppe D'Angelo
81a19050d8 QSharedPointer: fix undefined behavior in operator<
Pointers belonging to different arrays must be compared using
std::less.

Change-Id: Ib77af7b1b2da58d7243fa77273a8a45ee9035a1a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-17 11:41:40 +00:00
Jake Petroules
2740b9d668 Use QT_LSTAT instead of lstat directly
Not all platforms (such as VxWorks) have lstat.

Change-Id: If42f0041f9a6d9bec0a355173c88f28f1819bd57
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-09-15 20:52:23 +00:00
Jake Petroules
7127202358 Exclude tst_QDir::mkdirOnSymlink on Unix platforms without symlinks
One example is VxWorks.

Change-Id: I253df715a9417c1f9cede79b1e1860924e0da8a9
Reviewed-by: Tuomas Heimonen <tuomas.heimonen@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-09-15 11:20:32 +00:00
Jake Petroules
ceffc7e0e7 Exclude DBus performance test with -no-feature-process
Change-Id: I3e650b21139bd59b1f8386f4abb39aadf85e412f
Reviewed-by: Tuomas Heimonen <tuomas.heimonen@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-09-15 11:20:21 +00:00
Robert Loehning
2d7b143085 Fix conditions in some QMAKE_COMPILER_DEFINES assignments
We obviously should check the variable we're about to get the data from.

Amends 1216f596bd.

Change-Id: Ibe87138b9c9aa99837b4fbf3769cd26ca1aaacb9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-09-15 09:03:12 +00:00
Friedemann Kleint
c23c4a921d Fix documentation code snippet of QString::arg(QStringView)
Fix qdoc warning:
src/corelib/tools/qstring.cpp:7809: warning: Command '\snippet (//! [11-qstringview])' failed at end of file 'qstring/main.cpp'

Change-Id: Ie5a57bd94ba64ceab5179593f1df35be29c9985a
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2017-09-15 07:46:00 +00:00
Thiago Macieira
5d48143ff8 Autotest: use QUdpSocket instead of QTcpSocket in tst_QNetworkInterface
We don't need to bother the network test server with a TCP SYN packet.
All we need is for the local operating system to figure out the IP
address it would use to send a packet to the test server. We can do that
with QUdpSocket.

Also, the network test server hasn't been called "fluke.troll.no" for
almost a decade.

Change-Id: I209fcd5dbc2b4e5381cffffd14df65ccc7133247
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2017-09-14 13:17:02 +00:00
Timur Pocheptsov
6aa001570d Fix OpenSSL 1.1 build
Fix the 'shared' OpenSSL code for those our users who build with QSSLSOCKET_DEBUG
defined and OpenSSL 1.1 detected: the preprocessor-excluded fragment is using old
API. Also remove never used in this file (and commented out) macro.

Task-number: QTBUG-63170
Change-Id: Id24ccf2955f0a65e4f1dea1ecb06e10245105080
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
2017-09-14 12:18:34 +00:00
Tobias Koenig
62ea3eaf05 Improve PDF/A-1b support in QPdfWriter
Fix warning of missing F key in Annot directory. The F key needs
to have the printing flag (bit 3) enabled and all other bits disabled.
(Clause 6.5.3 in ISO 19005-1:2005)

Change-Id: Iddba6b71f516aca75cd573584aa184c1b808863d
Reviewed-by: André Klitzing <aklitzing@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-09-14 11:56:54 +00:00
Joerg Bornemann
342609b542 Fix quoting of mocinclude.opt for paths containing spaces
If MOC_INCLUDEPATH exceeds a certain limit, its content is written into
a file named mocinclude.opt, which is then passed to moc as a response
file. That moc parameter was not properly quoted, and the moc call
failed for paths containing spaces.

Task-number: QTBUG-63197
Change-Id: Ib0542d80ce1bab239e0e6b6e24fadd11007b1846
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-14 11:22:49 +00:00
Michael Winkelmann
3d67793a9e Revamp SQL examples to C++11
Changed signals and slots to new syntax, used nullptr and replaced
foreach with new C++11 range based for loops.
Also fixed a few minor flaws.

Task-number: QTBUG-60633
Change-Id: Ice4030133971912f96752d9d84c638c70fd73e35
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-09-14 10:48:48 +00:00
Allan Sandfeld Jensen
590e71a69c Fix convertToFormat with color-tables
The function was only well defined from RGB32 and ARGB32PM formats,
this patch fixes it so it behaves well from all formats.

Task-number: QTBUG-63163
Change-Id: Id892531d9aaf997b707b430196c1166493792a2a
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2017-09-14 08:13:46 +00:00
Lars Knoll
b6e99ec056 Optimize QVariant::cmp()
Don't always copy the variants that we want to compare. This can
in some cases be a relatively expensive operation.

Change-Id: I2b3fd246ac136b19d8a8d281fbdcfb0417c8fb6c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2017-09-14 06:27:56 +00:00
Thiago Macieira
84fcc38955 Autotest: when using libproxy, QNetworkProxyFactory isn't generic
Looks like whoever created the blacklist never tried to figure out why
it happened.

Change-Id: I84e45059a888497fb55ffffd14d2fb29e32a4521
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2017-09-13 18:42:44 +00:00
Mårten Nordheim
1394610c79 Workaround for proxyChange failing when run alone
The issue itself is not really worth fixing (the very first request
being supposed to have a different proxy than any of the other
following requests before a session has been initiated), but we can
at least make the test pass when it is run alone.

Task-number: QTBUG-63134
Change-Id: I6c7df5c5653541031811e6bff562572061afae0f
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2017-09-13 18:42:30 +00:00
Thiago Macieira
306a6b9dec QNativeSocketEngine: Simplify nativeHasPendingDatagrams()
We don't need the sockaddr structure.

Change-Id: I6e9274c1e7444ad48c81fffd14da826387d72f83
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-09-13 16:19:56 +00:00
Thiago Macieira
a9ff368ac7 QNativeSocketEngine: reduce memory usage in nativePendingDatagramSize()
The Windows implementation had the right idea: by using a chunked read,
we can tell the OS to reuse the same buffer over and over, so we don't
need to grow a buffer to the size of the datagram when peeking. This
commit implements that strategy on Unix and changes both implementations
to start at 1500 bytes instead of 8192 (1500 is more than enough for
almost all datagrams we're going to receive).

Let's also not use a static buffer, but a stack-based one. No need to
dedicate 1500 (or, worse, 8192) bytes for something that is only seldom
called.

Change-Id: I320d9d2f42284a69a4cbfffd14dd92a6775bf28b
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-09-13 16:19:54 +00:00
Thiago Macieira
3b61cd6ad7 QStringView: De-inline the length calculation so we can use SSE2
Performance is more important in this case than the theoretical benefit
of constexpr. This commit implements the SSE2 search for 16-bit null and
it might be possible to implement the equivalent for AArch64
(investigation required). It also adds a fallback to wcslen() for
systems where wchar_t is short (non-x86 Windows or 32-bit x86 build with
-no-sse2).

We can re-add the constexpr loop once the C++ language has a way of
overloading constexpr and non-constexpr. GCC has a non-standard way to
do that with __builtin_constant_p, which is also implemented in this
commit, but note that the inline function is still not constexpr.

Change-Id: I6e9274c1e7444ad48c81fffd14dcaacafda5ebdc
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-13 16:19:45 +00:00
Andy Shaw
793f0ddec2 Win: Handle installation of read-only target files correctly
When the source file is read-only then it would copy the file with that
attribute set when it is installed. However this will cause a problem
if it is installed a second time. Therefore the read-only attribute
needs to be manually reset before installing and again before touching
the file. Once the process is done then it is set back to be read-only
to preserve the state of the original.

Change-Id: I1c01f418ef3c9bd434acd2c2b8ee695544d7bb35
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-13 12:45:35 +00:00
Lars Knoll
1d5e55c2a3 Improve performance of QVariant::canConvert()
Add an early check if both types are the same.

Change-Id: If6fc60a58fce641521c083bf920e72bf3d2d4c28
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-13 06:48:58 +00:00
Thorbjørn Lund Martsum
9ad0e09f5b QMenu: Fix size on high DPI + multi screen
When calculating item sizes (used for menu size)
the styles consider the widget screen. This widget
screen could be a wrong default or an obsolete value.
This patch ensures the screen is correct set on popup.

[ChangeLog][QtWidgets][QMenu] Fixed menu size issue when
using high DPI on multi-screen system.

Task-number: QTBUG-59794
Change-Id: I84461441d5d33cb8dc04ab1acb9630fbfc8c5514
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Morten Kristensen <msk@nullpointer.dk>
Reviewed-by: Per Liboriussen <liborius@chelys.dk>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2017-09-13 06:35:40 +00:00
Christian Stenger
01ea60fdd2 Testlib: Do not list unsupported option
This option is listed when displaying the help of Quick tests,
but was never actively supported as it had been removed before
Qt5.0 was finally released.

Change-Id: I4cdf8d86471ab72e289f27a07a5f04c0338bfdbd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-09-13 06:27:54 +00:00
Stephan Binner
79bf70b5b6 Convert features.slider to QT_[REQUIRE_]CONFIG
Change-Id: I03adb5e34071aa106bbfe7caa2d41a93e8d1e263
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-12 18:13:28 +00:00
Stephan Binner
710a9180c1 Convert features.lineedit to QT_[REQUIRE_]CONFIG
Change-Id: I509977994b11a7fc0c109bfcc83aadeee6c9b0b8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-12 18:13:14 +00:00
Stephan Binner
df99fbdbed Convert features.spinbox to QT_[REQUIRE_]CONFIG
Change-Id: Idecb6927c20ff009795b0ad94bbb7199df98a8f8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-12 18:13:08 +00:00
Stephan Binner
bef8b905af Convert features.sizegrip to QT_[REQUIRE_]CONFIG
Change-Id: Ieac4ae1f0b8b84e943c00da9903346a44e57138c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-12 18:12:47 +00:00
Tony Sarajärvi
ba1b73175b Blacklist tst_QOpenGL autotest in Windows 7
Task-number: QTBUG-63122
Change-Id: Idb4c84800265c2e446d27516261fcc418be7863b
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-09-12 07:15:25 +00:00
Tor Arne Vestbø
ad8a48e8f1 Add QGuiApplication::screenAt()
[ChangeLog][QtGui] It's now possible to retrieve the screen
at a given point via QGuiApplication::screenAt().

Change-Id: Ic09514ec731d8cce5d453833e98fcd118a70600e
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
2017-09-11 17:41:15 +00:00
Stephan Binner
10601aa7d2 Convert features.mdiarea to QT_[REQUIRE_]CONFIG
Change-Id: I6d2ec035a218869aa6595f5848de94ce491d3124
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-11 17:21:35 +00:00
Stephan Binner
79851be729 Convert features.mainwindow to QT_[REQUIRE_]CONFIG
Change-Id: If7efc8c15d8876f5bc5575d48686894ea71bbe62
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-11 17:21:20 +00:00
Andy Shaw
689606de91 Cocoa: Update the known menu items when the QCocoaMenuBar is deleted
If an application has more than one menubar, for instance, one for each
mainwindow it has visible then once one is deleted it needs to ensure
the application menu items are updated as appropriate.

To do this the resetting of the known menu items is extended to cover
all the application specific ones so that they can all be updated
correctly.

Task-number: QTBUG-62193
Change-Id: I61f46a4745f4e40b9283d40fa5a7473f2721c354
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2017-09-08 17:45:54 +00:00
Andy Shaw
452ad2bb13 Add documentation about not having QSqlDatabase objects kept around
Task-number: QTBUG-35977
Change-Id: I8601b3f7379a5fe94898a2f5ff63558a896a4de2
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
2017-09-08 17:31:03 +00:00
Andy Shaw
202d3ba3e6 Cocoa: Check if charactersIgnoringModifiers is not empty too
If a dead key occurs as a result of pressing a key combination then
characters will have 0 length, but charactersIgnoringModifiers will
have a valid character in it. This enables key combinations such as
ALT+E to be used as a shortcut with an English keyboard even though
pressing ALT+E will give a dead key while doing normal text input.

Task-number: QTBUG-57933
Change-Id: I52fe9edacefe7298a96af5430831f805626bacd2
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-08 17:30:10 +00:00
Simon Hausmann
037652d7a2 Fix syncqt after commit 40fe5d43fd
The cgl convenience module does not exist anymore.

Task-number: QTBUG-63081
Change-Id: Ifda69ba4384258e0ba67b2badd1eb79026908e32
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-08 13:21:47 +00:00
Tor Arne Vestbø
d2a988512e macOS: Detect use of heap-allocated QMacAutoReleasePool
QMacAutoReleasePool is backed by an NSAutoreleasePool, which documents that
"you should always drain an autorelease pool in the same context (invocation
of a method or function, or body of a loop) that it was created".

This means allocating QMacAutoReleasePool on the heap is not a supported
use-case, but unfortunately we can't detect it on construction time.

Instead we detect whether or not the associated NSAutoreleasePool has been
drained, and prevent a double-drain of the pool.

Change-Id: Ifd7380a06152e9e742d2e199476ed3adab326d9c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-08 12:05:21 +00:00
Tor Arne Vestbø
ff9080e740 macOS: Remove QMacRootLevelAutoReleasePool member from QCoreApplication
Tying the pool to the lifetime of  QCoreApplication becomes a problem when
the application is allocated on the heap, for example when Qt is used to
create plugins, as NSAutoreleasePool should be allocated and drained in
the same context, typically a function scope.

The feature is disabled for now, until we can find a better way to
achieve the same thing.

Change-Id: I600587df62a8cc7caded5172ad914c0e04d794d9
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-08 12:05:17 +00:00
Gatis Paeglis
1af927976a tests: fix and un-blacklist tst_qgraphicsview::hoverLeave
Tests should not use QCursor to emulate mouse move, see QCursor::setPos() docs.

The flakiness of the test on XCB is not surprising when the test queries geometry
even before the window has been shown. With the re-factored version I could not
reproduce flakiness anymore.

Removed Q_OS_MAC and closed QTBUG-26274 as test passes on macOS from which I
assume that the underlying issue has been fixed.

Removed Q_OS_QNX ifdef as test does not rely on QCursor anymore.

This patch also fixes the issues on minimal / offscreen platform plugins.
QCursor::setPos() is evil for auto test purposes.

Note:

We intentionally use QTest::mouseMove(QWindow *window, ..), not the QWidget overload.
The QWindow version gets routed through QWSI, which ensures that all necessary events
are generated as expect. In QWidget code path this is currently disabled by
QTEST_QPA_MOUSE_HANDLING.

Change-Id: I285c26cff09e3f2750f8c2abbb1f46c8f7be984a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-07 15:16:46 +00:00