mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-04-13 01:02:18 -04:00
launcher v2: fix kb navigation to top of scroll
This commit is contained in:
@@ -130,9 +130,25 @@ Item {
|
|||||||
if (!entry || entry.isHeader)
|
if (!entry || entry.isHeader)
|
||||||
return;
|
return;
|
||||||
var rowIndex = _flatIndexToRowMap[index];
|
var rowIndex = _flatIndexToRowMap[index];
|
||||||
if (rowIndex === undefined)
|
if (rowIndex === undefined || rowIndex >= _cumulativeHeights.length)
|
||||||
return;
|
return;
|
||||||
mainListView.positionViewAtIndex(rowIndex, ListView.Contain);
|
var row = _visualRows[rowIndex];
|
||||||
|
if (!row)
|
||||||
|
return;
|
||||||
|
|
||||||
|
var rowY = _cumulativeHeights[rowIndex];
|
||||||
|
var rowHeight = row.height;
|
||||||
|
var scrollY = mainListView.contentY - mainListView.originY;
|
||||||
|
var viewHeight = mainListView.height;
|
||||||
|
var headerH = stickyHeader.height;
|
||||||
|
|
||||||
|
if (rowY < scrollY + headerH) {
|
||||||
|
mainListView.contentY = Math.max(mainListView.originY, rowY - headerH + mainListView.originY);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (rowY + rowHeight > scrollY + viewHeight) {
|
||||||
|
mainListView.contentY = rowY + rowHeight - viewHeight + mainListView.originY;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getSelectedItemPosition() {
|
function getSelectedItemPosition() {
|
||||||
|
|||||||
Reference in New Issue
Block a user