on xenial help sign in
Take into account the originY when specifying the delegate ranges

Fixes bug #1300302

commite45494cd7ee826290b2f83a7bfaea68400101ab9 authorAlbert Astals <albert.astals@canonical.com> dateTue 8 Apr 2014, 15:32 (13 years ago) parent6a856b6
5 files changed+13−8
qml/Components/FilterGrid.qml+1 qml/Components/ResponsiveGridView.qml+1 qml/Dash/CardFilterGrid.qml+1 qml/Dash/DashRenderer.qml+2 qml/Dash/GenericScopeView.qml+8−8
qml/Components/FilterGrid.qml+1
@@ -59,6 +59,7 @@ Item {
5959 property alias cellHeight: iconTileGrid.cellHeight
6060 property alias delegateCreationBegin: iconTileGrid.delegateCreationBegin
6161 property alias delegateCreationEnd: iconTileGrid.delegateCreationEnd
62+ readonly property alias originY: iconTileGrid.originY
6263 readonly property alias flicking: iconTileGrid.flicking
6364 readonly property alias moving: iconTileGrid.moving
6465 readonly property alias pressDelay: iconTileGrid.pressDelay
qml/Components/ResponsiveGridView.qml+1
@@ -40,6 +40,7 @@ Item {
4040 readonly property alias flicking: gridView.flicking
4141 readonly property alias moving: gridView.moving
4242 readonly property alias pressDelay: gridView.pressDelay
43+ readonly property alias originY: gridView.originY
4344 property alias delegateCreationBegin: gridView.delegateCreationBegin
4445 property alias delegateCreationEnd: gridView.delegateCreationEnd
4546 property alias highlightIndex: gridView.highlightIndex
qml/Dash/CardFilterGrid.qml+1
@@ -24,6 +24,7 @@ DashRenderer {
2424 collapsedHeight: filterGrid.collapsedHeight
2525 margins: filterGrid.margins
2626 uncollapsedHeight: filterGrid.uncollapsedHeight
27+ originY: filterGrid.originY
2728 verticalSpacing: units.gu(1)
2829 currentItem: filterGrid.currentItem
2930 height: filterGrid.height
qml/Dash/DashRenderer.qml+2
@@ -33,6 +33,8 @@ Item {
3333
3434 property var delegateCreationEnd: undefined
3535
36+ property real originY: 0
37+
3638 property real verticalSpacing: 0
3739
3840 // The current item of the renderer
qml/Dash/GenericScopeView.qml+8−8
@@ -247,16 +247,16 @@ FocusScope {
247247
248248 if (item && item.hasOwnProperty("delegateCreationBegin")) {
249249 if (baseItem.y + baseItem.height <= 0) {
250− // Not visible (item at top of the list)
251− item.delegateCreationBegin = baseItem.height
252− item.delegateCreationEnd = baseItem.height
250+ // Not visible (item at top of the list viewport)
251+ item.delegateCreationBegin = item.originY + baseItem.height
252+ item.delegateCreationEnd = item.originY + baseItem.height
253253 } else if (baseItem.y >= categoryView.height) {
254− // Not visible (item at bottom of the list)
255− item.delegateCreationBegin = 0
256− item.delegateCreationEnd = 0
254+ // Not visible (item at bottom of the list viewport)
255+ item.delegateCreationBegin = item.originY
256+ item.delegateCreationEnd = item.originY
257257 } else {
258− item.delegateCreationBegin = Math.max(-baseItem.y, 0)
259− item.delegateCreationEnd = Math.min(categoryView.height + item.delegateCreationBegin, baseItem.height)
258+ item.delegateCreationBegin = item.originY + Math.max(-baseItem.y, 0)
259+ item.delegateCreationEnd = item.originY + Math.min(categoryView.height + item.delegateCreationBegin, baseItem.height)
260260 }
261261 }
262262 }