| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: I375e182709e0e916a124302a9c46c29e53791499
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
|\
| |
| |
| | |
Change-Id: Id292599780ae47c6f2f3fa2d3bbc542b113bd16b
|
| |
| |
| |
| |
| |
| | |
Change-Id: I6ab3877b8fff6966141abe1bb40609e5d8d842e3
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Creating the callcontext for all bindings causes a 15% performance
regression in both of the moving images benchmarks of qmlbench.
But in most cases, we know that a binding can't be a signal handler,
as those always have to start with 'on'. Take this into account
and avoid creating the context for most binding expressions.
Task-number: QTBUG-67782
Task-number: QTBUG-67783
Change-Id: I9a25cb916e374c7d03693e49646ca28853c6ba54
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Allocating a 0 sized MemberData hits an assertion
in debug builds.
Change-Id: I0251b2b38f4b48c7ed35d22f88c0c5c4a98e6464
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
For details see QTBUG-67757.
Task-number: QTBUG-53916
Change-Id: I142a418fc22e6cdf64ab571ea2759e00c8101c47
Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QMovie emits the signals updated() and frameChanged(), and restarts
right after its timer to prepare for the next frame. Since AnimatedImage
destroys its underlying QMovie when its source changes, the lines after
emit frameChanged() in QMovie will use free'd memory and will most of
the time produce a crash.
This fix delays the destruction of the underlying QMovie of
AnimatedImage using deleteLater() to prevent this kind of behavior from
happening without impact/behavior change in the code of QMovie. Unit
tests added as well to cover this situation.
This commit also fixes a similar crash when Component.onCompleted is
called and when the source changes in the associated callback.
Task-number: QTBUG-67427
Change-Id: Ic6568a1bc251e5fa2ee1cf8e5f50eaa56c3007db
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Louis du Verdier <louis.du.verdier@free.fr>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit f6bbeeb417102c61e8bf23f41e412ed9753a348d began normalizing the
resource urls in the type loader, which broke loading of qml singletons
from resources, as the normalized url is also used for the "pragma
singleton" verification to check that the singleton is in the meta-type
registry. If the registration was done with a non-normalized url, the
check would fail with a misleading error message.
Task-number: QTBUG-68025
Change-Id: I1093ee0cbee884b4a51195c302c8908f748e747e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Its unreliable and we don't know why yet.
Task-number: QTBUG-66866
Change-Id: I963a0070e5819b20d0e811f749cf623113eb9d26
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We have to correct for the fact that sub-rects of images in QPainter
are in source coordinates.
Change-Id: I457527b4ff7c1df5f6b662c3ed4d690e05efb4fb
Task-number: QTBUG-40366
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Change-Id: Ieb14322c104d816842e04e521b556bfc11855f1c
Task-number: QTBUG-67024
Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using the VDM or QML list properties as models, the delegate model
injects an intermediate QQmlContext that provides access to the
properties of the exposed QObject as context properties. Before commit
e22b624d9ab1f36021adb9cdbfa9b37054282bb8, that context was marked to be
owned by the parent QQmlContext.
When the reference counting was introduced, that parent became
referenced from the cacheItem (DelegateModelItem), but that intermediate
QQmlContext became floating and was leaked.
This can be observed by running the objectListModel test of
tst_qquickvisualdatamodel with detect_leaks=1 in ASAN_OPTIONS.
The leak is fixed by re-introducing the exceptional case of a parent
holding a strong reference to the child, in just this one case.
Change-Id: Iabc26990d39757b0abe0cddf69e76e88e40fba40
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
| |
| |
| |
| |
| |
| |
| | |
So that it shows up on http://doc.qt.io/qt-5/best-practices.html
Change-Id: I0968362dc055adb6b882c1b7dc6a4a4d7f8b6351
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
./stringmodel.h(63,9): warning: 'rowCount' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
int rowCount(const QModelIndex &) const
^
./stringmodel.h(73,17): warning: 'columnCount' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
virtual int columnCount(const QModelIndex &) const
^
./stringmodel.h(83,25): warning: 'index' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
virtual QModelIndex index(int row, int column, const QModelIndex &parent) const
./stringmodel.h(92,25): warning: 'parent' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
virtual QModelIndex parent(const QModelIndex &) const
^
./stringmodel.h(97,14): warning: 'data' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
QVariant data (const QModelIndex & index, int role) const
^
tst_qquicklistview.cpp(8695,18): warning: unused variable 'ctxt' [-Wunused-variable]
QQmlContext *ctxt = window->rootContext();
Task-number: QTBUG-63512
Change-Id: Ie928981a601d0462cfadd093815d110f6971d7f5
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Due to heavy load in ci test vm, the animation perhaps didn't
start after QTest::qWait(100).
Task-number: QTBUG-67939
Change-Id: I8c786c82ea41c3d3514ab6bddaefb0c584f35fe0
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I4ff64856c066309057e9f201ab51ed805042aefc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With the snippet in the referenced bug report (and the parent patch
applied), the output is:
qrc:/main.qml:19:19: QML ListView: Error creating delegate
There should be more errors after this line, but since the delegate
itself didn't have any errors, we need to also check with the
incubation task. After doing so, the output becomes:
qrc:/main.qml:19:19: QML ListView: Error creating delegate:
qrc:/main.qml: Object destroyed during incubation
This adds important context (for developers and for users reporting
issues in the future) that was previously missing.
Task-number: QTBUG-49224
Change-Id: Ic7ac1a06c7dbdf3746f960d28908cc10f6ae86f5
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When used on for example delegates we can and should also print the line
number and column where the component is declared.
Change-Id: I0f02c675425700cde119352d0001895cc31a4c73
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This prevents loading of types with slightly different paths multiple
times, like "qrc:/One.qml" and "qrc:///One.qml".
Task-number: QTBUG-65723
Change-Id: I6e26db6d1d271b2ed37b97eb990618843e99c372
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently, QQmlDelegateModel errors look like this:
<Unknown File>: QML VisualDataModel: Error creating delegate
This patch uses the delegate as the QQmlInfo object so that we get
errors with actual file names and line numbers:
qrc:/main.qml:19:19: QML Component: Error creating delegate
This has several benefits:
- It's obvious which file is causing the issue
- A clickable link in Creator's application output pane
Task-number: QTBUG-49224
Change-Id: I0df0d1a9e898aff5f83131ca62a47cc7f1c74c6e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QQuickPointerTouchEvent::m_event is 0 when calling
QQuickPointerTouchEvent::isPressEvent(). Add a convenience function
with a check returning the Qt::TouchPointStates.
Task-number: QTBUG-44976
Change-Id: I2433ec3c56adeda2de190ca46aed8413a1357c55
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We were leaking an instance of MyNetworkAccessManagerFactory in the
"NetworkAccessManagerFactory"-example. To add to this the documentation
around QQmlEngine::setNetworkAccessManagerFactory did not specify
whether or not it took ownership, causing confusion.
Change-Id: Ic9eee2c45682c752bcb4aa98943fc0af2b630795
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
-typedef "Jump" may not be used in an elaborated type specifier
-explicit specialization of function must precede its first use
-"Value" is ambiguous
Change-Id: Ic15c196f1b33211cd3f2f25a54ba478747336fe4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io>
Reviewed-by: Nikola Velinov <nvelinov@ghs.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This patch enables JIT on INTEGRITY s820Am and other ARM64 builds
Change-Id: I2fa130f41a6c5bc6aa86bcfd5a01c2d431300561
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Nikola Velinov <nvelinov@ghs.com>
|
| |
| |
| |
| |
| |
| |
| | |
Change-Id: I472f61241d1875daf0de0a597bf27c019314f48f
Task-number: QTBUG-50119
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I08e952fb8c19c21caf33ffb1cfdc260b533a01d9
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If lists had spacing, snapping would have gaps where snapItemAt would
return nullptr eventhough there were items above and below in the list.
I.e. if we have a list with items of size 100, and a spacing of 100, and
scroll to 110 (right below the first item), then the first item would fail
because this is false:
itemTop+itemSize()/2 >= pos (50 >= 110)
And the next item (the one we should have snapped to), would fail because
this is false:
itemTop-prevItemSize/2 < pos (200-100/2 < 110)
The meaning of first part was probably to see if the middle of the current
item is inside the view.
The meaning of the second part was probably to see if the middle of the
previous item is outside the view.
This patch refactors the code so it's more visible what's happening and
fixes the bug by taking the spacing into account when computing the position of
the halfway positions.
Task-number: QTBUG-59852
Change-Id: I60eec0d16e91d2f22d70b97d11bcde5d88ac2997
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This enables us to drop the QML dependency from a number of tests. This
is desirable because we want to test that we didn't do any incompatible
changes to the debug framework.
Change-Id: I937dd45d3079eac15c200c9d68bb4c911f61afc0
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch partially reverts 098ba086530ccd555369a9ea88f3c6668726ab81.
Only QtWebGL will use separate buffers for indices and vertices. This
patch gives a performance boost.
Task-number: QTBUG-66191
Task-number: QTBUG-67147
Change-Id: I58b4db2bdf44cd954390e85e079de82031caf9e5
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This means QtQmlDebug needs its own qqmlprofilerdefintions.h. This is a
good thing because this way we notice if we change the definitions in an
incompatible way. The test uses QtQmlDebug after all. Also,
qqmldebugserviceinterfaces_p.h is not available anymore, which means the
service names have to be spelled out. This, also, is beneficial as it
prevents us from accidentally changing the names.
In the context of QmlDebug we don't need to namespace the profiler
definitions, either. This simplifies some code.
Task-number: QTBUG-60996
Change-Id: Ibb39e48c9b758687d68b8ce4431f45eb26939a09
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The submodule has now reverted my "fix" for a test the ES spec
initially lead me to think was misguided; the test is fine, in fact,
but I was using the wrong time-zone to run it. That's now fixed here,
so we can take in the revert of the mis-fix.
Task-number: QTBUG-67010
Change-Id: I89c8236ce11ee4dc16eb145e37f4510e19977bb2
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Just because we need a data stream version for QQmlDebugPacket, we don't
need to add such a huge dependency. Using a template here adds some
boiler plate to all users of QQmlDebugPacket, but this is worth it.
Task-number: QTBUG-60996
Change-Id: Ibade8757e28ac772942129c22c8721b504da3aee
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-66609
Change-Id: I6d96b14299f7d764414f6482b7b9b003611d8344
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This amends commit 2b8b7a162be52f8cd6c2bc39f498a1ddfb59dd68.
The very last test (15.9.5.43-0-8) in the ES test-suite relies on
constructing a time *just* outside the valid range, to provoke (and
check it gets) a RangeError. However, it uses the current time-zone
offset in computing this; and the local time -> UTC conversion in the
Date constructor uses the zone information for the zone at the given
time. The TZ db uses each zone's local mean solar time for the period
before a formal zone was introduced; and Vancouver is further West
than the nominal meridian for its zone. The test code throws in an
hour's correction in case it's run in daylight-saving time, which
would put the test time, when run during standard time, an hour (and a
millisecond, rather than just the millisecond) outside the valid Date
range, so as to ensure it's still a ms outside when the test is run
during DST. However, the 12m28s mean solar offset overcomes the 1ms
and puts the time back in range durign DST (but still 47m32.001s
outside during standard time, which is why this problem only surfaced
when North America entered summer time). Fortunately, Los Angeles is
further East than the meridian in question, and uses the same zone.
Task-number: QTBUG-67010
Change-Id: I58fd7bf14366ebe5842b8abd7e6802c9c78ca27e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
| |
Change-Id: I2e08061ff7d084b08d1fb6d857dc6fb985c66a48
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: Ie2fe1d172898bd0d51f0841c078abd1f8ab8d744
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: I4131a399cca7c66b0e9df549f14be43eeaa94af3
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: I9443be62da5cc9fc281e167f38fa299c73115eda
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: I61a1015d74beaeac9d7a2aecd73e3f05c8a545c9
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: I232dcef923f3dfa5a6a2377bc8297b07fbe01f37
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: I4ed5d3e08d718ebb6cf15f97806c18b8aa514e1c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: I5ba3c5947262e7fab5df3bfcc05d2282234dafcc
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: Ife465afc101d400b47e9f98c58cac3894224da00
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since commit 214fbaa57b73296a0 the latest minor version of the
import is automatically the Qt minor version, so let's also document
this.
Change-Id: If0b8a0daecc62d191a9c5efd450ec0f5214ee387
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-67786
Change-Id: Ie371d4c931ce31f728cdd960ad454e26c40cc4ed
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
| |
Change-Id: I5d2019c079a5e28b7fd8bfcb1ed63e5a5e3fe956
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
| |
This got introduced in commit 67c9f735ce.
Change-Id: I61a9a3886125cebe64f9eaa5ae1c7b8d226b2e1c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
Mention licenses in the remaining landing pages.
Change-Id: I3754d959db9d9e4914e50d670f159eba1afa7596
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Consider the following example:
Item {
width: 100
height: 30
Text {
width: parent ? parent.width : 0
height: parent ? parent.height : 0
elide: Text.ElideRight
text: "wot"
}
}
When setting the Text item's parent to null, its explicit width and
height are set to 0. When restoring its parent (the Item), its
explicit width and height are set to 100 and 30 again, but the text
itself is still not rendered.
The cause can be seen here:
if (!(widthChanged || widthMaximum) && !d->isLineLaidOutConnected()) {
// only height has changed
if (newGeometry.height() > oldGeometry.height()) {
if (!d->heightExceeded) // Height is adequate and growing.
goto geomChangeDone;
heightExceeded was false, because 30 > 12 (or whatever the implicit
height happened to be), so the text was not laid out again, even though
it went from having an explicit height of 0 to an explicit height of
30.
Fix the issue by only executing the goto if the old explicit height
wasn't 0.
Task-number: QTBUG-60328
Task-number: QTBUG-67145
Change-Id: I7f4d2f95bc95c850133ba91ac2d1a02c7ee159b6
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
| |
The return value of getType() has the ref count increased and needs
handling on the caller side.
Change-Id: I05ffa4dae221f2502f87b76762164bba1389db32
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|