| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[ChangeLog][Qml] Empty resource files will not be passed to Qt
Quick Compiler to be handled when using CMake.
Change-Id: I1513d29b70d8a4b08a2947f4a97fbd525c5ace8f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We already emitted grabCanceled() to inform QML callbacks, but we didn't
call reset(). It seems more proper to do everything that would normally
be done when grab is canceled. TapHandler should not give up its passive
grab yet though, because that prevents delivery to any parent Flickable
that might be filtering events. A parent Flickable should be able to
start flicking after the drag threshold is exceeded (it happens to be
exactly when TapHandler gives up).
Fixes: QTBUG-71466
Fixes: QTBUG-71970
Change-Id: Ibba1b0de92cfd88547eeb44edb095d019de76a94
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If multiple touchpoints are pressed simultaneously, each point can
be grabbed by one PointHandler instance. Each PointHandler instance
cannot grab more than one point, nor grab a point that is already
chosen by another PointHandler. This was always the intention, but
got broken (perhaps by 3523b676382db4aa39adeb9126d8bb2185e84403),
and there was no test coverage of this case until now.
Fixes: QTBUG-71431
Change-Id: I6d7614eb4767c677d929291f917cf62d9c03bd93
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-72407
Change-Id: I98b96852309fc783a945797185f666196513d24b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This demonstrates that DelegateChooser and DelegateChoice are working
with TableView.
In this use case, DelegateChooser uses a role from the model to
decide which delegate type to instantiate. So we need the model to
provide a type role that it can switch on. Conveniently, by using the
Q_ENUM registration of the Type enum, it automatically becomes
possible to match against the stringified versions of those enum
values in the DelegateChoice.roleValue property.
To demonstrate a set of roles which would work for almost any kind of
numeric data, we choose to have a Value role for the current value,
corresponding to the width of the bar or the numerator of the ratio;
and ValueMax for the maximum possible value, corresponding to the
total width of the bar graph, or the denominator of the ratio.
ValueDisplay and ValueMaxDisplay are roles which provide
string-formatted versions of those for labeling purposes. Maybe in
the future we could consider adding those (plus ValueMin and
ValueMinDisplay) to the ItemDataRole enum; because almost any kind of
data model could need to provide numeric data, but for some reason we
have only made it easy to provide strings (DisplayRole) and booleans
(CheckStateRole). Likewise some sort of type role could be
standardized at the same time.
Free / used space is graphically shown as a bar graph. QStorageInfo
provides bytesFree() but not bytesUsed(), but it's more conventional
to show a bar which grows wider as more space is used, so we reverse
it visually by showing a red background with the bytesFree bar
anchored to the right. Thus the width of the red part showing through
is proportional to bytes used.
The three flags isReady, isReadOnly and isValid are shown with
simulated checkboxes.
This manual test is now on its way to becoming an example of how to
use row, column and role effectively together. It's not enough to say
that TableView is only for spreadsheet-like views, displaying only
text in each cell. To display more than text, we can do the same
thing that we have done in the past with models designed for display
with ListView: use the role, so that data(index, role) gets called
multiple times for each cell, to get the values that each delegate
type needs to use to render itself.
Change-Id: I1060eacc2b7d25f420411828258e7d94ee0bdd0b
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also, make it more obvious that the attachedPropertyIds are a static
member of QQmlTypePrivate.
Fixes: QTBUG-72972
Change-Id: If0a28e034dd46d7127993ed15aed11c7641d580e
Reviewed-by: Harald Hvaal <harald.hvaal@gmail.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add QQUICK_VERIFY_POLISH.
Fixes: QTBUG-73007
Change-Id: I08d90058770ef496469b917892104c751b5cf9c1
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Follows same approach as 47f6d256ed in tst_qquickapplication::state().
Change-Id: Ibecdab3f874fc9e75b38ba2ccaf3776bd46c77e8
Fixes: QTBUG-72953
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| | |
Pure QML types do not have a meta object hierarchy associated with them.
The test is only supposed to test C++ types, though. We can ignore the
types without meta objects.
Change-Id: I2a40bc0023f6d335c4dbdbc04818da60f47d8787
Fixes: QTBUG-72637
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We can actually not capture d at all there, as some of the items get
deleted before the root object is deleted. Therefore, we need to iterate
the children again on receiving the destroyed() signal.
Change-Id: Iab7ebc3c731438a21b243284de7515530232828f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A string representation of those is unlikely to be actual JSON, and even
if it is, we don't want to use it as such.
Fixes: QTBUG-72674
Change-Id: I6815366a0176d9725ff4840d3fc545792ce00535
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When (naively) running the tests with High-DPI scaling active, the
test would assert on mismatching image sizes caused by the scaling.
Add an error message parameter to
QQuickVisualTestUtil::compareImages() for use with QVERIFY2, return
false instead of asserting on format/size mismatches and adapt the
usages. Remove duplicate code in tst_qquickwindow.
Change-Id: I76564f4125798fa1e065a0202b686bc7f5ec5680
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In tst_qquickwidget::enterLeave(), retain the changes from
9d2a929fa4dd0beae3c30fb08d4ed4df7368ea4f rather than the cherry-pick.
Don't hard-code 5000ms timeout on qWaitForWindowExposed(): it's the
default anyway.
Task-number: QTBUG-64397
Change-Id: I67e4566c2c7f9e361a79e3a091436c3391f39786
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry-picked from commit 239b8f6ee869dbe1f27ec4fa5d5247eff502c47b)
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Recent Coin statistics seem to tell us that it's been passing.
Change-Id: I0d32531266d1642a3fe2b18c0956a3ac589f5ee2
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
See if this is stable yet. Recent coin statistics seems to say it's
been passing.
Task-number: QTBUG-40856
Change-Id: I49372cc514971acf26ac9b9b9a86ea2eb46a9773
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I33f5f72bf90ba1ba6aef5668fab660421c722ae6
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When we add a context object we need to include it into the list of
contextObjects of its outer context, so that the outerContext member can
be reset when the outer context disappears. On the flip side, we also
need to remove it from this list when the object gets removed. We don't
need to reset the inner context of an object when the outer context
disappears, though.
Fixes: QTBUG-72241
Change-Id: Ifd34650d852642a364df23b697d32e3961d0479b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Added <s></s> and <del></del> tag aka strike out to QQuickStyledText.
QQuickStyledText covers the essential text decorations, apart from
strike out. In order to use it, one had to switch to RichText,
which comes with its own overhead and limitations.
<s> for no longer accurate or no longer relevant content
<del> for removed content
Fixes: QTBUG-72376
Change-Id: I3c191d91d57afcc48090facc49d643f8ad708fb4
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
During a 2-finger press (to emulate right click on a trackpad), the
OS may also generate a QWheelEvent with ScrollBegin phase just in case
scrolling starts. This must not prematurely deactivate the TapHandler.
Also if a gesture or wheel event begins as the very first event after
an application starts, ensure that subsequent mouse events are not
mis-delivered as wheel or gesture events.
Fixes: QTBUG-71955
Change-Id: Ic12e116483ab9ad37c4ac3b1d10ccb62e1349e0a
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|\ \
| |/
|/|
| | |
refs/staging/5.12
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/qml/jsruntime/qv4script.cpp
src/qml/parser/qqmljslexer.cpp
Change-Id: I82252a8c504a4b77c45f4f8efe849ff9acb949fd
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes: QTBUG-71812
Change-Id: I93b99496a7572c0f5128c69b865bb2b4f87d29af
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QQuickItemPrivate::data_append() was already getting called, but the
assert (that the parent was already an Item) was failing in case a
handler was declared inside a Window or a Dialog.
Fixes: QTBUG-71317
Change-Id: Ia497182e3b4a9722eee97a375f9ee5d4151108e6
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If any kind of Pointer Handler is created dynamically in JS by
calling Component.createObject(), QObject::setParent() is called
rather than passing the parent to the constructor, so
QQuickItemPrivate::data_append() did not take care of adding the
handler to QQuickItemPrivate's extra->pointerHandlers vector.
We need to use the auto-parent mechanism (just as we did with
handling dynamic creation of nested Windows in
8cb02e23abbefc9d020707fc1a2d8b6eb4e103b6). Added
QQuickItemPrivate::addPointerHandler() to put the prepend()
and implied setAcceptedMouseButtons() in one place.
Fixes: QTBUG-71427
Change-Id: I3be3dd033c1c89e6e5b5c3463e1a720bbe963281
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Take the available screen geometry and window borders into account
when positioning windows and moving cursors.
Task-number: QTBUG-64397
Fixes: QTBUG-72305
Change-Id: Ia2b35a0deb144ab7194f7658d599888ff9d4a706
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
GCC 4.8 doesn't like using QPointers in signal connections.
Change-Id: Ide55318374183e52eaf09176a118f7d22b7cfd6e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A QObject can not only be set as contextObject of the own context, but
also as contextObject of the outerContext of a respective QQmlData. This
can be seen in QQmlObjectCreator::createInstance(...) if isContextObject
is true.
Therefore, when catching a QObject deletion we need to clear the pointer
in the outerContext if that refers to the object being deleted.
Fixes: QTBUG-71037
Change-Id: Ib6ba99bd5336f7582486b2128515021245370c60
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure to parse them as JavaScript, not as QML, so that certain
keywords such as char or double map to identifiers as expected.
Also removed an unused function.
Fixes: QTBUG-71524
Change-Id: Ie8a8dabe717ee12def6af512943e6d01efcf9876
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is to prevent extremely deeply nested expressions and statements
make the code-generator run out of (native) stack space.
Task-number: QTBUG-71087
Change-Id: I8e1a20a361bff3e49101e535754546475a63ca18
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changed major and minor version of created QQmlType. Using major and
minor version of a candidate instead of major and minor versions passed
to a function.
Task-number: QTBUG-67292
Change-Id: I2c30f5e8f49aa0be3a1d5b404ab16eb376ad8092
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Such WeakValues are kept alive until the respective QObject is deleted.
Therefore they are quite expensive. In this case we don't actually need
a copy as on retrieval we only want a ReturnValue and on inserting we
just want to replace the value in the map.
Fixes: QTBUG-71817
Change-Id: I385c55140337d468289046243941077ba1ff61a3
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Respect the newTarget passed into those constructors and make
sure we set up the proto chain correctly.
Change-Id: I3d12c7dbef4b33660a6715d73e9fb0f89105167a
Fixes: QTBUG-71138
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If we change the content height or content width to the initial one, we
still need to signal the change.
Fixes: QTBUG-71684
Change-Id: Idf6e3f89423eab3d8f5310c164c5acc5108e0d8b
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When recursingly loading further types for composite singletons before
sorting them, the order in which the recursively referenced types are
loaded is random because the composite singletons are kept in an
(unordered) hash. Any sorting after loading the child components doesn't
help as the recursive references may depend on the types already loaded
at that point.
Sorting the composite singletons before starting the recursion does help
because it eliminates the source of randomness in the system.
Fixes: QTBUG-66976
Change-Id: I0fa1f50b36eba8c73eb8d56b4d5118485ab05f35
Reviewed-by: Michael Brasser <michael.brasser@live.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: If9468b93b08ad355f07d1436ca88e8d36be22070
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The destructor for the Jump object will check if it is linked somewhere.
So when doing an early-exit after generating a jump (and before linking
it) and after an error occurred, make sure to call link anyway. At this
point no code will be generated, so where the jump points to is kinda
pointless.
Change-Id: I09fa03d4224805a838088acd0c5c83d02b328045
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Using the metatype system we can identify most enumeration types
statically, without lookup by name. Only if we get UnknownType we have
to do a name based lookup. As the name based lookup only checks enums
that either belong to the global Qt namespace or the surrounding class,
the type based lookup gives better results.
Task-number: QTBUG-58454
Change-Id: Id6bd748f37838249defb4c5b2a7628eadc1a8341
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Switch the geometry to using quint32 indexes if there are too many
tiles.
Change-Id: Idf51210299d14737d0d115104060d32f5754dff7
Task-number: QTBUG-58924
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If we can't resolve the variable and are executing eval code,
we need to look it up by name, and not generate a lookup in the
global object.
Change-Id: I693b3b714651911f72620160bfc463d6dbb00820
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I7623438dde316ae1e97802f91991f2e7ccc205a5
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We won't use the bytecode anyway, and it prevents consistency checks
that come after the error from failing. Specifically: there might be
jumps that have no label defined.
Fixes: QTBUG-71738
Change-Id: I62a7e943b0156d42caccfa40507853de79e3b1ce
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It turns out that the context information is lost when using the
compiler. The unit->unitData()->sourceFileIndex is wrong (always 0),
which should probably be fixed. This change only works around that by
using unit->fileName(); instead.
Make sure that the test actually verifies translations happen and have a
context.
Done-with: Jan Arve Sæther
Fixes: QTBUG-71553
Change-Id: Ib5926bd4b9a6267644f5c9328a84c23d61ca5466
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Latest changes moved to xmlpatterns:
e08f9393acc6417598f328d7f4b7b082c5d57afa
Change-Id: I7e3054a3f0f11833053746294e3b2b958047394d
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch allows QML to access let/const variables defined in JS files.
Detailed changes:
- The recently added ContextType::ScriptImportedByQML is changed to avoid
creating Push/PopScriptContext instructions, similar to
ContextType::ESModule.
- QV4::Module is changed to also work with CompilationUnits which are not
ESModules. In this case QV4::Module will behave as if all lexically scoped
variables were exported.
- CompilationUnit is changed to support instantiating and evaluating
QV4::Modules for non-ESModules as well.
- QQmlTypeLoader is changed to always create QV4::Modules for evaluating
scripts. For the non-ESModule case, the QV4::Module is evaluated inside a
QV4::QmlContext, as before.
- A pointer to the QV4::Module is added to QV4::QQmlContextWrapper, and used
in virtualGet to access the let/const variables in the CallContext. Access
is read-only.
Fixes: QTBUG-69408
Change-Id: I6f299363fdf5e1c5a4a0f1d9e655b4dc5112dd00
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When allocating a huge item that requires it's own memory
segment, we were actually not committing enough memory from
the OS.
Fixes: QTBUG-71501
Change-Id: Ic86a648bba4d7f1eeeded78d8de0f0fc1d3a251d
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The QML profiler trace client should resolve any deviations from
chronological order. Trace receivers should not need to deal with this.
Change-Id: I9bbb387bbb5c0b7da9f2b508d228665af9f27d4c
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
| |
| |
| |
| |
| |
| |
| | |
The event counting for failure diagnostics had an off-by-one error.
Change-Id: I7f652680a4d154a0624dbfd51af0b026f89cc7ad
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Implemented logic for filtering tests with 'case::function:tag' run syntax.
Fixes: QTBUG-71645
Change-Id: I9243636b098b4e9ccb4c74d08679bbbb9f3e8a65
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-60518
Change-Id: If41b3c7b3ca4ca9a48692cbb2753b47492693e83
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We should not send memory events that are chronologically after the next
call event, even if the time threshold given by the profiler service
would allow us to do so. When the remaining call events are sent, the
chronological order would otherwise be violated.
Fixes: QTBUG-71515
Change-Id: Iee27304f836a899b2b35133316cecd3d34f128c6
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|