mirror of https://github.com/rivo/tview.git
Merge pull request #403 from tslocum/scrolltable
Fix scrolling table with PageDown and PageUp
This commit is contained in:
commit
7e599fe9aa
18
table.go
18
table.go
|
@ -1155,27 +1155,37 @@ func (t *Table) InputHandler() func(event *tcell.EventKey, setFocus func(p Primi
|
|||
}
|
||||
|
||||
pageDown = func() {
|
||||
offsetAmount := t.visibleRows - t.fixedRows
|
||||
if offsetAmount < 0 {
|
||||
offsetAmount = 0
|
||||
}
|
||||
|
||||
if t.rowsSelectable {
|
||||
t.selectedRow += t.visibleRows
|
||||
t.selectedRow += offsetAmount
|
||||
if t.selectedRow >= len(t.cells) {
|
||||
t.selectedRow = len(t.cells) - 1
|
||||
}
|
||||
next()
|
||||
} else {
|
||||
t.rowOffset += t.visibleRows
|
||||
t.rowOffset += offsetAmount
|
||||
}
|
||||
}
|
||||
|
||||
pageUp = func() {
|
||||
offsetAmount := t.visibleRows - t.fixedRows
|
||||
if offsetAmount < 0 {
|
||||
offsetAmount = 0
|
||||
}
|
||||
|
||||
if t.rowsSelectable {
|
||||
t.selectedRow -= t.visibleRows
|
||||
t.selectedRow -= offsetAmount
|
||||
if t.selectedRow < 0 {
|
||||
t.selectedRow = 0
|
||||
}
|
||||
previous()
|
||||
} else {
|
||||
t.trackEnd = false
|
||||
t.rowOffset -= t.visibleRows
|
||||
t.rowOffset -= offsetAmount
|
||||
}
|
||||
}
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue