Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.9.4
-
None
-
c40486acc352d49398186fa32d1ccabdd5fc83c6
Description
Internal IDs in the built-int styles prevent deferred execution. Therefore the execution of some delegates is not deferred. With the Default style, these custom delegates are currently not created at all (you get the defaults instead):
import QtQuick 2.9 import QtQuick.Controls 2.2 ApplicationWindow { id: window width: 640 height: 480 visible: true Column { anchors.centerIn: parent BusyIndicator { contentItem: Rectangle { implicitWidth: 20; implicitHeight: 20; color: "red" } } DelayButton { contentItem: Rectangle { implicitWidth: 20; implicitHeight: 20; color: "red" } } Dial { handle: Rectangle { implicitWidth: 20; implicitHeight: 20; color: "red" } } ScrollBar { size: 0.5 active: true width: parent.width orientation: Qt.Horizontal contentItem: Rectangle { implicitWidth: 20; implicitHeight: 20; color: "red" } } ScrollIndicator { size: 0.5 active: true width: parent.width orientation: Qt.Horizontal contentItem: Rectangle { implicitWidth: 20; implicitHeight: 20; color: "red" } } } }
Attachments
For Gerrit Dashboard: QTBUG-65341 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
214948,9 | Fix deferred execution | 5.9 | qt/qtquickcontrols2 | Status: MERGED | -2 | 0 |
214964,2 | Default: cleanup and test internal IDs | 5.9 | qt/qtquickcontrols2 | Status: MERGED | +2 | 0 |
214978,3 | Default: cleanup the internal ID from BusyIndicator | 5.9 | qt/qtquickcontrols2 | Status: MERGED | +2 | 0 |
214995,7 | Default: eliminate internal IDs in DelayButton | 5.9 | qt/qtquickcontrols2 | Status: MERGED | -2 | 0 |
215527,3 | tst_sanity: check for internal IDs | 5.9 | qt/qtquickcontrols2 | Status: MERGED | -2 | 0 |
216409,2 | Remove unused QQuickControlPrivate::destroyDelegate() | 5.9 | qt/qtquickcontrols2 | Status: MERGED | +2 | 0 |
216446,2 | Fusion: eliminate internal IDs to enable deferred execution | 5.10 | qt/qtquickcontrols2 | Status: MERGED | +2 | 0 |