| Commit message (Collapse) | Author | Age | Files | Lines |
| |\
| |
| |
| | |
Qt 6.5.7-lts-lgpl release
|
| | |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Qt 6.5.7-lts release
Conflicts solved:
dependencies.yaml
Change-Id: I8fbe9c1606825b726adf95e69a4fa86e2196f4e8
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This broke after 477c15def834bd49553c00b90f3a2006456ea931.
countChanged would have normally been emitted in the call to
applyModelChanges that we skipped after adding the q->size().isNull()
check.
We can check hasPendingChanges() to know if a count change
is pending (which is also the first thing applyModelChanges checks
before doing its work), and if so, emit countChanged so that
any bindings that are relying on it can function as expected.
Fixes: QTBUG-129165
Change-Id: Ic045f1870b39d192f6880e23daab03fd73a16d58
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 0a1d8fb26d1e89c82a0d35dd728d7e928a94d197)
Reviewed-by: Tarja Sundqvist <tarja.sundqvist@qt.io>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-128420
Change-Id: Ia57bd6d978fbdb6aa03fa693222bc2bbd997ad94
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 3923ecb326e3232f05947c594d6ddb98909afc72)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit ff72c8b677c050162c002eb1879b9d8162898326)
(cherry picked from commit 8e5eb9b6edfb5e404f57dbb0a41bb958b4103a8a)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The function was added in 906d5c5c40183468f9521277c6244a6c46730de6. The
tests there don't only use red, so it looks like this bug has existed
since 2013.
Change-Id: I4bdf87fe6be0224016baf9a2a80faee6fe61514e
Reviewed-by: JiDe Zhang <zhangjide@uniontech.com>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 74c019e799fab74b85cd444c1e104638b7dd6c96)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 1eaef559a616ff9b2acb86f82c154e57b9f75168)
(cherry picked from commit c258f31173a020e9736132f7deb15eb2d5725f0e)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In qquickpixmapcache.cpp the ifdef's need moving to support non-network
async image fetching.
Fixes: QTBUG-126628
Change-Id: Ia8ab97684a815176cfd80ac16015403d91f84bcf
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit d5a87231bad550bc54d982e388bf62198769a1d2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 4127e2899fc2a90e59da5418dbb19dd27834970c)
(cherry picked from commit c3d8682585cfc6b7677fe0c5fa296c129cbfdda3)
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's not a component, it's an object instance.
Also amend the documentation to be clearer that it is to be used with
objects created from QQmlComponents.
Change-Id: I164d894bcd61b9c39bde902cfcf5ada17a2478c4
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit dc92f5ddee1330901c7f0a8768563306a9a84cf1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 47aab5890a93e2c141e234c09aef9c1e3966824e)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit cd5dcb26cfccaece4be8ba4b00d8f356bcf734fb)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a menu is opened, its menu items aren't triggered by pressing their
mnemonic key using the Alt key. Also, aren't triggered even when their
mnemonic key is pressed without the Alt key. This behavior is different
from the widgets menu behavior. When the widgets menu is opened its
actions can be activated by pressing their mnemonic key without holding
the Alt key.
When a key is pressed on QQuickMenu and no modifier is held, it loops
over its items to find the item whose mnemonic key matches the key. If
the item is found, the click() method will be called.
The test case opens the menu and sends the press and release events with
the mnemonic key of each menu item, and checks that they are triggered.
When the item is checkable, the test verifies that the checkedChanged()
signal is also emitted.
Conflict at 6.7 resolved by simulating the click functionality as it is
introduced in 6.8.
Task-number: QTBUG-96630
Change-Id: I99f27c6306e14375b45d0630e4f9047e33fa64fb
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 520c8ab1492259c354dd6541a7cd2de1afbd3368)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 6f4370b5183bb7acb97be4dc3479c0c7bdc0764f)
(cherry picked from commit e1ad73a0beea17ea71e216cb58a4ead997fb6f95)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add a new section into documentation page "Qt Quick Tools and
Utilities".
Add a new item into external resource to point to an official
Felgo page about Felgo QML Hot Reload tool.
Pick-to: 6.2 5.15
Change-Id: I2fa2a6c03138033f75319fc278cb435b5978b85b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 96dbecc64f59589ed82040d36f7c85ea7a133434)
(cherry picked from commit 409df2c9f244204c00313a115305d1515a3ce4a8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The Color singleton object used in MessageDialog throws an undefined
warning. Import the required module to resolve this issue.
Change-Id: I929d9839274b7393e36c6d0ffe159037a92e2423
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
(cherry picked from commit 7ddac741d3718771f81991829579981323b4c189)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 1830b880bebde8cb2c64d39937ea423236d735ea)
(cherry picked from commit f9e5087152ebfa9fb0501899eba44b4c9411bfa0)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's better to have the assert condition w.r.t to the context object
within the model where we access the respective data. This patch
removes the existing assert in the QQmlTableInstanceModel::object() and
uses a similar validation inside the
QQmlTableInstanceModel::incubateModelItem() before accessing the
context-specific data.
Fixes: QTBUG-126981
Pick-to: 6.2 5.15
Change-Id: I799476434afc4c22c8b39544bc994232d6bf8ef2
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 2cfffb708808ba49148ba4f30c7c8841e5dfb2d9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit bb49bef6d9b89223512cada878872a684f2c6c4c)
(cherry picked from commit db0023bf6924472876e500537fe77dc785775acb)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Before this patch, a binding loop warning would look like this:
[...]/tst_dialogbuttonbox.qml:574:9: QML DialogButtonBox: Binding loop detected for property "implicitWidth"
Print the expressionIdentifier so that it looks like this:
[...]/tst_dialogbuttonbox.qml:574:9: QML DialogButtonBox: Binding loop detected for property "implicitWidth":
qrc:/qt-project.org/imports/QtQuick/Controls/Basic/DialogButtonBox.qml:10:5
This is one step closer to making it easier to quickly debug binding
loop warnings, but we still need to print the stack trace.
Task-number: QTBUG-36525
Change-Id: Ic337398e8b1060abcc43aa2b45557acc2057e49b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 49a290b2b58672366e29abd6813ac0a643554228)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit e5da5dfa2c53604ae201b8296dabe2b43c2c1ce6)
(cherry picked from commit 6391acd0f71e4d7eb426c6e5849bf23fc5de1154)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
According to f8cf17166c9af147f0b8fea72f5b4a8a6098a5d7
When QT_SCALE_FACTOR is greater than 1, the Popup menu pops up
incorrectly on the second screen.
Replace the toNativePixels with toNativeLocalPosition.
Fixes: QTBUG-127906
Change-Id: Id320063afccfd3a391426bc6419cbe8855c57b98
Reviewed-by: Inho Lee <inho.lee@qt.io>
(cherry picked from commit 7574111a56d38832fd330df5ba4839d0263fbc09)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit b0f91c7f4c3502e1e4a0aaec6cc5b06496a639fe)
(cherry picked from commit 3cd5450ea1f2d6f1ffac585c1dfc19747c22944e)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bacuse of a copy-paste error in QQuickTableView, TableView
would calulcate the wrong viewport rect for vertically
synced views if the views were not also synced horizontally.
The result of this mistake was that the rows in the two views
would end up with with different heights (and y pos) while
flicking.
This bug has been there for a very long time, but was hidden
becuse of anther bug that was recently fixed (25348bc0e6).
After that fix, this new bug became evident.
This patch will make sure that the offending if-test checks
the correct sync direction, and thereby also calculate the
correctly combined viewport rect.
Fixes: QTBUG-128508
Pick-to: 6.2
Change-Id: Idf4d93830933c9a28786adaba14e068015564fcc
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit 379108f118865f8afc55e46d9a1c217fd30c1c11)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit d8bab4785bf69ccfd0b18987bdfb67a7e9d4a147)
(cherry picked from commit 5688d45261a1d6fc7e1887fe29885a8dc2c4938b)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes: QTBUG-127727
Change-Id: Idf551145fea20442360fbbfba5196b020364f542
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit 6f1826c5bd26c7f4de59f68b43e77d213b4b22a8)
Reviewed-by: JiDe Zhang <zhangjide@uniontech.com>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 5fb78c67dd2f6699da5cea64a1455e41f9e64292)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 1b3e12e3009da6492fed77f7d1571c84807e6d52)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
be used
The detailed documentation for HeaderView says that
if you assign a QAIM to the model property, the models
headerData() will be used. But in the documentation for the
model property itself, it says that data() will be used
(except when using a QAbstractTableModel).
Both cannot be true.
The actual behavior is that we use data() when the model is
assigned explicit to the model property, and headerData()
when the syncView's model is used. It's debatable whether
or not we should have always used headerData(), but changing
that now could cause regressions. Such a change would
also stop e.g QML ListModel from being used as a model,
which is also an argument for keeping it as-is.
This patch will therefore fix up the documention to be
consistent, and to inform that data() will be used.
Fixes: QTBUG-123595
Pick-to: 6.2
Change-Id: Id64977a3db5f00b4269f0e5ffb6a31e5ad607725
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit f4bc018fa9e57bdd72556473040622acac508ea7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 4e4e8328c6ab7f80d868d57f98fbd08f54cbd97d)
(cherry picked from commit 1b42a3405944dc5890fa70eac7b72e6430f3f8c7)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Copy the behavior from QQuickRhiItem, which handles this correctly.
The older QQuickWidget seems to lack that logic for some reason.
Also add a qWarning to make it clear what is happening, because
clamping the texture size may cause unexpected results in the
visual output.
Fixes: QTBUG-123636
Change-Id: I08d4ac23f709c85dc975c030fd198127d7eb4d23
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
(cherry picked from commit 431da3b90556e0ffceaff4aea878c480818cdd69)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit c07953df95adb0d99098b88857c150be1c191d96)
(cherry picked from commit f1a9c01e682c4f11f9e336cdcf040993a379e860)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
So far we could assign QObjects of any type into any QmlListWrapper of
another type. This is UB, since you may be holding the underlying
QQmlListProperty in C++, and it's also not very consistent.
Assign null instead if the type doesn't match and emit a warning.
Likewise, also warn when initializing a list with mismatched elements.
[ChangeLog][QtQml][Important Behavior Changes] Assignments to list
properties in QML are now type-checked. Before you could, for example,
insert a plain QObject into list<Item>, producing undefined behavior.
Now it instead inserts null and warns. In particular, if you assign a
JavaScript array of random objects to a list property, QML will check
each individual element, and insert null as well as warn when
encountering type incompatibilities.
Fixes: QTBUG-127343
Change-Id: I9b78afcd3ed40c80175a99861373588f56683954
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit aeabdb93885e51d5c7dbecbb69af1750370a65fa)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit c9c1a08409e71e8ee93d3ff3b16678ee24135acf)
(cherry picked from commit 2b3a164cb09c290c394e6dd83d1d9e14c2bae334)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As it stood, the qdoc marker in the example code left the
final curly brace out of the snippet. A copy paste of this
example would therefore not compile.
This patch will make sure the brace is a part of the snippet
shown in the docs.
Task-number: QTBUG-123595
Pick-to: 6.2
Change-Id: I68bfac0cfc3dcecd487bfb69de07c317f787552e
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit 3968ef8650da91c8e66d1651f7891793ac3b5d74)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 9ecc9131ed9be2ad421e3ced0b589c00205de2d5)
(cherry picked from commit 303bd79ec66a5752405c32afe0d703f119983e67)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We now use the same approach as in QQuickTextControlPrivate:
on press, set hadSelectionOnMousePress according to whether text
is already selected or not; on release, if hadSelectionOnMousePress
is true, we should move the cursor (and thus deselect text).
Some history:
Commit 650342de792e0ab37ce8bac8ccde21ab9b96b2c9 disabled direct text
selection on touchscreens, because mobile platforms provide text
selection handles, and otherwise the user's finger is usually too
large relative to the font size to select text precisely, as one does
with a mouse. The test added there is now amended: if text was already
selected on press, we do expect tapping to move the cursor and deselect
the text.
Commit ac3f1eace1102543008a0ceded541e40ff495368 allowed importing an
old Qt Quick version to allow tapping to deselect.
Commit d6ddfa3d4ca3fbbaddc2acd7ebe3f8296fc68b68 fixed another bug:
text would lose selection when releasing afer a long press. But text
could not be deselected by touch. One way was to tap on something else
to make the text field lose focus.
Fixes: QTBUG-127440
Task-number: QTBUG-10684
Task-number: QTBUG-38934
Task-number: QTBUG-101205
Task-number: QTBUG-111504
Task-number: QTBUG-116606
Change-Id: I5001216fc30266fcce3af413ecfa091bfd99beed
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit e434796c6766b48fd725866bd2998fe963bbbe14)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit e87e786111dfc8f5d880f34f0bdf32188852cb6f)
(cherry picked from commit 639003b317b3628645db73c24aee75536bf95707)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When using the software context for Qt Quick scene graph rendering, it
was possible that Items using "layer.enabled: = true" would not be up to
date if these sub-passes were updated while the tree using them was not
visible (Due to update()/updatePaintNode() not being called). If the
cachedMirrorPixmap doesn't get updated, then the previous image will be
used when the item is painted, which is incorrect, and the update()
method will not be called again until the next time the item is dirty.
This change makes it where if the cache is still dirty when we start
painting, we update it then, because spending a bit more time renderer
is still better than rendering the wrong thing.
Fixes: QTBUG-114984
Pick-to: 5.15
Change-Id: I70f9f6d1dfd46d6870a2bee2ae72294e8982b776
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit 29a52df82397fd8a00308f7e34b08059d6affc91)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 57cdb43db40569faefef9e42d3ad42f3fc2bc4cd)
(cherry picked from commit c996d0fa2364d1a83cdf39927254fe787e2ad14e)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make sure the also delete the ClipInfo and RenderNodeElement
in the shadow node.
Fixes: QTBUG-128283
Pick-to: 6.2 5.15
Change-Id: Ida00e4eefa0e0dd0ab518a141138561254303e41
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
(cherry picked from commit e94f211c970ff8a342e01400d855216f46372905)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 8f389f2ce6060f36046980722937cb74c2a3c7d3)
(cherry picked from commit 9ebdb8b77cb467cea56f983773124e08bb4db059)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The creation of highlight item in the item views can go recursive
leading to invalid reference in the item thats been used to keep
track of the highlighted item.
The highlighted item has been reset with the newly created
highlighted item due to the geometry change in the item views,
which happened while creating the highlighted item itself. This is
like creation in a recursive loop. Since the highlighted item
referred by the tracked item, has been reset (in the second call to
the createHighlight()), the existing reference in the tracked item
automatically becomes invalid.
This patch adds validation to avoid recreating the highlighted item
in the item views if the creation request is already in progress.
Fixes: QTBUG-127455
Change-Id: Ib4908d84e24c773e2b43a12c00ba23259896e171
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit 81c95fb650a15261b9ba08e1dfe99f5f03fc3ad2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 6c11f156d6f57de0916051cf18734ee9492ecb96)
(cherry picked from commit 2bf8027effcf52a7dc6aa117371bef2c38ce4ce3)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When Item LayoutMirroring changes and mirrorChange() gets called,
update the document properly.
Task-number: QTBUG-124922
Change-Id: I2b8a0e05ae3f0479eed68c0a7f84b23ba8d56e76
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
(cherry picked from commit bc722385fbfba625b9fba6fac035a2982820eab9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 07a7b349e20b813cafb3b55697027f8e9de6a753)
(cherry picked from commit 629bb4f89405362de20c09891a29c13496141f5c)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If we need to change the extents of the Flickable (that is, which
point should be considered the top-left and bottom-right corner of
the contentItem inside the viewport), it can sometimes happen that
that Flickable is left suspended in an overshooting state (that
is, it looks as if the user dragged the contentItem out-of-bounds,
which will normally make it bounce back upon a release). And this
comes across as a bug.
This patch will therefore call returnToBounds() explicitly whenever
we change the extents (unless the contentItem is being dragged, as
we don't want to interrupt that).
As it stood, we would also call markExtentsDirty() far too often from
updateExtents(), even when the extents didn't change. Depending on
what Flickable does to handle dirty extents, this causes uneccessary
overhead and might slow down performance. It also produces a lot of
superfluous logging output in TableView.
This patch will therefore also check if the extents change before
calling markExtentsDirty() (and as such, avoid calling
returnToBounds() all the time).
Task-number: QTBUG-127809
Pick-to: 6.2
Change-Id: Id801f3e62b3dcde1b59d49e4efc9d6631d5672bb
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit 523c53d33d0d40cf1b71991903a2192c05a926de)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 68a468980fe9831ad81fb382cf9d17a03236d4bb)
(cherry picked from commit b45356c73299281b16831567dadcb61e7de064f4)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There was already a hook in text components to update
when the renderType was set to Text.NativeRendering. This
is necessary because the text is rendered into a glyph
cache at a given size and scaling it further will give
pixelation artifacts.
However, there are cases where the NativeRendering
backend is used implicitly. In particular this happens
for color fonts, so when changing the dpr of a screen
(or when moving the window to a screen with a different
dpr) we would get pixelated emojis in some cases.
The fix is to detect in the text node whether any
glyphs use the NativeRendering backend and if they
do, we update whenever the dpr changes.
Fixes: QTBUG-121449
Change-Id: I9ad62d792e495d4439715fe87acfd87dd1833c67
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit 23ae81c84de8bb30ba2d779c603a5b3aded2a417)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 4a85b870e4fa4febdc262f9a3060177bf86f6b5a)
(cherry picked from commit 4da6490b6e5ee840fa81e6a91da4251989fbcd92)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
way around
The docs suggest that the syncView for a TableView should point
to the HeaderView. But it's actually the other way around.
Task-number: QTBUG-123595
Pick-to: 6.2
Change-Id: I303ac50321aad581fd3472b3e3ff8ad93ecad701
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit 37d9f3d4584e9a455284336895cb4df27ca2aee8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit b2dc306e57bb90adda7eab121e4c651610ab4be3)
(cherry picked from commit c5c1d7736948ff4273e76651f33cadd5d631c56f)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This can lead to crashes in static analysis passes when they try to use
the resolver.
Change-Id: I2f7951374a3aa6bd38ef93333b97b08d9a46dd13
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit cc87c4ade4bde5cf3dac617049f539e3361d7309)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit aca26a0bd0c1ce145b5b3841f89f3e989fc5f654)
(cherry picked from commit 44bcd9936c2d3709eb2496f02e481a82b3434373)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When syncView is requested to do a relayout, it will tell
the sync children to do relayout as well. A relayout alone
will not change the top-left delegate item in the viewport,
only layout the existing delegate items.
But as it turns out, it can happen that the relayout leaves
empty space in the viewport that needs to be refilled with
new rows and columns. This is typically the case if some of
the columns were resized smaller than what they used to be.
And this can change which cell ends up as top-left, or
move it to a different position.
We therefore need to extend the check in syncSyncView to also
include the _position_ of the top-left cell, and not only if
the top-left cell itself has changed.
As it stood, we also did a viewportOnly rebuild every time a
new row or column was flicked into the viewport. This is very
unnecessary, and slows down performance. Instead, we only need
to do this when if the sync child is told to do (at least)
a LayoutOnly. Only then can any of the visible rows or columns
have been resized.
Fixes: QTBUG-127809
Pick-to: 6.2
Change-Id: I815a47e9d6453871172ff7136f8cfbd51a5bc789
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit 25348bc0e67f019232aa70c5558988a0c17bd15e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit a5d0cfe092cc8411469ef53df13f2dac12051bf4)
(cherry picked from commit 6f699d343c3dab086acf927c8601c88580317365)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QSizeF::isEmpty returns true if either dimension is negative, but
according to tst_QQuickListView::resizeView, we support negative-sized
views.
Amends 37c25c6e74f4f74d7cca8f5b0f12a40ec0354f7e.
Change-Id: If860cd5a459adf75470e5fc2deba3967b2e66366
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit e64662650f351c24a5818f89e84c7a7dc4133e73)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 4c0df79ba847fb38ef40a3b561d4559aa2908aba)
(cherry picked from commit f17ba1881175cea55791029ea4f1a09c0fa1847f)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The typical use case for SwipeView is that the user declares items
directly as children. Those children are added to its QQmlObjectModel,
which are then used as the delegates for its ListView. ListView culls
the items it manages, but in the case of a zero-sized view, those that
are outside the view - and hence not in its visibleItems list - are not
its responsibility. That responsibility instead falls to
QQuickContainer.
It's also necessary to clear and return early in
QQuickItemViewPrivate::layout if the size of the view is zero,
otherwise the tests that check if a valid-sized view is made
zero-sized fail.
Add a new C++-based test for Container which is only run with the Basic
style (similar to e.g. tst_qquickmenubar) so that we can check the
culled member of QQuickItemPrivate. tst_container.qml is run
with all styles (even though it probably doesn't need to be, but it
would also be difficult to rewrite in C++, even though it's fairly
small).
Fix some tests that were using zero-sized views.
Fixes: QTBUG-125416
Change-Id: Ia05791b69568d51bea310e4f09266645ca2f1829
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit 477c15def834bd49553c00b90f3a2006456ea931)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 0b6fd253e64519144808c02f161d2166198e4158)
(cherry picked from commit add0731317f81a0e71535af0be94ddb1cca695de)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Optimize fixed numbers to facilitate subsequent character array expansion
Change-Id: Ieb3b2ba527a88054594e00ddbf1072cccefb6965
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 8541bab2f040ddc2c5d096791f37715df83bc2df)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit a390b2dbe61b3e2eb42ddad7a47d5166bee00338)
(cherry picked from commit fb515d46c9b50c58dc155c3e04593363aabf77fc)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A native dialog helper might not be able to show a dialog due to the
dialog options not being possible to represent with the native dialog.
If so the helper returns false from show(). We were not handling this
case, so failing to show a native dialog would result in no dialog
shown.
We now fall back to the non-native dialog by destroying the native
helper and using the non-native dialog helper explicitly.
Fixes: QTBUG-124124
Change-Id: If50c63e419ae7b13e9317cd2cbbcaa02fe13bbd5
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
(cherry picked from commit c821284d97b6be6755d1bddeec85d222ecb924e6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit e0b536e01d6d07db4f4cf012b8deca811d7d9bde)
(cherry picked from commit 37ae99b2c1618f46277147e243da2a9adb4286c0)
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When the incoming data is 4, the index defined by this macro has a crash
Log: mips array out of bounds
Change-Id: I5acff5479f17e55d5731443d08b0915c701968f6
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit f83669821b960e95f76807d1d64db07926fe3f5b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 64769e675affd4bb7c2bf7eb9dc6aa1589a2061c)
(cherry picked from commit ce7303567f9d29ce9d9c55f4cd014afc8b805833)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Both the object and the listmodel may be deleted during the life time of
ModelObject. Don't crash when that happens.
Also, fix QV4QPointer to actually name the type of the pointer it
stores. Apparently this is the first time we add a QV4QPointer of
something that's not a plain QObject.
Pick-to: 6.2 5.15
Task-number: QTBUG-118024
Change-Id: I208d8749bcd67970f7bfbe569eed7a472f909508
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 90c55e859ea258350da815acd3e1967d5ff54100)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit aa253878fedee9bc699ec333d3c0c600e24f316f)
(cherry picked from commit f7182e0124776acf0bfb1348192e09e3ccc86f0e)
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As mentioned in QTBUG-95540, using the latter provides better type
information for tooling, and avoids the "this property only exists on
the object if Quick has been imported" issue.
Replace QtQml import in Fluent style's Config.qml with QtQuick to
provide access to the Application type.
Fixes: QTBUG-126512
Change-Id: I4aac22e54f3b522f74acafd467ce22139352c9dd
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 9335b0fd1f2358110b88127c9b34fa6867a14069)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit d70e645ca8071789e7d1906114b96ec36233179b)
(cherry picked from commit 2a40db4f99ca6ab02f55968a422172cebc4f10a9)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The Tumbler displayed an incorrect item when the currentIndex was set
during a model change. This issue occurred because setting currentIndex
in the onModelChanged handler was not considered. The bug happened when
the Tumbler was instantiated with the wrap property set to false.
To fix this issue, it should be verified that the view's currentIndex
matches the QQuickTumblerPrivate's currentIndex after endSetModel().
The currentIndexSetDuringModelChange property can help determine if the
currentIndex was set during a model change.
There were a couple of test cases that did not account for this
scenario. The test cases have been updated to be more general and to
check for this and other related cases.
Fixes: QTBUG-124921
Change-Id: I82511cee8a5dbd6295fce6b3451aa205e977a8f5
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit ca771d0a018138ede48f3b7bf6732a16650bd888)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 6aa2a13292f578dd42ee15748bec4b1fb172518e)
Reviewed-by: MohammadHossein Qanbari <mohammad.qanbari@qt.io>
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
(cherry picked from commit c8cc0fd380b71f7257fc8281a075b3ab33dcfa2a)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If we remove a binding we don't want any later code to restore it. This
works quite well if the binding we remove already exists.
removeFromObject() resets the binding bit and that settles it. However,
if the binding doesn't exist yet, we so far didn't reset the bit and
when the binding appeared we would still add it to the object. That was
quite wrong.
Pick-to: 6.2
Fixes: QTBUG-124553
Change-Id: I58c115d78b3701ad4e8837772261a9154b971dbb
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit c9d7620bc2e47d3e1b84f824eb5b643f269f4a56)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit bd75b606ca78b3b92dd9596359b232da3358608e)
(cherry picked from commit 3b4ec8930c20f107d48134f88b7113df2825ef7a)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The default value for the alignment property is not undefined, as this
is an integer property. Correct this in the docs.
This is a resettable property and setting it to undefined is
allowed and will call the RESET function, however the returned value can not be undefined.
Change-Id: Id9d2f74052fa4a85a8505378d41c990fd7b3283c
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit 3c0207c00cbf6a05c34c706df6eace9d8d411b03)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 84c3ca6090005882947e547910b7cddfb563fe7b)
(cherry picked from commit 3026697f2796b1d9f1373bce611a8249058500f6)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The initial value of the QQuickTumbler was not the same as the value in
the QQuickListView when the Tumbler component was loaded. This meant
that the view was showing an incorrect item in the Tumbler. The reason
was that during the QQuickTumbler creation, the currentIndex would
change due to the QQuickTumblerView::createView() in the view
initialization.
To fix this issue, the QQuickTumbler now ignores changes to currentIndex
until the view is initialized. When the view has initialized and
QQuickListView's currentIndex is not the same as the QQuickTumbler's
currentIndex, it will be reset to the QQuickTumbler's currentIndex value
which is set in Tumbler by the user.
The existing test case has been updated to support the Tumbler without a
delegate to force the default view to be instantiated. The currentIndex
is set to a value outside the highlight range, and it will then be
checked that the currentIndex remains the same as the initial
currentIndex.
Fixes: QTBUG-127315
Change-Id: I2603cfba228728d6fd3c464dce2e4eeac1365d75
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit 6b440f5a0c62508405a5f0a0d757b0e83effffe8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 48e08515620c6546b2f539013de0682b89645223)
Reviewed-by: MohammadHossein Qanbari <mohammad.qanbari@qt.io>
(cherry picked from commit 109e817e4944d7ba5bc6a2a1f9b72d21cffa9a15)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Instead of attempting to handle this one layer down, when deciding about
merging, make the decision already when creating the batches.
Fixes: QTBUG-97557
Task-number: QTBUG-125087
Change-Id: I83825c60d76124244979e009459d47f07a67fa77
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
(cherry picked from commit 9087f078c000bb5a760ca8e2179a3a1e5cae2b43)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit b645aaa9cd474606a4e056004c8b505c3f4daec8)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit f17f174b939c6db87701de13458f6a39c24157dd)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In the process of opening a FolderDialog, FolderListModel's folder
property is set twice: once upon component completion of
FolderDialog.qml, and shortly after if FolderDialog's currentFolder
property is set, due to the binding in FolderDialog.qml. This would
cause beginResetModel to be called twice, which invalidates the
assertion made in QQmlDelegateModel that this doesn't happen.
This patch ensures that beginResetModel is always followed by
endResetModel by tracking if we're in the middle of a reset.
This is (indirectly) tested by
tst_QQuickFolderDialogImpl::bindCurrentFolder.
Task-number: QTBUG-125053
Change-Id: I4c22be173807187e56f4d528a465225b787e840a
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 789f7316b82d3bb2377b41d881be626964849840)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit b2ff845f8e14e702b4c72db6fcd7cedaef6b0637)
(cherry picked from commit 7c7b222e0cc6cd48f693708439f382ec795b5bc1)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When calling beginResetModel from the constructor of a
QAbstractItemModel subclass, QQmlDelegateModel has not yet connected
to modelAboutToBeReset. endResetModel is then called later, but after
837c2f18cd223707e7cedb213257b0158ea07146, we no longer connect to
modelReset, so we never caught this and delegates wouldn't be visible.
This patch ensures that we connect to modelReset and call
QQmlDelegateModel::handleModelReset().
Fixes: QTBUG-125053
Change-Id: Ib9c179420053a8733b505f3d8d51c712df28a348
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 6561344dd2d1ba69abe6edec4fe340b256da9e13)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit cc3d7ef3228316e88a67292404d2cf72f66f9f1a)
(cherry picked from commit dd7d8f38b5e0f58e8edd490757069aaed862a340)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a QTextBlock has been pulled out of a QTextDocument,
lineNumberForTextPosition() returns -1, so lineForTextPosition() returns
a default-constructed QTextLine whose `eng` pointer is null.
QTextLine::textStart() needs to access `eng`, so we can't call it.
The new autotest is similar to what a syntax highlighter does.
However QTextLayout::setFormats() doesn't trigger QTextEdit::update()
by itself. QTextCursor::endEditBlock() results in QTD::contentsChanged()
being emitted, which is connected to QQuickTextEdit::q_textChanged();
so we test it both ways to ensure that it doesn't crash in either case,
but one can see the text turn green only in the case that update() is
called somehow.
Done-with: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
Fixes: QTBUG-126886
Pick-to: 6.2
Change-Id: I9c1093af7002432add3b4ab856a41ce2f9af4619
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
(cherry picked from commit f6810b64401ead3a9ace972acea7797c998e91b5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit a144c6c7510fa7374d63f0621cdf129b629aed3d)
(cherry picked from commit 7a49e4b35889c8d3694e064a18e481223ccdbb61)
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Otherwise they will be re-fetched over and over for each element.
Fixes: QTBUG-81231
Change-Id: Id8db14d13c0d1372b44a6e094006839892325389
Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit c7111871a7ca7c785b04046d0f58ae9fcbc6f94d)
(cherry picked from commit e91c9a9148ea9229c2a66a478ad1c3fbd2a6d5df)
(cherry picked from commit 8c97fc2740c63935eedb380031d249ee0887085b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Otherwise we might mistakenly assign bindings as regular values.
Fixes: QTBUG-125095
Change-Id: Ib39e81a128a3b212cafeb378cebbbd0acb67b760
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
(cherry picked from commit 8bfd582daa103fe496d65af62e166a97f5a17407)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit eb460e4ee134c64fa00cdcee76bd0b4478ed2dfc)
(cherry picked from commit ef97a93f343e1b5e4f98ef20a6e58a33b8d4ffd8)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Only for OpenGL: there a QRhiBuffer with UniformBuffer usage is not
backed by a native OpenGL buffer at all. The ominuously named
beginFullDynamicBufferUpdateForCurrentFrame() just returns a pointer
into the underlying QByteArray (or similar) storage then. (only on GL,
only for uniform buffers) Knowing this, the batches' uniform data
can be memcopied directly into this area, instead of enqueing resource
updates that ultimately achieve the same.
Could be applicable to D3D11, to save a memcpy. However, it is not given
that, thinking of unmerged batches, separately memcopying lots of small
blocks (Qt Quick does not actually build up the final, full uniform
buffer contents itself) into a buffer's mapped (host visible) storage is
a good thing. (given the potentially different memory caching behavior
e.g.) So it is not done there.
To recognize the special case, we use nativeBuffers().slotCount == 0
which is only every true with the OpenGL and Null backends (indicating
that the QRhiBuffer has 0 real buffer resources associated), which
conveniently avoids the need to introduce backend-specific conditions.
Task-number: QTBUG-125087
Change-Id: I88a9ef5eff6c52a88b2605bdab8cada86a18e98e
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
(cherry picked from commit 2cecb2a00d56d5cf382174306596af8114555768)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 573d32119063fdd2b1335622d1eb14c7c8d60484)
(cherry picked from commit cb06386b9e34d5ccffc2b4e55adc577d2391501e)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The resourceFileMapper doesn't expect ':' in front of its paths.
Amends 5860c9c12c1c948ce1498da30581bfd5b9c05988
Fixes: QTBUG-124498
Change-Id: Icf837708ff6fc5153009bafbf1b98a75a3cfba8e
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 001cb7bfb1a2815cad912ce1b5b9d4d1cef30e01)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 943633724e2a2731ccfc4ce35766e442c23c41bc)
(cherry picked from commit c6502fcf891173d5c3476b7857b87fd7fde508c4)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Resetting counter too early was causing infinite loop in a function
responsible for detecting infinite loops (how ironic). Fix this
behavior.
Decrease the threshold for detecting infinite loop from 100k to 10k
iterations for better responsiveness.
Fixes: QTBUG-126474
Change-Id: Ife45e694d417b1d23fa1294e069ee54eff31c047
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
(cherry picked from commit c9e235a638c991f523cf6250af6ea82ad4a17639)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 798fcfc403e8dcfd6eefb5bb1f623fcda644bec6)
(cherry picked from commit 4f69583aaf5768ec2e168940524851b4fdb39bae)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In case the sections are displayed using ViewSection.CurrentLabelAtStart,
the section size should be taken into account while snapping the items.
This patch extends the fixup() method to perform such checks.
The drawback of this approach is that the position adjustment takes
some time (because of the animation) and happens after the scrolling is
finished.
A better solution would be to fix the scrolling process in such a way,
that no adjustment is needed during fixup.
Fixes: QTBUG-30768
Pick-to: 6.2
Change-Id: I31a1a3af55afe8be4e8d7980cbb163622e3283bc
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit 249fe4ba127e834a33950a045d06628187987f99)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit b29bfa7ca03470afd06c4bdfada9ac6712957c32)
(cherry picked from commit 174e6b59ecb76393c678341dfe74e482a35c8b19)
|