Commit Graph

35915 Commits (0cd134ed91711aab662fbfea86faeb326d32a94f)

Author SHA1 Message Date
Allan Sandfeld Jensen 0cd134ed91 Make QMap and QMultiMap comparisons hidden friends
Task-number: QTBUG-87975
Change-Id: I3c84a188cdbb0d09e0e7c66588c7638c8a8328fd
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-10-29 20:25:49 +01:00
Sona Kurazyan e53a3bd85a Move porting guide for QtConcurrent to its designated page
Also move the porting section for QFuture and related classes after the
section for view classes, to make the order more natural for reading.

Change-Id: I5ea816d7bb3dfdda2b74112418bf07954c9ec94c
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-10-29 20:18:47 +01:00
Topi Reinio 0526ae3f03 Doc: Fix documentation warnings for QIterable and related classes
Task-number: QTBUG-86295
Change-Id: I1d4c851ae7d2910ab6276ab2215b5f6e550a12c8
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 18:38:08 +01:00
Topi Reinio ecd86b1894 Doc: Fix documentation warnings for string classes
Task-number: QTBUG-86295
Change-Id: I13033635eecd495b32c98c7ec9318a0102b6f23e
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 18:29:22 +01:00
Topi Reinio 59644dc9df Doc: Fix documentation issues for QStringTokenizer
Add documentation-specific variants of lvalue/rvalue-this
overloads that QDoc manages to parse as separate entities.

Document begin() and cbegin() iterator getters in one go.

Task-number: QTBUG-86295
Change-Id: I2768dc6525bbf067e1597aa12e2e727f6d9fc35a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 18:28:00 +01:00
Topi Reinio f604fe6d1d Doc: Fix link issues for QtCore
- Fix linking to CMake manual.
- Remove references to the state machine framework.

Task-number: QTBUG-86295
Change-Id: I01a61088da8eb36760949f39be5e71d92de956f2
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 18:27:21 +01:00
Topi Reinio 13e978e827 Doc: Fix code snippet that abruptly ends the document
Having the string '*/' appear in a quoted snippet ends the entire
documentation comment. Use a parameter to the \code command to
work around that.

Task-number: QTBUG-86295
Change-Id: Ifcb21a4a0958724ebdb1c9e0eafdc767020d3a7b
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 18:26:13 +01:00
Allan Sandfeld Jensen b77cf10a4f Move QPolygonClipper to XCB native painting
It is the only code using it.

Change-Id: I30060a63b6621ea94ae487ec93cd857117e12a46
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2020-10-29 18:09:24 +01:00
Dimitrios Apostolou 743ffcbc82 Avoid doing kill(-1) in QProcess destructor
It can happen under unspecified conditions, see relevant ticket.

Task-number: QTBUG-86285
Pick-to: 5.15
Change-Id: I1f77bf0061a0faaa60283bb93fc3d82031247d54
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-29 19:03:25 +02:00
Volker Hilsheimer 4d269b4561 qfloat16: make comparison and arithmetic operators hidden friends
Reduce ADL noise. The operators are not documented, so nothing to adjust.

Change-Id: I02a8bdad6138758106283495098c72770ea74e52
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-29 17:52:26 +01:00
Allan Sandfeld Jensen 4c36d64bb3 You can't disable SSE2 for x86-64
Fixes: QTBUG-88013
Change-Id: Iec571ef3fccbec46145617ca8d983c3a333090e4
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-10-29 14:20:03 +01:00
Sona Kurazyan 30a1683f65 Remove the comparison operators of QFuture
These operators don't do what the user might expect and may lead to
confusing results.

[ChangeLog][Source-Incompatible Changes][QFuture] The comparison
operators of QFuture have been removed. They were comparing the
underlying d-ptrs instead of comparing the results (as the users
might expect), which is not very helpful for the users point of view.

