Commit Graph

48204 Commits

Author SHA1 Message Date
Laszlo Agocs
387a61adfb rhi: gl: Stop flooding with glVertexAttribPointers
Artificial tests like the BechmarkDemo are full of drawing the
exact same mesh multiple times in a row. These do not need
respecifying anything related to vertex or index data.

Also move the buffer binding out from the loop.

Change-Id: I0f27a39fecebc7ca8e1fa635c63819f116867e19
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2020-10-02 13:14:23 +02:00
Laszlo Agocs
cbd8dfb8f4 rhi: gl: Skip rebinding the same index buffer in the same pass
Already doing the same for GL_ARRAY_BUFFER, follow suit with
GL_ELEMENT_ARRAY_BUFFER.

Change-Id: I0cf44480abb3a60a44b316af2c09b2235f9f65e7
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2020-10-02 13:14:18 +02:00
Laszlo Agocs
d92b0e18c1 rhi: Make per-frame flags per-pass where appropriate
ExternalContentsInPass becomes a per-pass flag now. Why is this
beneficial? Because while Qt Quick has no choice for its render
pass, not being able to guess if the application wants to do some
native rendering in there, Quick 3D's render passes, all the ones
that are under Quick3D's control, do not have native rendering
from the application in them, and so using secondary command
buffers with Vulkan is not necessary.

Introduce something similar for compute and OpenGL. By knowing that
none of the resources used in a pass are used with a compute pass
(e.g. because we know that there are no compute passes at all) a small
amount of time can be saved by skipping tracking buffers and textures
because the only purpose of said tracking is to generate barriers that
are relevant only to compute.

Change-Id: I0eceb4774d87803c73a39db527f5707a9f4d75c1
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2020-10-02 13:14:08 +02:00
Laszlo Agocs
3080194ae4 rhi: gl: Attempt to reduce superfluous texture unit bindings
Change-Id: Iccfbe5fe8688245a5ff3f7d46a173638b362a3c8
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2020-10-02 13:14:04 +02:00
Edward Welbourne
c08592816a Modernize implementation in date-time and its parsing
Convert several internal functions to use QStringView.
Use QStringView's toInt(), now that it has one.
Replace QLatinChar('*') with u'*' for each * found.

Fix wrong-way-round separator bounds in one call to appendSeparator().

Change-Id: If5f11d9a82820133f390ae6270b16af72065cb54
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-02 13:11:06 +02:00
Assam Boudjelthia
c0122d9202 Android: unify deployment-settings.json path to unix format
Always use unix path formats for qmake and cmake builds.

Task-number: QTBUG-87066
Change-Id: I9d54c2ca687d28e38542850e3e18b6184513a9af
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-10-02 11:13:19 +03:00
Nicolas Fella
2d8d8ab8c2 Reference proper SplitBehaviour enum in docs
QString::SkipEmptyParts is Qt::SkipEmptyParts now.

Pick-to: 5.15
Change-Id: Ie351bbe9d2350e771f821a9f0bc9f581be5b0022
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2020-10-02 08:05:42 +02:00
Edward Welbourne
a1dbdc666f Give some QTime test-cases more informative names
Also drop superfluous trailing 0s from QTime's constructor and add
space after commas.

Change-Id: Ie3ae87fd497456d6447c55e5d2c808ef59c9768d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
2020-10-01 23:14:06 +02:00
Cristian Adam
01d00bbeb2 CMake Build: Add mimetype database compression with CMake
The mimetype database needs to be compressed as gzip / zstd, then
saved as hex byte blob in a cpp file.

Previously this was done with a combination of Perl / PowerShell
script. With CMake 3.18 we can do this only from the CMake script.
With CMake 3.19 we will have the best compression rate set for zlib/zstd.

Change-Id: I059bd90457c5a9da83b2b7c839a36e72e103b7eb
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-10-01 22:43:59 +02:00
Toni Saario
a5b963c638 Set MSVC environment script specifically for MSVC
Current clause is too broad and new compilers do not work with it
properly. E.g. Clang.

Change-Id: I7afadfec07935e76882d27ec7ab408b0e597654b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-10-01 22:54:22 +03:00
Assam Boudjelthia
4e94465096 Android: account for native separators when checking a dependency path
The path of dependencies (.so, .jar, etc.) might use native dir
separators, but if checks when not accounting for that.

