Commit Graph

59721 Commits

Author SHA1 Message Date
Giuseppe D'Angelo
7981501298 QGraphicsItem: remove QtDeclarative 1 vestiges
This code is completely unused at this point.

Change-Id: Id0ecd0125e59b08904ae722ad4319c5ff15620a6
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-01-18 15:30:24 +01:00
Assam Boudjelthia
ba3db0cacd Android: use signature-less jni syntax for AndroidContentFileEngine
Task-number: QTBUG-98974
Pick-to: 6.5 6.4
Change-Id: I1e8e102282af2877bbbe6e8018b7649fac66804e
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
2023-01-18 15:47:12 +02:00
Amir Masoud Abdol
7fe2537ce2 Fix Style Plugin Example, and add some CMake Docs
A few things:

- Improved the documentation by adding a CMake section, briefly
  describing the process of adding the plugin, and placing it where it
  should be.
- Write a note about the case where the style may be overwritten at
  launch, and how to set the a new style using a CLI
- Improved the CMake build such that it creates the App Bundle
  correctly, and also works without an App Bundle as well.
- Changed the example, and plugin such that now instead of a QPushButton
  we have a QTextEdit, and change the text color.
- Replaced the application screenshot

Fixes: QTBUG-107842
Fixes: QTBUG-109227
Change-Id: I161a91b27df016ff6230fac3871b79d2dfbdf18a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-18 14:47:12 +01:00
Amir Masoud Abdol
b171abe695 Remove GENERATE_METATYPES
It doesn't seem like that it is being used anymore, except an instance
in pro2cmake which I replaced by NO_GENERATE_METATYPES.

Pick-to: 6.5
Change-Id: I135cf47e6041e98b354fb684f0079dad30689dea
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-18 14:47:12 +01:00
Amir Masoud Abdol
7e82577680 Retire the qt_parse_all_arguments
This replaces the qt_parse_all_arguments macro with the built-in
`cmake_parse_arguments(PARSE_ARGV`. In addition, a new function,
_qt_internal_validate_all_args_are_parsed, can be used to check whether
any _UNPARSED_ARGUMENTS have been passed to the function.

Fixes: QTBUG-99238
Change-Id: I8cee83dc92dc6acdaaf747ea6ff9084c11dc649b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-18 14:47:12 +01:00
Peter Varga
5686824229 tests: remove PlatformInputContext::filterEvent()
This overridden function is not used and also can't be triggered by a
synthetic input event in an auto test.

Change-Id: Id8b69b440a90c18cf5870e34804fae3e6607e49f
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
2023-01-18 13:21:06 +01:00
Luca Di Sera
9d705d90d0 Doc: Remove stale documentation in "qproperty.cpp"
"src/corelib/kernel/qproperty.cpp" documents assignment operators over
`QPropertyBinding` for `QProperty` and `QPropertyAlias`.

Those operators were removed in 638df6138e
and are thus stale.

Similarly, an assignment operator for `QPropertyAlias<T>` over a `T&&`
is documented albeit it was removed in
927647cd03.

Due an incorrect implementation of QDoc, which has now been removed,
with regards to identifying copy/move assignment operators, and the more
superficial and incorrect way in which QDoc binds those kind of elements
to the clang AST, QDoc was unable to report the lack of a binding
declaration for those elements that were removed, producing incorrect
documentation instead.

As of the latest changes to QDoc this will correctly generate a warning.

To avoid the addition of new warnings and remove stale and incorrect
documentation, the document blocks were removed from the file.

Change-Id: I30e20f26d4c44e4589abf40546d8ebaa4e869638
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2023-01-18 13:21:05 +01:00
Joerg Bornemann
98a3634299 Make qmake and qtpaths report Qt version baked into the binaries
QMake and qtpaths used qVersion() to report Qt's version number. This is
problematic if those tools are run in an environment where a different
Qt version is loaded (e.g. by setting LD_LIBRARY_PATH).

This reverts commit a783c3d574, which
changed the use of the QT_VERSION define to a qVersion() call in qmake.
Additionally, we use QT_VERSION in qtpaths too for consistency.