Change-Id: I80a887610eac38b60329128cca52cdb5fb515207
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-10-29 14:19:35 +01:00
Edward Welbourne 3a1bc4bad5 Purge deprecated language and country codes from QLocale
Requires subsequent re-numbering of the enum tables to eliminate gaps,
before locale data can be regenerated. However, it will work with the
present locale data, since it merely loses the means to use some names
for which the available data was just the name and code. This implies
a transient issue of recognising some codes for which there is no
actual enum member; but relevant code will work as before, finding
nothing but the code and its name. This shall be resolved by a coming
BiC change to resort the language, country and script codes, changing
the numbering (almost) completely.

[ChangeLog][QtCore][QLocale] Various obsolete language and country
codes have been removed. Some lacked locale data, others were obsolete
aliases. All have been deprecated in 5.15.

Task-number: QTBUG-84669
Change-Id: I45fc76a5f2f6c3b0ea3c1bb61e917da984183783
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-10-29 10:44:38 +00:00
Volker Hilsheimer ec4079160a Make QByteArray comparison operators hidden friends
Also for QByteArray::FromBase64Result, to reduce ADL noise.

Add explicit overload for comparison with nullptr to avoid
ambiguous overload errors with '0' comparisons.

Change-Id: I7ff9dbc90581707856c10cf7fb835175dfcdb55e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-10-29 10:22:21 +01:00
Tor Arne Vestbø 4e08651bac MinGW: Fix assert in QCoreApplication::arguments() when passing globs
We can't assume that the number of arguments we get from GetCommandLine
will match what we have from argc, as the former is not wildcard
expanded on MingGW.

mingw64 will ask __getmainargs to expand wildcards depending on
the mingw-specific variable _dowildcard. By default this is set
to 0 (false), but some mingw64-packagers (msys2, mingw-builds)
pass --enable-wildcard during build, changing this default. As
a result, the arguments we get through argc/__argc have already
been expanded. MinGW does not reflect this through GetCommandLine
though, like MSVC does, which triggered the assert.

Amends dff18b8e80.

Pick-to: 5.15
Fixes: QTBUG-67515
Task-number: QTBUG-84002
Change-Id: Ib87961c6901d2894b48ba0f5b9a3d6da2a595f24
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Simon Hausmann <hausmann@gmail.com>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2020-10-29 10:10:21 +01:00
Volker Hilsheimer 874eb19107 QStorageInfo: Make comparison operators hidden friends
Reduce ADL noise.

Task-number: QTBUG-87973
Change-Id: Ia8957e6452cdebac808ec2a20d475db448863149
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2020-10-29 09:48:52 +01:00
Volker Hilsheimer 7635d77689 Organize QtOpenGLWidgets documentation
Move snippets to the right place, and give the widgets class a place to
live.

QtOpenGLWidgets is just a library, not a separate module, but we need a
module page that the class can refer to for correct build instructions.

Change-Id: I6d955ad3c4cd1003a828cc1f256deb6e7fb50ec4
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 09:48:28 +01:00
Volker Hilsheimer 61574ee963 Remove documentation for removed qHash overload
QPair is an alias to std::pair in Qt 6, so no need for two qHash functions.
Also remove note and snippet from std::pair overload documentation.

Change-Id: Ica8f6961af1eac493e909ad06fe46f8f68542bc5
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 09:48:15 +01:00
Karsten Heimrich 173615222a Doc: Scrub QByteArray/QByteArrayView documentation
Fixes: QTBUG-86555
Change-Id: I3221e0de10e692ca767eeb69daa82da55b93e395
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-10-29 09:26:33 +01:00
Jerome Pasion b961fb42e2 Change terminology to "look and feel"
-should be "look and feel"

Task-number: QTBUG-88010
Change-Id: Icd71c84e2331faa317a228cdbaaa82e7598b781f
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 09:26:05 +01:00
Assam Boudjelthia 950e628fd8 Android: replace stacktrace with debug message in search for setActivity
Don't print stacktrace when setActivity is not found but only print a
debug message, QtActivityDelegate will continue to look for setContext
which might actually be a problem if not implemented.