Task-number: QTBUG-87066
Change-Id: I0a09231f2a19f448f1ba520fd738d129d64ff5c7
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-10-01 22:23:33 +03:00
Volker Hilsheimer
60eb306efe QAbstractItemView: Don't allow CopyAction for InternalMove views
Otherwise the default action will be Copy, and the (+) cursor will show when
moving items in e.g a QListView/Widget, even though the item will actually
be moved.

The documentation of InternalMove states clearly that "The view accepts
move (not copy) operations only from itself.".

Task-number: QTBUG-87057
Pick-to: 5.15
Change-Id: Idaa9e8f84623ced51b1c51a3730466dc0678d6b3
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2020-10-01 21:10:05 +02:00
Allan Sandfeld Jensen
ecfda98d1f Remove unnecessary ref-counting of QRunnable
It could never be higher than 1 anyway.

Change-Id: If33c7978a4397a08e9eb091926726725d8bd3ea6
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2020-10-01 17:23:42 +02:00
Alexandru Croitor
4940f6d04c CMake: Remove old Qt 5 CMake build system files
Remove the stale Qt 5 CMake files.

Disable the generation of CMake files by the qmake build system,
it wouldn't create usable Qt 6 files anyway.

Keep mkspecs/features/create_cmake.prf and
mkspecs/features/cmake_functions.prf for now until we can confirm that
they are safe to remove.

Task-number: QTBUG-86827
Change-Id: Idcf59f4d7d5474171a9bf72904ff19adc8bc74cd
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-10-01 14:57:16 +02:00
Alexandru Croitor
081ec14b25 CMake: Clean up the public API a bit
Add some missing versionless functions.
Rename some functions that are not meant to be public API, and their
usages.

Task-number: QTBUG-86827
Change-Id: Ifb66c04cd7598d83fe80c01a92ab2d269ebaf396
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-10-01 14:57:12 +02:00
Joerg Bornemann
84485dfad3 CMake: Fix -[no-]warnings-are-errors configure argument
The CMake build uses the WARNINGS_ARE_ERRORS variable, and the feature
warnings_are_errors exists only in the qmake build.

Change-Id: I1e548b30b210b3dd1b2f23041d490a981312f4ba
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-10-01 14:56:23 +02:00
Joerg Bornemann
077ea0c633 configure: add -qmake argument
This option configures Qt with the qmake-based build system.
Currently, this is the default, so this option is a no-op until the
default switches to CMake.

Task-number: QTBUG-87049
Change-Id: I56f3080a4f1423788ffb743287a7b2e67a8e2cc4
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-10-01 14:34:05 +02:00
Allan Sandfeld Jensen
e750fa8509 Do not assert on invalid ICC curv table
Reject invalid table data, do not assert it.

Pick-to: 5.15
Change-Id: I1fdda4c735bb97bb93ac8f8654ac4cc5fada5389
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2020-10-01 12:20:39 +02:00
Allan Sandfeld Jensen
fe36d47b37 Fix race condition in QThreadPool::clear
Since we drop the lock while deleting threads, we need to handle
the queue possibly being accessed and changed by the pool threads
while clear() is running.

Pick-to: 5.15
Fixes: QTBUG-87092
Change-Id: I7611edab90520454278502a58621e299f9cd1f6e
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2020-10-01 12:15:22 +02:00
Lars Knoll
4d943225eb Add a QVariant::compare() method
Add a method that allows comparing two variants. The method returns
a std::optional, as comparing two variants of different type is not
meaningful, or the types could not be comparable.

Change-Id: If4ae838d671e051dda1b474f25a2f9dcf85dc265
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-01 12:15:22 +02:00
Volker Hilsheimer
f518f01be6 Fix qdoc warnings for QMap/QMultiMap
These containers have most of their operators as non-members,
except those declared as hidden friends in the iterator classes,
which will be fixed in qdoc.

QMultiMap doesn't have an operator[] (which might be unintentional).

Deprecate QMultiMap::insert/insertMulti APIs, as the documentation
suggests that those are just compatibility overloads.

Add documentation for the rvalue-overload of QMap/QMultiMap::insert.
Note that this overload does not exist for QHash/QMultiHash. Also,
it seems from the implementation that the moved-from map is not reset
to the empty map if it did share data with another copy.

Not addressed: QMap and QMultiMap have the special 5 implicitly
generated by the compiler, so these functions are not declared
anywhere, which results in qdoc warnings. qdoc could generate the
documentation automatically, if it can know that those members exist.