Pick-to: 6.5
Change-Id: I6c8a1aa6ee6169becd7c685a98ce23c22c3864c7
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-18 13:21:05 +01:00
Amir Masoud Abdol
b711690059 Replace $<CONFIGURATION> with $<CONFIG>
$<CONFIGURATION> is deprecated from CMake 3.0

Pick-to: 6.5
Change-Id: I1b19507a8cb3325095440e0a22fc54f9fde77e9b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-18 12:20:32 +01:00
Tasuku Suzuki
1e3af6dee7 Remove PUBLIC from doubleconversion feature
doubleconversion is not a feature user can disable

Change-Id: Ie430a88449a39885e9002322c3572ead9bc04bc1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2023-01-18 20:12:39 +09:00
Kai Köhne
a4579121ca Doc: Simplify description of QKeySequenceEdit::maximumSequenceLength
Main purpose is to limit the number of keys a user can enter, so
let's be explicit about this. 'Truncation' seems to happen only if
the program programmatically sets a longer sequence to the edit,
which is arguably a programming error and also shows up as a
warning in the logging API.

Pick-to: 6.5
Change-Id: I7b2b74e8dab44c5ad16ffefc25c5610708139353
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Laszlo Papp <lpapp@kde.org>
2023-01-18 08:24:01 +01:00
Ahmad Samir
5d0b338f4d QString: add note about isNull() vs. isEmpty() to more methods
Namely compare() and operator==().

Change-Id: I7e404f2f1df5b93614f7e266bdbebe909e4e7623
Fixes: QTBUG-54505
Pick-to: 6.5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2023-01-18 05:53:19 +02:00
Mikolaj Boc
16bf899557 Streamline reading of js DataTransfer object
qwasmclipboard.cpp and qwasmdrag.cpp had the same logic that read
the js DataTransfer object implemented twice with small differences.
Use a single implementation in both.

This also introduces a clearer memory ownership model in the reader
code, and fixes a potential race condition by introducing a cancellation
flag.

Removed the useless QWasmDrag type which was in essence a SimpleDrag
and made the m_drag in QWasmIntegration a smart pointer.

Fixes: QTBUG-109626
Pick-to: 6.5
Change-Id: I5b76dd3b70ab2e5a8364d9a136c970ee8d4fae9c
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2023-01-18 02:55:12 +01:00
Qt CI Bot
2e8b75477f Merge integration refs/builds/qtci/dev/1673982362 2023-01-18 00:51:53 +00:00
Thiago Macieira
a14a3a5487 QUrl: restore empty-but-not-null for components that are present
This got lost during the QStringView port that happend in Qt 6.0
(commit 548dcef089) because
QString::operator+=(QStringView) does not copy the nullness of the right
side, whereas QString::operator+=(const QString &) does.

Pick-to: 6.2 6.4 6.5
Fixes: QTBUG-84315
Change-Id: Ide4dbd0777a44ed0870efffd17399b772d34fd55
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2023-01-17 16:51:53 -08:00
Thiago Macieira
a26d25be7b Suppress GCC 13's -Wmaybe-uninitialized in q_uninitialized_relocate_n
Its objective is to copy uninitialized content and that's fine.

qcontainertools_impl.h:73:25: error: ‘~~~’ may be used uninitialized [-Werror=maybe-uninitialized]
   73 |             std::memmove(static_cast<void*>(out),
      |             ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
   74 |                          static_cast<const void*>(first),
      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   75 |                          n * sizeof(T));
      |                          ~~~~~~~~~~~~~~

Pick-to: 6.5
Change-Id: Ide4dbd0777a44ed0870efffd173917092b671dd0
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2023-01-17 16:51:53 -08:00
Assam Boudjelthia
609e14724e Android: pass EXTRA_INITIAL_URI to native FileDialog
Allow setting the initial directory where the file dialog
will be opened.

Pick-to: 6.5 6.4 6.2 5.15
Change-Id: I1395b367c74d28fb2890ac53a90456c3ac4c1b05
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2023-01-18 02:44:41 +02:00
Joerg Bornemann
a707ae094d Fix macOS build for CMake < 3.18
We must explicitly set the GENERATED property on source files we
generate.

