From 73ac28cba6d9344b866788443a5ff753d15f6606 Mon Sep 17 00:00:00 2001 From: Jens Bache-Wiig Date: Mon, 9 Dec 2013 14:16:39 +0100 Subject: Improve TableView performance by caching row-delegates This gives a much better scrolling performance in TableView since we do not have to instantiate the rows or re-establish bindings to header columns for each created table row. [ChangeLog][QtQuickControls] Significantly optimized TableView scrolling by recycling rowDelegate instances. Change-Id: I301e5e476c78f241be1282332905b714fbc5b37d Reviewed-by: Gabriel de Dietrich Reviewed-by: J-P Nurmi --- src/controls/TableViewColumn.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/controls/TableViewColumn.qml') diff --git a/src/controls/TableViewColumn.qml b/src/controls/TableViewColumn.qml index a5ba2e75..3336470e 100644 --- a/src/controls/TableViewColumn.qml +++ b/src/controls/TableViewColumn.qml @@ -132,7 +132,7 @@ QtObject { if (__view.__columns[i] === this) __index = i for (var row = 0 ; row < listdata.children.length ; ++row) { - var item = listdata.children[row+1] + var item = listdata.children[row+1] ? listdata.children[row+1].rowItem : undefined if (item && item.children[1] && item.children[1].children[__index] && item.children[1].children[__index].children[0] && item.children[1].children[__index].children[0].hasOwnProperty("implicitWidth")) minWidth = Math.max(minWidth, item.children[1].children[__index].children[0].implicitWidth) -- cgit v1.2.1