Change-Id: I0608b57c8c3793fedd304a4c7b10e607a24ad5f6
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-10-01 12:15:22 +02:00
Allan Sandfeld Jensen
752665cd9c Revert "Reimplement non-antialiased cosmetic pen"
This reverts commit 81008ef4b9.

Reason for revert: Doesn't handle line-caps correctly.

Change-Id: I0c77dbef6671fec326ec27f492ea3214054829ab
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
2020-10-01 07:06:32 +00:00
Thorbjørn Lindeijer
77ae1b6b3e QFileInfo: Allow constructing from QFileDevice
Also allow QFileDevice argument to QFileInfo::setFile.

This parameter change allows conveniently constructing a QFileInfo from
a QSaveFile, in addition to QFile.

Change-Id: I71244cb79b1cf92425eaff0e6de13524de562e0f
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-01 04:56:31 +02:00
Volker Hilsheimer
0f8848b7e2 Remove deprecated QProcess::pid
Change-Id: I6bce5b374a9e22f0a3d67755dbd0f8e14458ce3b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-01 02:56:05 +00:00
Volker Hilsheimer
3fb8f9e44e Properly deprecate QProcess::pid
Address an old ### Qt 5 comment. The method has been documented as deprecated
and replaced by QProcess::processId since at least Qt 5.9, so we can first
properly flag it as such for 5.15.2, and remove it from Qt 6 in a follow-up
commit.

Change-Id: Ic4e3351740617083b16723db8eef7a341bccfbf6
Pick-to: 5.15
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-01 04:55:47 +02:00
Shawn Rutledge
8f74f7d25b tst_qwindow: verify isBeginEvent(), isUpdateEvent() and isEndEvent()
It also demonstrated that the tests were out of sync with reality:
since a97759a336c597327cb82eebc9f45c793aec32c9 QMouseEvent::button()
and QWindowSystemInterfacePrivate::MouseEvent::button should be the
button that changes state of course; but when a button is pressed,
we are reacting to it after the fact, so QMouseEvent::buttons() and
QWindowSystemInterfacePrivate::MouseEvent::buttons should include the
new button that was just pressed.  Likewise when a button was released,
we send the event with buttons _omitting_ the button that was just
released.

Amends 147a8bc4c8 and
6d6ed64d6c

Change-Id: I670289019fcfa7de685ca38799804772dc0f1c8f
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-09-30 23:17:57 +02:00
Shawn Rutledge
871d19a5b9 Treat a double-click event as an update event with stationary point
The sequence is still press, release, press, double-click, release.
isBeginEvent() should not be true for a double-click event: the second
click began with a normal MouseButtonPress, and the MouseButtonDblClick
event is a way of sending updated state to tell the recipient that the
second click was special, occurring within such spatial and temporal
constraints that it can be interpreted as a double-click.
It never has a different position either, because MouseButtonDblClick
is a synthetic event occurring at the same position as the second press;
so we might as well say its QEventPoint is Stationary.

Together, these changes fix tst_controls::Basic::DelayButton::test_mouse
in Controls 2, without any changes in qtdeclarative.
In QQuickWindowPrivate::deliverPointerEvent(), if isBeginEvent() == true,
it delivers to all items under the point position(s) first, and then if
all _updated_ points were not accepted, it continues delivery to grabbers;
whereas if isBeginEvent() == false, it delivers only to grabbers.
isBeginEvent() and QEventPoint::state() are important to that algorithm.

Amends 6d6ed64d6c

Task-number: QTBUG-87018
Change-Id: I95def9704652147540df5cc065354a0fe04ed626
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-09-30 23:17:50 +02:00
Giuseppe D'Angelo
7ee682a1dd QREMatchIterator: add support for range-based for
Add begin()/end() on QRegularExpressionMatchIterator, making
iterators over an iterator (like directory_iterator).

[ChangeLog][QtCore][QRegularExpression] The iterator object
(QRegularExpressionMatchIterator) returned by a global match
is now usable in a range-based for loop.

Change-Id: If3d31bd2e84e7d1fb626a0b3d2745914dff03e39
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-09-30 21:39:36 +02:00
Allan Sandfeld Jensen
cc692bb58c Get rid of some #ifdef qt6
None of this code is even compiled in qt6.