This amends commit f0a7d74e1d.

Change-Id: Ifab405cd98deece49a1566ae04220e2b5d576429
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-17 21:28:06 +01:00
Joerg Bornemann
392d9a5419 CMake: Fix configure -no-rpath
The -no-rpath configure switch had no effect.

Pick-to: 6.5
Change-Id: I306ec33249a219066ce94d18da5f1ca3d92905e1
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-17 21:28:06 +01:00
Amir Masoud Abdol
20821877bb Remove an obsolete TODO item
__GlobalConfig_install_dir translates to lib/cmake/Qt6/ and 3rdparty
modules will be in lib/cmake/Qt6/3rdparty which seems to be a logical
place for them.

Pick-to: 6.5
Change-Id: I90c715b9502b0dfc666bb3202a838f20ba6110cf
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-17 21:28:06 +01:00
Amir Masoud Abdol
9c90cd7fb9 Add the ltcg flag to .pri files
QT_FEATURE_ltcg is TRUE if either of
CMAKE_INTERPROCEDURAL_OPTIMIZATION=ON or
CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG>=ON are passed to the
configure, or the cmake command.

Pick-to: 6.5
Change-Id: Ibaece67de6cc6f89e505038fd02fb50008c47d48
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-17 21:28:06 +01:00
Ievgenii Meshcheriakov
42f555f861 QUnicodeTools: Use QVarLengthArray in Thai support code
This replaces an ad-hoc solution.

As a drive-by, remove a check that was always true.

Pick-to: 6.5
Change-Id: I72166ee75a2c474dc91bc699c790f256b78b3b7a
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2023-01-17 19:24:09 +00:00
Thiago Macieira
a7c3b747db tst_QHostInfo: use python3
Because Python 2 reached end of life. I wonder how this even works on
macOS, as my Monterey doesn't even have "python" any more.

Pick-to: 6.2 6.4 6.5
Change-Id: Ibddb9b0ada5a4bbaa64bfffd173b239c6c4b66f3
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-01-17 10:43:17 -08:00
Ahmad Samir
a67e7e3bb7 QLocale: add unittests for qstrtod of "NaN" and "nan"
The tests pass.

Drive-by change: Amend qstrntod API docs, the addition is heavily
inspired by cppreference's strtod docs.

Change-Id: Ic8e138e117a3249c752ae5ef2a8a21feb010befa
Task-number: QTBUG-74325
Pick-to: 6.5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2023-01-17 20:41:48 +02:00
Thiago Macieira
d079ca3429 QCborValue: fix build with GCC 13: extended FP support
qcborvalue.cpp:892:32: error: converting to ‘qfloat16::NativeType’ {aka ‘_Float16’} from ‘float’ with greater conversion rank [-Werror]

Pick-to: 6.5
Change-Id: Ide4dbd0777a44ed0870efffd173906b7cf7c1619
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2023-01-17 10:35:46 -08:00
Fabian Kosmale
1d43cbfede qarraydataops.h: Pass initializer_list by value in copyRanges
initializer_list is supposed to be cheap to copy, and passing by value
will avoid one further indirection (though the compiler can probably see
through it, anyway).

Pick-to: 6.5
Change-Id: I8ffbf5de4d8cf2c85f4cff76ef63d6cdeac4db5a
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2023-01-17 19:22:24 +01:00
Fabian Kosmale
aaa198cb5c qproperty.h: Make ctors explicit
Addresses comments from API review.

Pick-to: 6.5
Change-Id: I859079cc918aa67dffe0c780f6d0b9712652bb4a
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2023-01-17 19:22:24 +01:00
Peter Varga
56d72d36bf Update description of topleveldomain feature
qTopLevelDomain() is misleading in the configure summary. The function
has been removed by commit 50b3097683

Also clean up the topleveldomain files.

Pick-to: 6.5
Change-Id: Ib577962909a83f4f41d1660a26fd80b37803ae18
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2023-01-17 18:21:26 +01:00
Tor Arne Vestbø
ada434e417 permissions: Take PlistBuddy exit code into account when reading Info.plist
Otherwise we might conclude that we found a usage description when
PlistBuddy outputs "Error Reading File: /tmp/Info.plist" to stdout.

