Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
5.12, 5.14
-
None
-
Windows
Linux
Description
Observed several ScreenInfo objects under QQmlApplicationEngine->Window
Observed in Debug mode while debugging
Steps to reproduce:
Code snippet -
ContactModel.qml
import QtQuick 2.0 ListModel { ListElement { name: "1" portrait: "pics/portrait.png" } ListElement { name: "2" portrait: "pics/portrait.png" } ListElement { name: "3" portrait: "pics/portrait.png" } ... }
main.qml
import QtQuick 2.12 import QtQuick.Window 2.12 Window { width: 640 height: 480 visible: true title: qsTr("Hello World") Rectangle { width: 280; height: 180 anchors.centerIn: parent color: "red" Component { id: contactDelegate Item { width: grid.cellWidth; height: grid.cellHeight Column { anchors.fill: parent Image { source: portrait; anchors.horizontalCenter: parent.horizontalCenter } Text { text: name; anchors.horizontalCenter: parent.horizontalCenter } } } } GridView { id: grid anchors.fill: parent cellWidth: 80; cellHeight: 80 model: ContactModel {} delegate: contactDelegate highlight: Rectangle { color: "lightsteelblue"; radius: 5 } focus: true clip: true snapMode: GridView.SnapToRow flickableDirection: Flickable.VerticalFlick boundsBehavior: Flickable.StopAtBounds Component.onCompleted: { console.log("Gridview Constructed...") } } } }
Steps:
->keep debug point at console.log("Gridview Constructed...")
->Start debugging
-> press F5 to continue
-> observe the debug winow, travel grid items multiple times
> we can observe ScreenInfo objects created multiple times under QQmlApplicationEngine>Window
-> ScreenInfo objected never destroyed
-> please find the attached screenshot for more info
-> please find the attached complete example code project