More emojis and pg up/down

This commit is contained in:
David Heinemeier Hansson
2026-05-17 11:02:57 +02:00
parent e8a8422408
commit df9f5c84e7
@@ -75,7 +75,7 @@ Item {
var item = root.emojis[i]
if (!query || item.k.indexOf(query) >= 0) {
out.push(item)
if (out.length >= 200) break // limit to keep it fast
if (out.length >= 1000) break // limit to keep it fast
}
}
root.filteredEmojis = out
@@ -109,6 +109,16 @@ Item {
resultGrid.positionViewAtIndex(selectedIndex, GridView.Contain)
}
function selectPage(delta) {
if (displayModel.count === 0) return
var visibleRows = Math.max(1, Math.floor(resultGrid.height / cellHeight))
var newIndex = selectedIndex + delta * columns * visibleRows
if (newIndex < 0) newIndex = 0
if (newIndex >= displayModel.count) newIndex = displayModel.count - 1
selectedIndex = newIndex
resultGrid.positionViewAtIndex(selectedIndex, GridView.Contain)
}
function setFilter(nextFilter) {
root.filterText = nextFilter
root.selectedIndex = 0
@@ -215,6 +225,12 @@ Item {
} else if (event.key === Qt.Key_Down) {
root.selectRow(1)
event.accepted = true
} else if (event.key === Qt.Key_PageUp) {
root.selectPage(-1)
event.accepted = true
} else if (event.key === Qt.Key_PageDown) {
root.selectPage(1)
event.accepted = true
} else if (event.key === Qt.Key_Return || event.key === Qt.Key_Enter) {
root.activateIndex(root.selectedIndex)
event.accepted = true