For CMake this is not an issue as we pipe stderr to a separate variable,
that contains "Cannot parse a NULL or zero-length data" in this case.

Fixes: QTBUG-109967
Pick-to: 6.5
Change-Id: I9d819b6de405b88bb7d1d75c22b6f5187f26e553
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-17 16:53:57 +01:00
Amir Masoud Abdol
1b4aba0a59 Remove an obsolete TODO
There was a plan to invert the API, but since the TODO, we are settled
on the non-inverted name, ie., GENERATE_CPP_EXPORTS.

Pick-to: 6.5
Change-Id: I84f531d870965e0b7d0d821d1ff08606ab8054ab
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2023-01-17 16:15:11 +01:00
Tor Arne Vestbø
c8839448cc CMake: Tweak qt_internal_get_framework_info to match documentation
<out_var>_private_header_dir and <out_var>_private_module_header_dir are
documented to point to "the specific framework version and framework
bundle version".

Pick-to: 6.5
Change-Id: I00053f106ec9be88f7892c842ca75549cfc54124
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-17 16:15:11 +01:00
Alexey Edelev
3002816d77 Restrict the minimum supported ICU version to 50.1
ICU 50.1 was released May 11th, 2012. Despite of the restriction, all
currently supported operating systems will continue to be supported.
All mismatches described in QTBUG-99715 are fixed in this version.
Restricting to 72.1 (latest version as per January 2023) or 63.1 (2018)
would still exclude e.g. RHEL 9.0, which ships version 56.1.

Task-number: QTBUG-109505
Pick-to: 6.5
Change-Id: Ic5cd7927d6f5fb60a89423c305796a9ed311bfa2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-01-17 15:15:11 +00:00
Mårten Nordheim
2fe69dbeb8 Fortune* Example: remove needless unset-ing of window flag
It's unset by default in Qt6.

Task-number: QTBUG-108875
Pick-to: 6.5
Change-Id: I3f1c6e4e6de54e9ca0ed8892f9da1d346d16d4c7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2023-01-17 16:15:11 +01:00
Mårten Nordheim
71cd3bc074 Fortune* Example: Bump QDataStream format version
One of the examples were using a different version than the others.
Though QString's formatting probably didn't change since then so
it was no problem.

Anyway, pretend like we're releasing it now for the first time and
set 6.5 on all of them

Task-number: QTBUG-108875
Pick-to: 6.5
Change-Id: I28b496ab3d8ff54c503a032ba15882cdf3d5eccf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2023-01-17 16:15:11 +01:00
Mårten Nordheim
605eec7b55 Fortune* Example: convert simple for-loop to ranged-for
Ends up shortening the loop, making it easier to read at a glance.

Pick-to: 6.5
Task-number: QTBUG-108875
Change-Id: Ia12a994259b00e9b57f2de48124be9cb38553bf5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2023-01-17 16:15:11 +01:00
Mårten Nordheim
45717db7a5 Threaded Fortune Example: update example to use qintptr for descriptors
Pick-to: 6.5
Task-number: QTBUG-108875
Change-Id: Ie635a3d2c4c61a59547e8fed0ec84da8538968a3
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2023-01-17 16:15:11 +01:00
Jan Arve Sæther
0280b7eb96 Painting examples: Don't mix const_iterator and non-const iterators
Reported by Clazy

Pick-to: 6.5
Change-Id: I80fce912b1e5390f0056b1fa9ae0d3cfcf39d045
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
2023-01-17 16:06:08 +01:00
Marc Mutz
8ef22183d6 QStringView: remove pointless Q_ASSERT in toString()
QString and QStringView have the same size_type these days.

Pick-to: 6.5 6.4
Change-Id: I59ffe78f51e06ccc130562b1682fb4a672c3ec22
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2023-01-17 15:39:05 +01:00
Marc Mutz
cc236d5e0c [doc] QPermission: some fixes
- QPermission_s_ -> QPermission

- add a comma to make a text piece clearer

