| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We started to convert containers to QJSValues, so that we could use them
as JavaScript arrays. Unfortunately, this would then lead to a type missmatch
when those same values where to be stored in a property of the container
type. This commit fixes this by converting them back to the original
type.
Fixes: QTBUG-80916
Change-Id: I30a3b03e17c34b171d4a6881dfd7801c13e94d80
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When QtQuick and QtQuickParticles was linked into the same application
then there was a name clash, so the classes in QtQuickParticles are
renamed to avoid this clash.
Change-Id: I8c2144ba7ad5838c95077a370ef400bd706fce8a
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Most bugs were related to the PullBackHeader header positining mode, for
instance the old code did not take into consideration that for the
PullBackHeader it was sometimes not sufficient to scroll the view. The
header also had to be scrolled independently from the view:
We achieve this by hooking on to the same timeline that is used for
scrolling the view. (This way, both animations are synchronized, and
they start and end at the same time).
Change-Id: I75708c0fd8d4741032c04ad9ee144d7a49cf3359
Fixes: QTBUG-76362
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We should not keep user-created objects in global data structures. This
is inherently thread-unsafe and crashes when the user passes static data
and later unloads the same.
Instead we keep the cached gadgetPtr wrapper objects in the engine now.
Fixes: QTBUG-79553
Change-Id: I24ac3e84b572831d1d70b61b8a6001338579e284
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The issue could be seen when enabling exceptions and running the
following QML code:
Flickable {
id: flickable
anchors.fill: parent
contentWidth: 1000
contentHeight: 1000
Text {
text: flickable.visibleArea.xPosition
}
}
Change-Id: I615f9f9dc84903fb3a902f416a55e3ce3fece64c
Fixes: QTBUG-81098
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Users were asking for having the possibility to see where the translated
text will not fit in the reserved/available space.
This is more a preparation patch to get the right connectors to change the
visualization of findings or maybe log this to a file.
Task-number: QDS-1463
Change-Id: Ic0a7a930141d6eeb79964e51c0a165c69888cf5d
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Now that QQmlDelegateModel has an API that handles reusing
delegate items (*), we should also move the related signals
inside it to be consistent. This will also remove the need
to cast the model type in the views before connecting.
This patch will also remove warnings that stems from
QQuickListView trying to connect to the reuse signals
when the model is not a QQmlDelegateModel.
*: E.g: virtual ReleaseFlags release(QObject *object,
ReusableFlag reusableFlag = NotReusable) = 0;
Fixes: QTBUG-81257
Change-Id: Ia8a8f0d68e6ef7edc6c45b414121aaa77632bcd3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Inline components are an explicit component boundary, and therefore need
some extra treatment.
Change-Id: I03cc0d58f3565999f64675e8482ed3c3a325e8c0
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The sameValue(Zero) algorithm were implemented according to the
JavaScript specification; however QML has the concept of value types.
For those we need to check equality with the intrinsic isEqualTo method.
This aligns sameValue(Zero) with strict equality in its treatment of
value types.
This fixes Array.includes for value types
Fixes: QTBUG-81825
Change-Id: Idd3e09cbed94bca6ea44f5683610b87d184e432c
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add unused volatile pointers to the type registration functions in each
import plugin. We need to do this in order to prevent the linker from
optimizing the registration away. There are two ways for this to happen:
When linking statically, the linker will examine the referenced symbols
on a per-object base and leave out all unreferenced objects. When
linking dynamically, the linker may do the same on a per-library base
and drop any unreferenced libraries from the dependencies. Forcing a
reference to the type registration function prevents both.
The volatile technique allows us to remove the previous qCDebug() hack.
Having an unused volatile auto variable should only result in a single
memory read as runtime overhead. The qCDebug() technique would generate
a read and a block of mostly dead code (as no one would ever use that
logging category).
Fixes: QTBUG-81622
Change-Id: I255667276dfd355b19baa17b1aad3db406bf1954
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's no need to have the property cache fully resolved when checking
for required properties, and it introduces bugs as information for fully
resolving the type is missing at that point.
This would later cause errors in the QQmlPropertyValidator, due to the
propType being wrong.
Fixes: QTBUG-81806
Change-Id: I413cc3fab57f258f5e4cf4164c505312b10543e2
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It could potentially crash if e.g. we're handling a Leave event,
because QQuickWindowPrivate::clearHover() creates a QQuickPointerEvent
in which m_event is null.
Change-Id: I15d6db3c74fcd4979a36b3f1d0c935e6400032a6
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
It is now possible to mark a property of a parent class as required in
the child by writing required <propertyName>
Change-Id: I9e9d58c7b5c00577b056e905b39744b2fa359ea0
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A QML Annotation is a Qml Object declaration prepended with @.
The name of the annotation is restricted to a dot separated list of
non keyword identifiers.
Annotations can be put before an Object definition, or any object
member declaration: bindings, property declarations, function
declarations.
This patch, aside parsing the annotations does absolutely nothing, the
list of annotations is discarded and never touches the AST.
[ChangeLog][QML] Add Qml Annotations
Task-number: QTBUG-81714
Change-Id: I4d79559a0d1fb23acaf482d0ef8f7d106dbf099d
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also, QQuickItemPrivate::setHasCursorInChild() was unable to check
the QQuickItemPrivate::hasCursor variable, because the function
argument hasCursor was shadowing that, even though the comment
"nope! sorry, I have a cursor myself" hints that the intention
was to check that. So this change exposed a problem there, and
we have to fix that too, in order to keep the tst_qquickwindow::cursor()
test passing.
[ChangeLog][Event Handlers] Pointer Handlers now have a cursorShape
property to set the cursor when the handler is active and the mouse is
hovering, and restore to the previous cursor when the mouse leaves.
Fixes: QTBUG-68073
Change-Id: Ib5c66bd59c4691c4210ee5465e1c95e7bdcf5ae1
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds a ColorSpace type mapped to QColorSpace, and adds a property to
Image nodes to read and change it, converting the image if necessary
on read.
Fixes: QTBUG-80616
Change-Id: Ie80c8bc045f66de01de3a5d2c4a9974f07d2871d
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Behavior] Behavior now have a targetProperty property to
allow custom logic based on the target property's object or name.
Fixes: QTBUG-70964
Change-Id: I866c10d36c7de181fff48da94c8e16cd73ce49b1
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since we set sourceSize, we expect to use that coordinate system in
sourceClipRect too. Therefore we use QImageReader::setScaledClipRect(),
not setClipRect().
[ChangeLog][QtQuick][Image] Image now has a sourceClipRect property
to render a clipped image from a region of the sourceSize.
Change-Id: If08277df772c2ab1063dd88572e49de41b97bca4
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For vector image formats that could take a long time to render (such as
SVG and PDF), we need to be able to request smaller regions of the page.
The region needs to be specified in original units (i.e. points in a PDF
or pixels in an SVG).
Change-Id: I9c9eecb22d929f6e7b2636a2a44f50c8eea4c6b2
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Some linkers can determine that we don't use any symbols from the
QtQmlModels and QtQmlWorkerScript libraries in the respective plugins
and avoid to link the libraries into the plugins. That means, when
loading the plugins, the types are not registered. We avoid that by
adding a debug message that accesses a symbol of the library to each
plugin.
Change-Id: I3d946259df96382a3751eaafa12cbdd3d830c139
Fixes: QTBUG-81721
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][QtQml] Qt.formatDateTime, Qt.formatDate and Qt.formatTime
now support formatting according to a locale and an optional locale
format type. If locale dependent formatting is desired, this method
should be used instead of the locale-related DateFormat enum members.
Fixes: QTBUG-81631
Change-Id: I971231644ebbeaccbf54dd8f036adf4d31547301
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
|\ \ |
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp
Change-Id: I133bfd4bd9dd6f704252c956c90f05e8a8a40d6a
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-80699
Task-number: QTBUG-81679
Change-Id: I9c936a020ffa358dfa97d9b7044a90a27d3336dc
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I424a0f7fe04ea801ed155bc27a91eace7ebaa843
|
| | | |\
| | | | |
| | | | |
| | | | | |
Change-Id: Iefb900b42cc0476e62342724a5f3a480c09ce354
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When calling isSaveable() for a user based type then it should
return false because the client will not be able to read these
types. This prevents it from using the wrong streaming operator
for the user types then.
Change-Id: I7f3bff359dd0c3fa49dc4e83db0057b79c481ed9
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This file was forgotten when moving the documentation to qtxmlpatterns,
leaving the docs broken.
Task-number: QTBUG-77176
Change-Id: I832a4c3cb2551b8e683b6e6fb97034ba86a74322
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
If the call resulted in an exception the return value is undefined.
Task-number: QTBUG-81581
Change-Id: Ibfdd5e1229cf5437f270232d3b1a91308adeec72
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
If there was an exception we cannot assume the returned value holds
anything sensible. Also, we should immediately return.
Fixes: QTBUG-81581
Change-Id: I822c204c476e05d6de78124b66ab2f939ca38ffd
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This was already possible from C++, this change adds the required
changes to the grammar to allow declaring required default properties
in QML.
Change-Id: I76cb4d70e573bf161676da8295ab257fe95ed4ae
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Only QQmlDelegateModel has reused/pooled signals. So only
connect/disconnect to those signals when the assigned model
is of that type.
Fixes: QTBUG-81257
Change-Id: I52a39a98ac0f557ff57307572581dc6c7a05af92
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The PathText would always translate to y=0, regardless of what y
was set to. We should obviously get the y coordinate of the shape
*before* translating it into position to find the distance from
the baseline.
This change also updates the example, which had not been updated
to the changed origin of the PathText, and it adds a Lancelot test
for keeping track of the PathText shape rendering.
Change-Id: I940ac956af5229842739f8d8751a1f13bb86b8e7
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixes: QTBUG-81561
Change-Id: I97a0f5013b6e3662ffaad53c5cc871404e11a310
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Consistently store it in QQmlRefPointer so that it doesn't leak.
Change-Id: Id1f06228f6eb477b758901d61c1b71928671dc6a
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-79268
Change-Id: I70f60ddf6e97e0b082f4df77e26a33f9305a4f0c
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: Ie33ce3e0fb4a2a373d6eb2f0d3788105409e0389
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
[ChangeLog][QtQuick][Item] Item.mapToItem() and mapFromItem() now
work with QPointF and QRectF types as well as with raw numbers.
Change-Id: Ifeb5c36e1bc5a283df4e11c8cf2af960de3f287b
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
[ChangeLog][QtQuick][Item] Item.mapToGlobal() and mapFromGlobal() now
work with QPointF as well as with raw numeric coordinates.
Change-Id: I6a335c95a014bc77a927c781586619e62dce2f02
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
None of the other code handles it like a multi hash, so let's change the
calls from unite() to insert since we now have an option which won't
silently create a multi hash.
Change-Id: I520295bde81c4ad1b0665308fcaf5fe41c6c3039
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Views could use an array of QObject instances as a model, as an alterative to a
QAIM subclass; but DelegateChooser only supported querying the value based on the
model role name. Now a QObject property name can also be used as roleValue.
[ChangeLog][QtQuick][Item Views] DelegateChooser now supports using a property name
as roleValue when an array of QObject instances is used as the model for a view.
Fixes: QTBUG-81580
Change-Id: I3e5b57ce0456520667e342741efbe46417f0843c
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We could perhaps determine this by asking the QImageReader in
readImage(), but supportsOption(ScaledSize) might return true
for some other non-scalable formats.
Change-Id: Ia18e9245c408245933774520ab68655905251e4d
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
These two methods share a whole lot of duplicated logic, and already
show signs of divergence due to maintenance going to the one and
not the other.
This patch removes the duplication.
Change-Id: I6a83dd7f354a94547e44198ec679b323f2c5240e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
[ChangeLog][QtQml] It is now possible to declare new QML components in
a QML file via the component keyword. They can be used just as if they
were declared in another file, with the only difference that the type
name needs to be prefixed with the name of the containing type outside
of the file were the inline component has been declared.
Notably, inline components are not closures: In the following
example, the output would be 42
// MyItem.qml
Item {
property int i: 33
component IC: Item {
Component.onCompleted: console.log(i)
}
}
// user.qml
Item {
property int i: 42
MyItem.IC {}
}
Fixes: QTBUG-79382
Change-Id: I6a5ffc43f093a76323f435cfee9bab217781b8f5
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
[ChangeLog][QtQml] Added Qt.uiLanguage and QJSEngine::uiLanguage properties
These properties mirror the same value in QML and C++ and can be used
freely. They also provide API symmetry to Qt for MCUs.
QQmlApplicationEngine binds to this property and applies translations
accordingly by constructing a QLocale with the value and using
QTranslator::load(locale).
Change-Id: Id87d6ee64679b07ff3cb47844594e8eeebd8c8b6
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Christian Kamm <mail@ckamm.de>
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: I6064b5339936fce22c3fc42fc4a6af72312e5415
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
There are some flags which are only used when the type equals
FunctionType and respectively some which are only used when the type
does not equal FunctionType. By reusing those bits and changing there
semantics depending on type, we can grow BitsLeftInFlags by 50%.
Change-Id: I7099d6e87826a49aae5f283160c488004ac5b0e1
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\| | |
| | | |
| | | |
| | | | |
Change-Id: I88e94fe3398a59f10c5a8b142204db5f3ccb2657
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Uses wavefrontmesh only if the shadereffect feature is there. Path
doesn't need to depend on shadereffect feature only on gui module. The
shape also missed a sgtexture header.
Fixes: QTBUG-81296
Change-Id: I78425ef8a09226b99e9b9f6010dda9dac9009fe5
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Found by a valgrind warning of an unintialized jump.
Change-Id: I24279c97042e1971eaff35c3363fc1250e5c6c6e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|