Fixes: QTBUG-86733
Pick-to: 5.15.2
Change-Id: Iaf7f347ae04605a1f616f24d25cac4938c1640a4
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
2020-10-29 08:00:05 +00:00
Assam Boudjelthia 90912b657e Android: disable Gradle caching by default
If enabled by default, the cache size will grow quickly, especially
if multiple different projects are managed every day. Keep the option
commented, which can be enabled manually by the user.

Pick-to: 5.15.2
Change-Id: I6d4a67f4f1bb3e37b02de7ff4c534ec4d006f9a3
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
2020-10-29 07:59:32 +00:00
Tapio Oksa 2ff546e030 [Android] Request cursor to be in proper position
Cursor were set to incorrect position (-1) causing first character overwrite in password field,
fixed by setting position to '0' for the first character

Fixes: QTBUG-85090
Pick-to: 5.15
Change-Id: Ia2333803d5fe8f274f1ad1a643e4ff5aa8556b81
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2020-10-29 07:54:38 +00:00
Volker Hilsheimer 7372dde4ec Math 3D classes: make comparison operators hidden friends
Reduce ADL noise from QVector2/3/4D and from QQuaternion. Also mark as
noexcept.

Task-number: QTBUG-87973
Change-Id: Id14fd17c0da43517766b218ed85c3b41f91b43c8
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-10-29 08:51:44 +01:00
Volker Hilsheimer 2222e695fc QMetaMethod: Make comparison operators hidden friends
Reduce ADL noise.

Change-Id: Ic747c2d76b7ce66b222e08eeaf6f1d193ba99f81
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2020-10-29 08:51:26 +01:00
Volker Hilsheimer 5866b82e24 Fix documentation for QTest touch APIs
Change-Id: Ifd9a3161e8ee422f8b0ce3adba8ae1b029c096d1
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-29 07:13:34 +01:00
Eskil Abrahamsen Blomfeldt a332f3fabc Fix delay first time a font is used
Since 066daf750f, we would mistakenly populate the
fallback list for all ensureAt(index) calls, even when index == 0. This index
indicates the main font, is always valid and does not require knowledge of any
fallbacks.

On Windows (and other platforms where QPlatformDatabase::fallbacksForFamily() is used)
this would cause all fonts on the system to be loaded and should only be done when
we actually need one of the fallbacks.

With the GDI font database, in which font loading is slow because we have to manually
read font data, this is especially bad. If we can later move to using DirectWrite
for this, we should be able to improve on it, but in any case there is no need to
pay the cost of the fallbacks when the application is just using the fonts it has
selected (memory-wise this is also a bad idea). On my machine a simple text layout
went from 370 ms to 37 ms.

[ChangeLog][Text] Fixed an issue where on some platforms, there would be a delay the
first time any font was used, sometimes causing a visible delay in the UI.

Fixes: QTBUG-71737
Pick-to: 5.15
Change-Id: Ie8ce9b73f02a0e5cf39a2b280968b89f4caaf39e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2020-10-29 07:06:50 +01:00
Hiweed Mandriva b75d60abd2 doc : remove redundant ')'
Change-Id: I84a1a08889e04b4d6a33384a3f91d5bf3976871c
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Hiweed Mandriva <hiweedmandriva@163.com>
2020-10-29 10:47:16 +08:00
Hiweed Mandriva 300953ed9e doc : fix typo 'consise' => 'concise
Change-Id: Ife2fc3b61b03b741b41bd703c3caf8180c6868fa
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-10-29 10:47:16 +08:00
Volker Hilsheimer be10808279 Make QAccessible::State's equality operator a hidden friend
Reduce ADL nose.

We already have an inline default constructor calling memset, so can have
the comparison operator calling memcmp also inlined.