Pick-to: 6.5
Change-Id: I08469cca9a05b08772d101fdab4eccd6b9cfcab8
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-01-17 14:39:05 +00:00
Jan Arve Sæther
1e790fb4db Compile easing curve example with -Weverything
As a consequence, also had to add some suppressions:
-Wno-padded         (this warning should almost never be responded to)
-Wno-c++98-compat   (we want to use c++17 features)
-Wno-weak-vtables   (IMO not worth fixing for an example)

Pick-to: 6.5
Change-Id: I28ae4456c0221ad2370879a691f6343affff138b
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
2023-01-17 13:45:55 +00:00
Mikolaj Boc
6a9e89121d Concatenate blacklist files for test batch
This works by collecting the paths of all blacklist files
and deferring a call which ultimately reads all of the files and
glues them together to form a master blacklist file for the batch.

There might be conflicting function names inside the batch. For now
we ignore the problem, while keeping in mind that it exists.

Fixes: QTBUG-110016
Change-Id: I9c8412097418c6e93297ab89af718d7466e2e451
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
2023-01-17 13:45:39 +00:00
Eskil Abrahamsen Blomfeldt
02effb2c37 Remove redundant scope for glyphRuns() default parameter
Noted in API review: Improves formatting and readability.

Pick-to: 6.5
Change-Id: I3a8f769899031410d00397a885f115adcca82f3b
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2023-01-17 11:59:36 +01:00
Eskil Abrahamsen Blomfeldt
6975dd38c1 Explicit type for new enum type
Noted in API review.

Pick-to: 6.5
Change-Id: I98ec47f4c934156990d67363b69ccd33617661de
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2023-01-17 11:59:36 +01:00
Tasuku Suzuki
d369eabc30 Fix build with -no-feature-menubar
Pick-to: 6.5
Change-Id: I72bd07dbdcfe07badaadce9f19949ee3e352b13e
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-01-17 19:59:36 +09:00
Marc Mutz
8a96dee4cb QWindowsMimeConverter: fix copyright year
Noted in API review.

Pick-to: 6.5
Change-Id: I08a5cb5cec1d7a13d96c22b69c7999eccfb4f932
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-01-17 10:10:31 +01:00
Axel Spoerl
c84f3fd370 QCommonStyle code cleanup
Consistently use int (instead of uint) type for alignment/text
formatting flags passed to QStyle::drawItemText (and overrides).

Clean variables in QCommonStyle::sizeFromContents
- use self-explaining variable names
- rename misleading variables
- define one variable per line
- use consts whereever possible
- insert new lines to make code easier to read
- correct wrong indentations
- use auto in qstyleoption_castis to respect maximum of 100
characters per line

Pick-to: 6.5
Change-Id: Ie145c089606436213c813227154fac29962825d0
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2023-01-17 08:56:44 +01:00
Tasuku Suzuki
c65834279c Fix build with -no-feature-dialogbuttonbox
Pick-to: 6.5
Change-Id: Ia6ac9e6acffda80794a5949793fddc3ab849a98a
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-01-17 16:00:12 +09:00
Volker Hilsheimer
2951f72584 Remove mousebuttons examples
The example didn't show anything useful, and seemed more like a
manual test case.

Pick-to: 6.5
Change-Id: Ia71f39b26943aab04b6895e63b6eed50dd084bfd
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
2023-01-17 06:42:04 +01:00
Tasuku Suzuki
ca772a8ffa Fix build with -no-feature-buttongroup
.../qabstractbutton.cpp: In member function ‘virtual void
QAbstractButton::keyPressEvent(QKeyEvent*)’:
.../qabstractbutton.cpp:1010:58: error: incomplete type
‘QGuiApplicationPrivate’ used in nested name specifier

Pick-to: 6.5
Change-Id: Ia71bb481d125087aa813c891f9508755f435f4d2
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-01-17 05:07:07 +00:00
Tasuku Suzuki
cff65c860f Fix build with -no-feature-menu
Pick-to: 6.5
Change-Id: Ie18d896799dd99c74dcdf00cd43c2aedcd9b8d1c
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-01-17 12:53:10 +09:00