@@ -35,15 +35,20 @@ Item {
36 /* Whether, when collapsed, a button should be displayed enabling the user to expand
36 /* Whether, when collapsed, a button should be displayed enabling the user to expand
37 the grid to its full size. */
37 the grid to its full size. */
38− readonly property bool expandable: model.count > collapsedRowCount * iconTileGrid.columns
38+ readonly property bool expandable: model.count > actualCollapsedRowCount * iconTileGrid.columns
40 property var model: null
40 property var model: null
42 /* Maximum number of rows to be show when filter=true. */
42 /* Maximum number of rows to be show when filter=true. */
43 property int collapsedRowCount: 2
43 property int collapsedRowCount: 2
44+ /* Never show more rows than model would fill up. */
45+ readonly property int actualCollapsedRowCount: {
46+ return Math.min(collapsedRowCount, Math.ceil(model.count, columns))
44 property int uncollapsedRowCount: Math.ceil(model.count / columns)
48 property int uncollapsedRowCount: Math.ceil(model.count / columns)
45 readonly property int collapsedHeight: {
49 readonly property int collapsedHeight: {
46− return iconTileGrid.contentHeightForRows(Math.min(collapsedRowCount, Math.ceil(model.count / columns)))
50+ return iconTileGrid.contentHeightForRows(Math.min(
51+ actualCollapsedRowCount, Math.ceil(model.count / columns)))
48 readonly property int uncollapsedHeight: {
53 readonly property int uncollapsedHeight: {
49 return iconTileGrid.contentHeightForRows(uncollapsedRowCount)
54 return iconTileGrid.contentHeightForRows(uncollapsedRowCount)
@@ -106,7 +111,7 @@ Item {
107 model: LimitProxyModel {
112 model: LimitProxyModel {
108 model: root.model
113 model: root.model
109− limit: (filter && !filterAnimation.running) ? collapsedRowCount * iconTileGrid.columns : -1
114+ limit: (filter && !filterAnimation.running) ? actualCollapsedRowCount * iconTileGrid.columns : -1