Task-number: QTBUG-87973
Change-Id: If8e0ae98b0c44fc3fddac7ef57c5ff021c80dad6
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-10-28 22:15:05 +01:00
Volker Hilsheimer a45a3b1ece Make comparison operators in gui/painting classes hidden friends
Reduce ADL noise from QColorSpace, QPageSize, and QPageLayout with the
help of a private equals method.

Change-Id: I0082597dd216b982e8d8eb5a4bd7dd29a5d3263b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-10-28 22:14:56 +01:00
Volker Hilsheimer 979c8cf1b7 Always return initialized data from QBindable::value
clang warned about result being uninitialized if iface is nullptr. Return
a properly initialized result in that case as well.

This might break RVO, but the alternative is to always initialize result,
even if we are going to call the getter anyway, which I assume would be
more expensive.

Change-Id: I5d6d243b3094b79bf021725d017be5c72b1089bb
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-10-28 22:14:37 +01:00
Fabian Kosmale bcd2f3f99e Add QVariant/meta-type system migration guide
Fixes: QTBUG-87100
Change-Id: Ib87b8d566f11bf226345101f665c675489a06d6a
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2020-10-28 20:37:50 +01:00
Volker Hilsheimer 39aa070e96 QSurfaceFormat: Make comparison operators hidden friends
Reduce ADL noise. Also add noexcept.

Task-number: QTBUG-87973
Change-Id: I83787264b00b084ecdc85b6b3c2a8d95db94a05e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-10-28 20:36:18 +01:00
Volker Hilsheimer a3d71792ca Make comparison operators hidden friends
Reduce ADL noise from QKeyEvent, QKeySequence::StandardKey, and
QPointingDeviceUniqueId.

Task-number: QTBUG-87973
Change-Id: Ib4a3190d03046949acb25b3fe68c611689b82565
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-10-28 20:36:12 +01:00
Kai Koehne 9b35f22b58 Doc: Remove mentioning of old macos versions from QSettings
The specific mentioning of macOS 10.2, 10.3 goes back to Qt
4 times. Anyhow, both versions aren't supported anymore, and
the logic in qsettings_mac.cpp is the same for all versions.

Pick-to: 5.15
Change-Id: Ibac503cb7c8563dec8560cc41c471c1db0f20566
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2020-10-28 17:15:09 +01:00
Allan Sandfeld Jensen 375a8b735b Remove qstring_compat left-over
Was missed when it was removed

Change-Id: I36c33be9240fa5567a65488d6fd0e14b8c3ad8cd
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-10-28 15:57:34 +01:00
Andrei Golubev 6b0330317c Fix QList snippets to use qsizetype instead of int
Task-number: QTBUG-86553
Change-Id: I37e9607e014deaeebfa9fddf2e49a04ee2194cce
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-10-28 15:45:53 +01:00
Allan Sandfeld Jensen 5dc1780369 Pass SameSite through QNetworkCookie
It is an important new details in cookies, as a minimum pass it through,
before we add API for it.

Pick-to: 5.15
Change-Id: I5222a24e0f50f3822a94cce126b5055fed1a8008
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-10-28 16:42:12 +02:00
Jarek Kobus c34673e5d9 QtConcurrent: Handle running with promise inside QTaskBuilder
Please note, that in case of run with promise it doesn't make
sense to provide the overload taking the FutureResult, as if we are
going to ignore the returned QFuture object, we can't communicate
with the passed QPromise.

Fixes: QTBUG-87083
Change-Id: I4066506736c2bbeea3e42030b9495f13e06cb27e
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2020-10-28 15:38:52 +01:00
Jarek Kobus cf043a785a QtConcurrent: Integrate runWithPromise into run
Change-Id: I6eb95aa66ff847e8bb9aac348fded3a5d55015b6
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2020-10-28 15:38:44 +01:00
Konstantin Ritt bb8c24e467 QFontEngine: get rid of userData() trickery
it is only used by QWin32PrintEngine and we know for sure
QWindowsFontEngine::handle() returns HFONT

