| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: I59343fe228ca6b823b61577e5a0907e7381899c2
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The refill() method would bail out early on an empty model. Make sure
that it at least updates the header and footer in such situations.
Fixes: QTBUG-31677
Change-Id: I1f3a1848ff263a8f7f9ccfc3b20f16b61348f57b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The cause was that fast flicking kicked items in and out of viewport,
while in transition, they would abruptly having tracking data structure
, i.e. releasePendingTransition of QQuickItemViewPrivate, got iterator
invalidated. This also helps to resolve QTBUG-44308.
Fixes: QTBUG-76433
Fixes: QTBUG-44308
Change-Id: If14533d3f6b1acd7b6ca0c5c723347c0cb3f54dc
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Just like resolving the lookup initially, we need to set the base also
when hitting the cached lookup code path. The base is then used as this
object.
Fixes: QTBUG-76656
Change-Id: I6f6be05bc9875ddccc6e112e91176a0fa24a8fa1
Reviewed-by: Michael Brasser <michael.brasser@live.com>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
At the point the plugin is actually unloaded the hook turns into a
dangling pointer.
Fixes: QTBUG-71387
Change-Id: Ib8ccee3f9a86d4700fbea7e87c666cd8f30f71e4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-76603
Change-Id: I2977117dcaf45345c14599e0b38cb4a242ee449b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-76652
Change-Id: I46cd17a925f61585c65199f88342ea872a4a371a
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Missing \endcode commands caused malformed output and linking issues.
Change-Id: Idaf3cf998c2c0f4352a738b21b66abe5e89c197d
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|\ \ |
|
|/| |
| | |
| | |
| | | |
Change-Id: I55353d8cee5420e0c9f59c3b3a387b461f1abf99
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Scan for files on the main thread instead of using
a dedicated thread. Use a zero-timer to preserve the
async behavior where initiating a scan is fast.
This should work well for use cases like a handful
of files stored as resources.
Task-number: QTBUG-74537
Change-Id: I7bf1b6c7f9dfba69fe4fc2ea1b2dd2f256d66c2c
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I51689758616808c0fad5d3f5c79e12dd59c0bd85
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Disable isThisThread asserts: there is only going to
be one thread.
Add a no-thread implementation for internalCalMethodInMain(),
which calls the message immediately, similar to the
current internalCallMethodInThread() implementation.
Change-Id: I554cacf572b5f47c9921d247773cc3d9127b8203
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
|
|\ \ \ |
|
|/| | |
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
src/imports/sharedimage/qsharedimageloader.cpp
src/quick/items/qquickitemviewfxitem_p_p.h
Change-Id: I12ce7c32788f4a394188a934e689b4ebac78138b
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The root cause was that the QAbstractAnimationJob::finished() might delegate its
destruction to change.listener->animationFinished(this), and the original author
was aware of that and provided a RETURN_IF_DELETE macro to return early if itself
got deleted. In the bug's case, change.listener->animationFinished(this)
dispatched to QQuickItemViewPrivate::animationFinished() which called
QQuickItemViewPrivate::release() and deleted the QAbstractAnimationJob object
itself in the end.
However, any objects derived from QAbstractAnimationJob, or holding a pointer
to a QAbstractAnimationJob, may potentially fall into the code path calling
QAbstractAnimationJob::finished(). Any QAnimationJobChangeListener that directly
or indirectly deletes QAbstractAnimationJob should be very suspicious to this
kind of "heap-use-after-free" bug. Should ensure that the QAbstractAnimationJob
won't be referenced after deletion.
In the bug's case, within the code path triggered by ListView displacement
animation, the other affected classes by QAbstractAnimationJob are:
QQuickItemViewFxItem, QQuickItemViewTransitionableItem, QQuickTransitionManager.
To fix this, a new SelfDeletable class is factored out to simplify the self-deletion
test logic. Any affected classes are made to have a public member m_selfDeletable.
Any code paths that finally reach QAbstractAnimationJob::finished() are
wrapped with related util macro.
Change-Id: Idd33fc3f2d529fd7d8bb088c329101b1e70dd6c0
Task-number: QTBUG-44308
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`Q_INIT_RESOURCE` cannot be used from within a Qt namespace. so we
move the `Q_INIT_RESOURCE` call to static function defined on the global
namespace
Change-Id: I9eed7699e969369f861b95cdf3f7376ade73c1b3
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We need to repaint everything on devicePixelRatio change,
like we do on size change.
Task-number: QTBUG-66810
Change-Id: I6b2c2ae92335a0aca731a4b0e7621cf7d08881e3
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
| |\ \ |
|
| |/| |
| | | |
| | | |
| | | | |
Change-Id: I98c22efa5292fa34d8055928e6b2d85fec8023b3
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: I6980ffaed4da941fbcd56af36bba7e5abf3dd878
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: I0810ede89313a6ee3ee31a352fda620835dfb055
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If the size of the texture changes, but subrect stays the same, the
geometry changed and is now dirty.
Change-Id: I5a4de88fd3f788a686fb2186185da2a0a3faad82
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: Ia118e5885886605f7364d15d30ac67fdb01a5562
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|\ \ \ \ |
|
|/| | | |
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
src/qml/jsruntime/qv4memberdata.cpp
Change-Id: I4e9ffc89d65279a42516f5547e93fb47fb571834
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-73964
Change-Id: Ic789839de12e046cc1d8fced75ffa0c93960c165
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We don't use the accumulator in that method. It could contain any random
value.
Fixes: QTBUG-75642
Change-Id: I41f958c1174cce76d0d77e14d5617d441aaf1e11
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
QVariants are commonly passed around between threads and QVariants can
wrap QJSValues. Therefore we need to allow this. The persistent value is
freed immediately if we're still in the same thread. Otherwise a
message is passed to the QJSEngine that owns it. If there is no
QJSEngine we assume that we can free the value immediately. As such a
thing can only happen via private API we can make sure this assumption
holds.
Fixes: QTBUG-75939
Change-Id: I14c09fd5d6ef7ba689f66656f2bcbb5c88bacf89
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When iterating over the cache in QQmlDelegateModel::_q_itemsInserted(),
_q_itemsRemoved, _q_itemsMoved, _q_modelReset() and _q_itemsMoved,
updating some of the item's modelIndex can trigger layout change in
the view, which might in turn remove a QQmlDelegateModelItem from
the cache, causing us to dereference an already deleted pointer.
To prevent a crash, we always check whether the item is still valid in
the original cache and skip it if it has been removed in the meanwhile.
This fix is similar to 5df747fc but reduces runtime impact by performing
the lookup only when d->m_cache has detached from the loop's copy.
Fixes: QTBUG-76254
Change-Id: I9d7e0118e64e9ec7d8efae04e6ae319804f31981
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: Ia3f9bde43719859104759033283e697be72f7f53
Fixes: QTBUG-76286
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The assertion occurred when it initially tried to create an item from the
delegate because it needed to show the contents of the first item when the
combobox was collapsed.
So, in order to do that ComboBox would create an object from the delegate
by calling delegateModel->object(). Since the ShaderEffect was not ready
to be constructed yet (it didn't have a window, see
QQuickOpenGLShaderEffect::maybeUpdateShaders() ) it would call polish on
itself in order to try later. Shortly after, it called
delegateModel->release(). This didn't delete the object immediately (it
called deleteLater() on the object), but it removed the engine and context
it was associated with).
However, this left it in the list of QQuickWindowPrivate::itemsToPolish.
Due to this, QQuickWindow would call updatePolish on it shortly after (as
a response to an expose event in our case). But the ShaderEffect was still
not associated with an engine, so it would ultimately assert with no
engine.
The fix is to simply check if the ShaderEffect has an engine, and return
early if that happens.
Then when the dropdown opens, the ShaderEffect will get a polish() because
of QQuickItemPrivate::recursiveRefFromEffectItem(), and it will have both
an engine and a window and will properly initialize its shaders.
Fixes: QTBUG-67343
Change-Id: Ib8ceb92d0fafb9b958407a50db5daa7b45e1d82a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\ \ \ \ |
|
|/| | | |
| |/ / /
| | | |
| | | | |
Change-Id: I59cb196ab17ed8504b33db01d827052eb6891efa
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixes: QTBUG-75957
Change-Id: I2c9c70461a828978d1413b8cbdb407663b4b7493
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The zoom factors passed to the preview service are interpreted as
absolute values, not as relative to the base zoom factor. The test would
fail if the base zoom factor was != 1.
Change-Id: If66d8c79dea91e4013e1ab7f790fa308ac87c934
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The wording of the warnings were changed in qtbase.
Fixes: QTBUG-76152
Change-Id: Iae0dfbcbb699b8abff92b5923b0a5627591043c8
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When qml file is in resources, translations under i18n was not loaded
Task-number: QTBUG-76085
Change-Id: I75315ceb6a1e6ab10309634a3c445a82476d525c
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: I37d313e3156a44eb4487b1be007aa93ace18d882
Fixes: QTBUG-76018
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Ensure we stop FXViewItems from tracking so we don't have pointers
to dead QQuickListViewPrivate object on QQuickItem destruction.
Fixes: QTBUG-71581
Change-Id: I80291086697b1455d9319969fe5cba0ea4d04a73
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
forceLayout is user invokable. If it's called before columns are loaded
our call to firstColumn call QMap::firstKey will assert/crash.
Insertion of columns later will trigger a layout.
Change-Id: Id102e3ab4756ddd3f433037783dc70e1b29101c8
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|\ \ \ \ |
|
|/| | | |
| |/ / /
| | | |
| | | | |
Change-Id: Icf36857844b6643d9fbe3c841b1d9b78943435d4
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Qt::ImAbsolutePosition is documented to return cursor position, not
anchor position. That's also what QQuickTextInput and QWidgetTextControl
return.
Change-Id: I91f9343f5f33c9d43875dbad515bfda77c13058d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-73199
Change-Id: I83f0754577b382b26f484bfdc4f6b3a2a921b5f1
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-76074
Change-Id: I7f5ca6af0955524f9a417811c2e9f960c2b3efb3
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-56264
Change-Id: Ifdede70d95f5846e160772c43d22bc2a4123959b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The triggerUpdate call was incorrectly removed by merge 42f485231c
Fixes: QTBUG-68566
Change-Id: Ibf37d88315d3ef9879e6cb9728a1c4ef4655c72b
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Before:
MenuItem.qml:98: TypeError: Type error
After:
MenuItem.qml:101: TypeError: Cannot read property 'height' of null
The wording matches the similar error messages in qv4runtime.cpp.
Change-Id: I3d9b3506195fe8e17e78117f2f51aba2adbc0564
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Laurent Montel <laurent.montel@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Undo change to signature of textureProviderDestroyed, and
reinstate test for disconnected item having a window, and
instead ensure we are destroyed earlier while the item is
still valid.
Fixes: QTBUG-76055
Change-Id: I0c6c13cd44d3364984e0245b3b048f4aa183b43a
Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|