| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This gives users a more convenient way to determine if a particular
color is valid. Before you had to actually compare with an invalid
color.
Fixes: QTBUG-78325
Change-Id: Id86bc46a48aa11da3e6654d2940d758d2b0e784f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch reuses the existing support for value types to support
aliases of depth 2. This covers the initial use case in QTBUG-48150.
Adding support for "deeper" aliases would require storing the complete
"property path", which in turn would require increasing the size of the
Alias data. This is currently considered out of scope, at least until a
clear use-case appears.
Fixes: QTBUG-48150
Change-Id: Id2ac4dd175003a37eba2919e7604d0a3be54d29f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The root cause for the issue is that QQmlObjectCreator::setPropertyValue
calls QQmlStringConverters::variantFromString on strings if the property
is of type QVariant. Unfortunately, this cannot be changed easily as the
current behavior is explicitly documented and tested in tst_qqmllanguage,
thus making it a breaking change.
As a workaround, QML Binding does now take a QJSValue instead of a
QVariant (making value a var property), which does not trigger the
conversion path.
Fixes: QTBUG-78943
Change-Id: I0b64dffdb6b84b2bab2bb85a8cb263e530c18570
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The qt5 submodule update is now done in qtbase, so the code here can
now be migrated to follow the QRhi (private) API changes.
This reverts commit 7661b142a130df54af3a5430a29e3c82da086c7b.
Task-number: QTBUG-78995
Change-Id: I6995cd5e14b75622a51c9e95fb3178485d67d63d
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-78883
Change-Id: Ifcf5af843b5101a35ecc762a6a3b0196b6d97782
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
mostly add const &, a few std::move and in particular case, remove const
so the std::move being done over the variable actually has effect
Change-Id: Id611cd31bc012f219d7a17d4626b1c2a5fbddd66
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use a QPointer, so that we notice if the object has been deleted.
Also ensure that in the documentation the function is in a single line,
as qdoc will otherwise silently omit it.
Change-Id: Idecd370d00089997cd18b3247ad2290a561b2b69
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Increases readability
Change-Id: I46d82fac83e538988cea79a053d70b954a3cb9f1
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We _really_ want people to port away from this. And yes, we are going to
change it.
Amends commit c273175ffec925a4164de41a79c21d785a1761a7.
Task-number: QTBUG-33444
Task-number: QTBUG-78566
Change-Id: Iab50b8c7bad043528602e2e617c772de06d18b1e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Pierre-Yves Siret <gr3cko@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...to avoid blocking the next submodule update. Can be restored
afterwards.
There is no temporary compatibility function for the QVector-based
getters in qtbase. This got overlooked probably because it is in a
block that is there in debug builds only.
Change-Id: I3de3f48934e6a31cc14a90f306fddfa04ac56f41
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Follow the QRhi changes that move away from QVector in
QRhiShaderResourceBindings and QRhiGraphicsPipeline.
This, together with QRhi's de-d-pointering of QRhiShaderResourceBinding,
is bringing significant performance improvements for scenes with
a lot (thousands) of unbatched items, since a large number of
allocations are now avoided due to not having to create a QVector of
d-pointered classes just to do a lookup in the srb cache.
Change-Id: I612ab2d9449a9e0ce79f7169b942b95d55af61ff
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Calculating values based on the dpr is not possible in the sync phase,
because the strictly correct dpr (that takes redirections into textures
into account) is not known until QQuickWindowPrivate::renderSceneGraph().
The text material implementation attempts to dig out something directly
from the context's associated surface, but this does not match the way
QQuickWindow calculates the value (although it would work without causing
any trouble in many cases).
This is of course incompatible with the QRhi-based abstraction since
neither the context nor the associated window (if there is one even) is
known to materials.
To solve this, create a proper solution that makes the
QQuickWindow-calculated dpr available already in the sync phase (so in
updatePaintNode() implementations): have QQuickWindow calculate
calculate the dpr in syncSceneGraph(), and pass it down via the
rendercontext.
Only the rhi-based code path is touched in this patch. The direct OpenGL
path could be fixed in a similar manner (by migrating to
rc->devicePixelRatio() in the sync phase and state.devicePixelRatio() in
the render phase), but that is left as a future exercise.
Task-number: QTBUG-78610
Change-Id: Id9d9d4b1fd5b9730a64834fbbf61c74af4a8ed07
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I8aa36cbba95a64498b34c689086e45c115ce542b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously the sorting depended on qHash(QQmlType), which hashes a
pointer to QQmlTypePrivate. That was not very useful.
Also, the defaultCompositeTypes were only populated when dumping
builtins, and only used when dumping regular types. Therefore, whenever
they were used, they were empty. We don't have to bother with that.
Change-Id: Ibfbfc7e14bee900d617bab58cbe39d05f5fe91c3
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We don't want to encourage Qt.createQmlObject(). It's the equivalent of
eval() in JavaScript.
This has the added benefit that the shapes actually react to changes in
the parameters now. Before, once a shape was drawn, it didn't get
updated when you manipulated the line width or fill controls.
Change-Id: I8d5b7598799b52043f86fd1f617e31de09331891
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Otherwise the shutdown mechanism for debug services doesn't work.
Fixes: QTBUG-78828
Change-Id: I4ede5861a300d5b5007036d71ed84409ec4d450f
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@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>
|
| |
| |
| |
| |
| |
| |
| |
| | |
QtQuick defines the color provider necessary to use colors. If QtQuick
is not loaded at that point, the test fails.
Change-Id: I7d2eb25f7482d18b304d9274bce4a6bd6fa34741
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
The result from component.create() has to be deleted somewhere.
Change-Id: I23135cb639fc316641e399decc740d9f5d445a84
Reviewed-by: Simon Hausmann <simon.hausmann@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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The JavaScript pragma test expected the dynamic signal test to run
before. Therefore, it would fail when run in isolation. Move the two
tests into one function.
Change-Id: I0edb1f091c6a845110c3f741cbb48e846c423005
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>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I27baef97537bb8fda7fcc00d934f0b2568b4284e
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If not given a "--strict" argument, qmlplugindump will ignore the given
major version and only check the URI as prefix, not as exact match. This
is in line with what qmlplugindump did in version 5.13 and before.
Fixes: QTBUG-78745
Change-Id: Ib2803d47e6cb60c797fec8dfaa628278307d4cd4
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We do not put the objects we encounter in defaultReachaleNames. Thus,
the check in prototypeNameForComposite will fail most of the time.
Instead, we now use the same check as in collectReachableMetaObjects
(that is, does the type belong to the module).
Then, we once again only collect the metaobjects belonging to the module
in objectsToMerge, and only dump the relevant properties from there.
Fixes: QTBUG-78744
Change-Id: I78cae1e56b6f59e277198f9bcd0d826c4e0978a7
Reviewed-by: Ulf Hermann <ulf.hermann@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>
|