Change-Id: I5891cc9459320083ad3908fcbf646f3ba75b8a4d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-09-30 21:15:40 +02:00
Alessandro Portale
47ae99a07a Android: Append .exe suffix to qmlImportScanner in androiddeployqt
Change-Id: I9d67d94eb9c19b36075311ddee20c972a645d28d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2020-09-30 20:18:57 +02:00
Laszlo Agocs
a0195a5bea Fix rhi manual test build
Change-Id: Ib121a3a9871c29c10c1f3ae720c093444e076e8c
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2020-09-30 17:08:01 +02:00
Edward Welbourne
10cb65fbf6 Use QDateTimeParser::locale(), not the default QLocale
QDateTimeParser::parseSection() used the default locale instead of the
one configured.

Change-Id: Ie31aa87670cc5ceaf8d937a907807445f44bf7f9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-09-30 16:41:39 +02:00
Edward Welbourne
61bd6afe39 Re-enable a QDateTimeEdit right-to-left test of its sectionText()
Use a QScopeGuard to fix its restoration of left-to-right mode after completion.

Change-Id: I5ac1e44629e72d993f2d5ba6586b86508d57cdaf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-09-30 16:40:43 +02:00
Cristian Adam
45271fb2ac CMake Build: Add direct2d CMake build
Also fixed Direct 2D feature detection test for MinGW.

Task-number: QTBUG-83932
Change-Id: I8c89aaa953d34de40fdf7b51e0859c791aeb38ef
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-09-30 16:38:43 +02:00
Edward Welbourne
158aba25c9 Eliminate QDateTimeParser's mutable parameters at last
I noticed that QDTP has a mutable member, text, which gets set at the
end of each call to parse(); this makes all the in-out parameters
redundant, since relevant methods can simply access - and modify -
text, if it's set *at the start* of parse instaed. (There are no early
returns to complicate matters.) This also makes StateNode::input
redundant.

At the same time, rename the mutable member, as several methods shadow
it with parameter or local variable names; it is too generic.

Change-Id: I2259cd87de5c84201b25c9633d11e59a4a4d57a1
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-09-30 16:28:42 +02:00
Edward Welbourne
47cb350d8f Standardize #include order and form in qdatetime.cpp
There were duplicates; there was neither rhyme nor reason to the order.
One was conditioned on a deprecated old define.

Change-Id: Iba390f4a83758418379fb5fc522f08ada3e41d12
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-09-30 16:28:23 +02:00
Edward Welbourne
1c591fd924 Deal with {und,ov}erflow issues in QLine's length handling
Use std::hypot() instead of sqrt() of a sum of squares.
This ensures length() can't be zero when isNull() is false.
Use length() in QLine::setLength() rather than duplicating that.

Clarify and expand some documentation; isNull() never said what
constituted validity, nor did unitVector() mention that is should not
be used on a line for which isNull() is true. Make clear that lines of
denormal length cannot be rescaled accurately.

Given that we use fuzzy comparison to determine equality of
end-points, isNull() can be false for a line with displacements less
than sqrt(numeric_limits<qreal>::denorm_min()) between the coordinates
of its end-points (as long as these are not much bigger); squaring
these would give zero, hence a zero length, where using hypot() avoids
the underflow and gives a non-zero length. Having a zero length for a
line with isNull() false would lead to problems in setLength(), which
uses an isNull() pre-test, protecting a call to unitVector().

(It was already possible for a null line to have non-zero length; this
now arises in more cases.)

Restored QLine::setLength() to the form it had before a recent change
to avoid division by zero (which resulted from underflow in computing
the length of a non-null line) but allow for the possibility that the
unit vector it computes as transient may not have length exactly one.

Add tests against {ov,und}erflow problems in QLine. Reworked the test
added during the divide-by-zero fix to make it part of the existing
test.

Pick-to: 5.15 5.12
Change-Id: I7b71d66b872ccc08a64e941acd36b45b0ea15fab
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
2020-09-30 16:26:49 +02:00
Ulf Hermann
c25687fa0b QTestResult: Don't pass a nullptr file to addFailure()
addBFail() asserts on the file being non-null. The convention seems to
be "Unknown File" for cases where we cannot determine the file.

Change-Id: I3a4d0130352d77d75f264fad6f3bd47c6700ef4c
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2020-09-30 16:20:29 +02:00
Alexandru Croitor
2044992eed CMake: Strip binaries and libraries upon installation
To avoid big artifact sizes, strip the binaries and libraries upon
installation. This achieves stripping similar to QTBUG-69767 and
QTBUG-81301 but arguably in a cleaner CMake way.

See comment on PS34 of the unmerged commit
90b09fee44b08b65a436fd15fda2526e242f7b21 for details.

