| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
There are ways to close the window without hitting the code paths in the
render loops that delete the animation controller. Probably if no frame
was ever rendered.
Change-Id: If3e9d2051525c4ff50eda19084c967578fe4f4b0
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Also register qrc:/android_rcc_bundle/qml as the folder where declarative engine finds
the other QML files (qmldir, *.qml, *.js, etc.).
[ChangeLog][Android] load QML plugins directly from APK libs dir and use
qrc:/android_rcc_bundle/qml to search for QML files.
Change-Id: I9552121411d21537befc41646cdd161ce0cec760
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
QQuickWorkerScriptEnginePrivate lives in the worker thread. Therefore,
once the thread has finished there is no way to send it a deferred
delete event. The object and all its children would always leak. As
there is no event loop running in the worker thread anymore and this is
the dtor of QQuickWorkerScript, it's safe to assume that no one can
access the private object anymore afterwards.
Change-Id: I51f583ea47060d967403639196247882ff7d2905
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
| |
Otherwise they leak.
Change-Id: I744f67e039ffb9cacbf16394bd5558ee72028177
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Leaks happened when using unqualified context property lookups and when
looking up properties of singletons. We need to release the caches when
unlinking.
Fixes: QTBUG-78859
Change-Id: I8b86bcf72f71a463fb259eb6ae6c46be62729d72
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The cache can get overwritten. We want the reference to the old one to
be dropped then.
Fixes: QTBUG-78865
Change-Id: I8ebba4ae242c3bf8ae4db5cffc65b26bab265b8a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
| |
...as this will be done automatically by QRhiSwapChain after the
corresponding QtGui changes.
Task-number: QTBUG-78641
Change-Id: I8edeb728f3aba07bfa6bc6331966fba4bdee71f4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
|
|
|
|
|
|
|
|
| |
Also extend the docs. And while we are at it get rid of
some clang warnings.
Task-number: QTBUG-78669
Change-Id: I4ef15d2d066098ba7bbbd34e80d4e61efe7fba23
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sadly the third centennary of Cassini's birth isn't such a good date
after all, since round-tripping will ignore DST on the QDateTime leg
but include it in V4's implementation of ES's ill-conceived spec for
handling DST and time-zone transitions; and June 8th is in summer for
much of the world. So use a date which (as far as I can tell) appears
to have been DST-free everywhere; and after the start of 1970 so that,
even if we find ourselves working with a zone in which it did have
DST, we'll apply DST consistently during round-tripping.
Fixes: QTBUG-78706
Change-Id: I25be2548e2c97eae2c4f6c5bbe661dea2f35aaba
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|\
| |
| |
| | |
Change-Id: I73d9e896c05f7d944f3092b51a3a95c7e6e284b8
|
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-78784
Change-Id: Idc156088fdae4782b4970c3211b8248f8c333e9a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If an exception is thrown inside a promise's resolve or reject
handler, the promise needs to resolve into a rejected state with the
exceptions value. The value was previously not set.
Fixes: QTBUG-78554
Change-Id: Ic22faa6ef1e519e4cae6732c69bb14f7053d13da
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Having neither a list of all possible modifiers nor a link to
Qt::KeyboardModifier was inconvenient. Clarify that bitwise OR
results in logical-AND behavior, while having multiple handlers
results in logical-OR behavior, and that a switch statement in JS
allows you do anything you like with modifiers. Fix the manual test
to test the switch statement and deal with the fact that
point.event.modifiers is undefined: TapHandler can use
eventPoint.modifiers, but any DeviceHandler can use point.modifiers.
Fixes: QTBUG-78234
Change-Id: Iba2a03950aa1279ef454cc76fc8de1b2dab14dfb
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the filters list is the same as before, then there is no reason to
trigger an update on the thread as the result would be the same as
before. This solves a problem that was occurring with iOS 13 as it would
get stuck due to repeated calls to setNameFilters() with the same
filter list.
Fixes: QTBUG-78468
Change-Id: I705cfaaa0a1a19b1d0397140a5831fc67557a4ee
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-78307
Change-Id: I71bc58ba5e4d930167f56a264e20b352244502a3
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-78690
Change-Id: Iaee681cc10ae33c582806900a041d79bc0cc8d1d
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I1cad0d8aa81b26a91e97a869f3c8539ae3cf1ad6
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the compilation fails QQmlTypeCompiler::compile() returns nullptr. In
that case, there is no ExecutableCompilationUnit to own the resolved
types. Therefore, delete them.
Change-Id: Ia8f4ef78438642cb064538c7266ca636ec7eb0c1
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ie086399104de51ce0ae741f6fef316633ed47aa9
Reviewed-by: Martin Smith <martin.smith@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Qt Quick will not receive "uninteresting" stationary touchpoints, but
only those in which some property has changed. So MultiPointTouchArea
should react to stationary touchpoints in the same way as if they moved,
so that UIs can react to changes in touchpoint velocity, pressure etc.
And QQuickWindow has to be willing to delivery stationary touchpoints
to make this possible. However when a QTouchEvent is customized for
delivery to a specific Item, by including only the touchpoints that
are inside the Item, then if those touchpoints are all stationary,
the event only needs to be delivered if at least one of them is
an "interesting" stationary touchpoint. So we need to depend on
a new per-touchpoint flag that QGuiApplication will set when it
discovers that some property of the touchpoint has changed. That is
QTouchEventTouchPointPrivate::stationaryWithModifiedProperty.
Fixes: QTBUG-77142
Change-Id: I763d56ff55c048b258dca40d88283ed016447c35
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In 341ab7708049b1a3f559b76f16393e688951a938, an internal
QSGDynamicTexture::QSGDynamicTexture(QSGTexturePrivate &dd) constructor was
added, which means QSGDynamicTexture now doesn't have a (formerly implicit)
default constructor anymore.
Fixes: QTBUG-78312
Change-Id: I34a918942d87ca522aa7131580b9e08a1445d635
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change 5d995ae122aa07486ead849560b74d2b62b883bb did not make the actual
QQuickImageBase::currentFrameChanged signal accessible to the Qt Quick
2.0 revision. Normally the QML engine would implement a JS
onCurrentFrameChanged handler by connecting to the currentFrame
property's frameChanged notifier signal; but in this case it tried to
connect to the explicit QQuickImageBase::currentFrameChanged signal
instead (because the name is a better match), and failed because of the
revision. So we need another duplicate unrevisioned signal
QQuickAnimatedImage::currentFrameChanged for use when the import is less
than Qt Quick 2.14.
As pointed out during review, an autotest for the revisioning is good to
have anyway.
Fixes: QTBUG-78713
Task-number: QTBUG-77506
Change-Id: I121508acac81d47e3c0a4c0ed12257c10b30970b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If enabled is false, then containsMouse will not become true when
hovering on mousearea, even if hoverEnabled is true. However when an
invisible mousearea become visible, the value of enabled isn't
checked. In this case, the value of containsMouse is not affected by
enabled.
[ChangeLog][QtQuick][QQuickMouseArea] containsMouse property will
not become true when the an invisible mousearea become visible, if
the enabled property is false or its parent item is not enabled
Fixes: QTBUG-77983
Change-Id: I923bdcf3eda813aea51a04515d530093d6eb77b2
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A side effect of 8fd398c9d2f5f54e446e0b402bc63a2edb50da6f is that it
became possible for the highlight to stop between items, rather than
snapping to a specific item, if the user taps, clicks or drags an
additional time while the movement is ongoing. That was because it
didn't get a mouse grab, so it missed the release event.
QQuickPathViewPrivate::handleMouseReleaseEvent() needs to take care of
the snapping behavior after the user stops dragging. This only affects
behavior in the case that the PathView is already moving and the mouse
is pressed again: we assume the user wants to alter the PathView's
velocity, not interact with any delegate inside or with any parent item.
Task-number: QTBUG-77173
Task-number: QTBUG-59620
Change-Id: I7b2f69a6ef8d8022d7c917a5bf9e8fb40c8848db
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I7783ed26a66f03ebe3b26bcba2f42f9fff45a417
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...in order to test the handling of losing the device.
The D3D11 backend of QRhi provides a convenient way to test this.
Hook it up to a QSG_RHI_SIMULATE_DEVICE_LOSS environment variable.
The value is the number of frames to wait before breaking the
ID3D11Device.
We cannot currently recover from a device loss. Hence the importance
of being able to test in a simple way. The rhi code path needs to be
brought up to the level of the direct OpenGL path in this respect,
in separate patches.
Change-Id: I66d6315dc60a9673903da9bed36de0cdd115f4a7
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I90d43d5daa75bbc52c9c10f4ef920b898bbd39d4
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I02cee05ce7eee2ad1c458d1a934c210c12d1dea2
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This update repares several "Can't link to...," "No such parameter...,"
and "Undocumented parameter..." warnings.
Change-Id: I3649cf35f766e5a87ca5df48301e8063a31d7904
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It doesn't make sense to show hover feedback after releasing a
touchpoint just because the core pointer cursor happened to move along
with the touchpoint, so we explicitly set the hovered property to
false when the touchpoint is released. However the next mouse movement
will set it back to true again if the mouse cursor is still inside.
This is especially important for touchscreen-based haptic interfaces:
any hover feedback should be shown when a finger is dragged into an
interface element and hidden again when the finger is released.
Change-Id: Iff7f23f089466cc0da94d2a46690719f6d70cae2
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Plain qmlRegisterType() is deprecated and qmlRegisterAnonymousType() was
added in 5.14 as replacement. Also, qmlRegisterAnonymousType() does take
an import URI and a major version. The point about non-anonymous type
registration is that it also takes an element name.
Change-Id: I51fb6f9c63dcf15dc1da10c25ea6c6d3b88fd31a
Reviewed-by: Kavindra Palaraja <kpalaraja@luxoft.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Give a friendly message for qmlAttachedPropertiesObject(int ...) and
disable plain qmlRegisterType<Foo>() if QT_DEPRECATED_SINCE(5, 14).
Change-Id: I9373f38fdddcb58ec1211b6cab492e1bc5370e52
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- avoid runtime conversion of float->double when initializing a qreal
- use qFuzzyCompare/qFuzzyIsNull to avoid direct comparison of
qreal values
- don't test a float value as a bool by implicit casting(!)
to check whether it's zero
- avoid implicit casts and old-style casts
- fix whitespace around comments
Change-Id: I7b0e77d38d5c86aa1a71833738deb5f0f893b507
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The screenshot shows it having a transform origin at the top left,
which is not the default.
Task-number: QTBUG-78209
Change-Id: Id9a2d854493caba240960afa7ba400dc656ac0ab
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Iaef8dfa6a984eb709aaae35a94641c3e0183254e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I50c6a5c7a55cfc481ff572113c58951983671cdc
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I0be124dfcafa2244531281ffd1ac6b559d82c604
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia78012271705b3f977011a89d3156faa79a35f29
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I715ad71153151a0e6521bc182227d9fa2dc0a3ea
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
|\ \ |
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/qml/jit/qv4baselinejit.cpp
src/qml/jsruntime/qv4vme_moth.cpp
tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp
Change-Id: Iec7cd27ddad0281bd3b7833fb6b252f66a6ae5d6
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I6472cd72b27c69257efe54376e428274ebf68050
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We need to keep the accumulator alive across function calls. This
requires:
1, Saving the accumulator on the stack if the function might allocate, to
protect it from the garbage collector. However, we don't need to do
that if the result of the function is to be saved in the accumulator
and the function itself doesn't use the accumulator as argument. In
this case the previous value becomes unaccessible and we might as
well GC it.
2, In the JIT, restoring the accumulator from the stack after the
function call if we want to ignore the return value.
3, Therefore, also saving the accumulator on the stack before calling in
case of 2.
We assume that we don't need to keep the accumulator alive across the
jump to the exception handler. Saving the accumulator more often than
necessary is detrimental for performance. To make sure the assumption
holds, explicitly load the accumulator with undefined _before_ jumping
to any exception handler.
Change-Id: I78cbc42847b8885a0659b23f3b81655b7f1a0bc4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: I243d12b75a07ac04560b444c326bff77d0dc642c
Fixes: QTBUG-74087
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
(cherry picked from commit 426f3035a3753800ce340a83bdf8db13922f4cae)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If the alpha value for the background color of a text element is 0,
we don't need to create a rectangle node to represent it, as the
rectangle will be invisible anyway.
[ChangeLog][QtQuick][QQuickTextNodeEngine] don't create a new
rectangle node as the background of text, when the alpha of it is
0
Fixes: QTBUG-76137
Change-Id: I40c624ee8f61740fd07e7d3751a78b6224882913
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It got lost when moving the classes.
Change-Id: I7b3a9fec8fe9439c548da570e430d3b82613b816
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
It was lost when moving the classes and the import URI was wrong.
Change-Id: Ic01f5c327ac53e58874f54399dc0434a23bed7b8
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Just do the typical
do {
[..stuff..]
} while(0)
in the macros
Fix the places that didn't have semicolons.
This should eliminate some compiler warnings complaining about
excessive semicolons
Change-Id: I6b0e7a55badfd0f80c3cd0e9e1da42dc41945485
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
These might not be complete yet, but they do fix the
qdoc errors.
Change-Id: I75b0f0f7709a371149a6f7c82adfff9fe88408ea
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We want those to be different types, even if they don't add any
properties, signals etc. Otherwise you can cross-assign objects of
components defined in different files.
Fully-dynamic types, such as QQmlPropertyMap are still an exception to
this. We need to use the original meta object so that you can still
dynamically add properties to any derived types. Therefore, all types
derived from QQmlPropertyMap are in fact just aliases of each other.
Also, types which aren't addressable from the outside don't get their
own meta object. Types are addressable if they live in files and the
file name starts with an uppercase character. Otherwise there is no way
to refer to the component from anywhere else in QML.
Fixes: QTBUG-76021
Change-Id: I96a01fdad13e50e4705520fec46f2b3373e0c365
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|