diff options
| author | Brooks Rady <b.j.rady@gmail.com> | 2021-04-22 00:25:43 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-22 00:25:43 +0100 |
| commit | 19fc0496a34565049cf1085ebf7071b7a6d3ef3d (patch) | |
| tree | f1ec6c15136949b9b5521275289a1bd7ab9ab194 /src/client | |
| parent | docs(changelog): update status bar change (diff) | |
| parent | add PGUP/PGDN to help info (diff) | |
| download | sl0ppij-19fc0496a34565049cf1085ebf7071b7a6d3ef3d.tar.gz sl0ppij-19fc0496a34565049cf1085ebf7071b7a6d3ef3d.tar.xz sl0ppij-19fc0496a34565049cf1085ebf7071b7a6d3ef3d.zip | |
feat(actions): allow scrolling by full pages
PR #298
Diffstat (limited to 'src/client')
| -rw-r--r-- | src/client/tab.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/client/tab.rs b/src/client/tab.rs index f938348e..acccde3a 100644 --- a/src/client/tab.rs +++ b/src/client/tab.rs @@ -2174,6 +2174,30 @@ impl Tab { self.render(); } } + pub fn scroll_active_terminal_up_page(&mut self) { + if let Some(active_terminal_id) = self.get_active_terminal_id() { + let active_terminal = self + .panes + .get_mut(&PaneId::Terminal(active_terminal_id)) + .unwrap(); + // prevent overflow when row == 0 + let scroll_columns = active_terminal.rows().max(1) - 1; + active_terminal.scroll_up(scroll_columns); + self.render(); + } + } + pub fn scroll_active_terminal_down_page(&mut self) { + if let Some(active_terminal_id) = self.get_active_terminal_id() { + let active_terminal = self + .panes + .get_mut(&PaneId::Terminal(active_terminal_id)) + .unwrap(); + // prevent overflow when row == 0 + let scroll_columns = active_terminal.rows().max(1) - 1; + active_terminal.scroll_down(scroll_columns); + self.render(); + } + } pub fn clear_active_terminal_scroll(&mut self) { if let Some(active_terminal_id) = self.get_active_terminal_id() { let active_terminal = self |