Task-number: QTBUG-86053
Change-Id: I3ed929a8a7c74b88c480543212fc9551d8bde77f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-09-30 16:16:00 +02:00
Sona Kurazyan
2e27b98cff Use universal references in QtConcurrent
Changed QtConcurrent algorithms to take the passed sequences as
universal references, where it makes sense. In addition to avoiding
to create extra copies when passing rvalues, this change allows
passing temporary container adaptors to QtConcurrent::map (e.g. see
the example in the ticket and the new test-cases).

Task-number: QTBUG-83170
Change-Id: Ia7c0833f4ec1d860294fa5214cd53934b65ff084
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-09-30 15:28:01 +02:00
Friedemann Kleint
5c7307775d Emit QScreen::geometryChanged when the logical DPI changes
Add the missing call to QScreenPrivate::emitGeometryChangeSignals()
along with an emission of physicalDotsPerInchChanged()
since that is calculated from geometry and physical size.

Rearrange the code in
QGuiApplicationPrivate::processScreenGeometryChange()
to prevent duplicate emissions of geometryChanged(),
physicalDotsPerInchChanged() which this change would introduce.

Amends 5290027e3b.

Pick-to: 5.15
Task-number: QTBUG-76902
Task-number: QTBUG-79248
Fixes: QTBUG-86604
Change-Id: I3dc2ec5ccd9c6413e92f9246242f323e8afc5e57
Reviewed-by: David Edmundson <davidedmundson@kde.org>
2020-09-30 15:16:58 +02:00
Andreas Buhr
5add30c8ca QPrinter: unit tests fail when default printer supports duplex
When the default printer supports a duplex mode other than DuplexAuto,
the unit tests change to QPrinter::PdfFormat and expect that
the pdf printer is in duplex mode then. However, the pdf printer
does not support duplex mode.
This patch removes this check.

Change-Id: If394f9f23fd244713bbb1ecce9d3802cbd281d90
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2020-09-30 11:02:36 +02:00
Laszlo Agocs
2f879062a5 rhi: Manage buffer data without QBA
Use a simple and straightforward container that only does what
we need here.

Change-Id: I1a81b53a58bc91d533e3d7df5471a1362046825d
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2020-09-30 10:39:59 +02:00
Kai Koehne
0836db2330 Doc: Fix incorrectly placed closing bracket in Q_PROPERTY code
Amends cb3152086c

Pick-to: 5.15
Change-Id: I1615a686a53da7ca5ae454565283c9e83399d947
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-09-30 10:11:05 +02:00
Mårten Nordheim
7bb17d185d QList: don't detach on squeeze when holding raw data
To match QString and QByteArray behavior

Change-Id: Ifce4a5dee6fc9077e855a24499f11f911e359cf5
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-09-30 10:11:00 +02:00
Mårten Nordheim
ba465f00ed QList: Remove CapacityReserved on squeeze
Even if we don't reallocate or detach.

Change-Id: I44928c261f037b304de8ee6135b96f00dd217c51
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
2020-09-30 10:10:57 +02:00
Fabian Kosmale
8572f84467 Fix ChangeHandler notification for eager properties
ChangeHandler's evaluated the binding to detect if the value actually
changed. This is a valid strategy for lazy bindings, but eager bindings
were already evaluated at that point, and thus the change would not be
detected.
Change the binding loop test, so that there isn't a fixpoint in the
binding loop, and we can still detect it. Changing the binding loop
detection code to deal with this case is left as an exercise for the
future.

Change-Id: Ia5d9ce2cd98a5780e69c993b5824024eb186c154
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2020-09-30 09:27:50 +02:00
Jani Heikkinen
d90647b26a Remove license header templates from qtbase
After 66d6030924e968dffd98ba88d1382e8b08cc521d those are located in
qtqa instead

Pick-to: 5.15 5.12
Change-Id: I2b07638d30affe3e2826a231a31d34cfe7e9e4c6
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2020-09-30 07:18:08 +00:00
Xie Chuan
9af32d7019 Eliminate compilation warnings
When converting a const variable to a non-const variable, use the conversion operator 

Change-Id: Ib1c8f3defbf9ccce1af5c90e7e9c508bc8c039d0
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-09-30 14:55:32 +08:00
Allan Sandfeld Jensen
426308a93b Add logging categories to image handlers
Change-Id: Ia0c47826d08b3f641c17d8a585f62d008a8b095b
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2020-09-30 08:39:45 +02:00