Change-Id: I7656801e4642caf7df612d2f686061dca92707e0
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2020-10-28 17:27:37 +03:00
Andrei Golubev f9f2107cef Clean QList documentation
Updated QList documentation pieces:
- Several descriptions revised
- Irrelevant things removed
- Descriptions wrapped at 80 characters

Task-number: QTBUG-86553
Change-Id: Ic6de44520a76677aa5e8d9e91caa03e5aa198812
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-28 15:27:37 +01:00
Edward Welbourne 07ff70a0da Remove QItemSelectionRange's operator<()
As advocated in a ### Qt 6 comment.

[ChangeLog][QtCore][QItemSelectionRange] QItemSelectionRange no longer
supports ordering. The prior ordering was inconsistent with equality
and should not be needed.

Task-number: QTBUG-85700
Change-Id: I5eb372c203cae19db40fa67f706d911785652d5f
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-10-28 15:27:37 +01:00
Edward Welbourne 29c113d912 Deprecate ordering on QItemSelectionRange
Ready for removal at Qt 6, as advocated in a ### comment.
It was never done consistently with operator==(), apparently, and
should not be needed in any case.

[ChangeLog][QtCore][QItemSelectionRange] Ordering of
QItemSelectionRange is now deprecated. It was not consistent with
equality and should not be needed.

Task-number: QTBUG-85700
Pick-to: 5.15 5.15.2
Change-Id: Ie99294bd7fc18f2a497598ae08840886b0a6d62d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-10-28 15:27:37 +01:00
Mårten Nordheim cf03874dbb qsslsocket_schannel: update QMutexLocker usage
Following 77d812683f QMutexLocker is now a
templated class which should in most cases be deduced automatically.
Doesn't work here because of the global static wrapper.

Change-Id: I62fda0651eac12f3234396cb7e41a26df8cc8b46
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2020-10-28 07:48:24 +01:00
Mårten Nordheim 205629bb62 QByteArray: make (ap|pre)pend(const QByteArray &) consider reserved
Append was previously optimized for lhs being empty but it should've
also taken into account if space had been reserved.
Apply the same optimization to prepend while we're at it.

Change-Id: I5e5d33a3189b9ad88d45e858a2ac412cbc294f79
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-28 08:48:23 +02:00
Edward Welbourne 2c4874be40 Deprecate old aliases for two countries and several languages
[ChangeLog][QtCore][QLocale] Deprecated several Language and Country
aliases, ready for removal in Qt 6.0, in favor of their newer names.

Task-number: QTBUG-84669
Pick-to: 5.15 5.15.2
Change-Id: Iebaa0a5a77bfa12f7014de53fab4a25b5f1cc92c
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-10-28 06:26:01 +01:00
Edward Welbourne 2575a8ced3 Deprecate QLocale::Language entries that no locale data relates to
These are languages for which CLDR does not even recognize the claimed
language code (three-letter codes except for bh = Bihari, which might
be an old name for bho = Bhojpuri, which CLDR does give, but provides
no locale data using it).

[ChangeLog][QtCore][QLocale::Language] Many obsolete language names
are now deprecated in preparation for removal at Qt 6.0. No data has
been available for any locale using these languages since CLDR v29 (at
least; Qt now uses v37).

Task-number: QTBUG-84669
Pick-to: 5.15 5.15.2
Change-Id: I2bf2d49211ade7cc511277f35fb1a247e7048b31
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-10-28 06:25:47 +01:00
Timur Pocheptsov 3857f104ca QMacStyle - more pixel refinements
There is 1 pixel of a rounded corner visible both on NSButton and
NSPopupButton in a tab widget (all orientations) - adjust the rectangle
for this.

Pick-to: 5.15
Pick-to: 5.12
Task-number: QTBUG-86513
Change-Id: I5e203adc583d2fba6323b18328ccbc8b0c0666ea
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2020-10-28 05:54:57 +01:00