From 3edc307768cc023a052d8aba8c461d800659fdb6 Mon Sep 17 00:00:00 2001 From: Loric ANDRE Date: Tue, 20 Jan 2026 09:24:46 +0100 Subject: [PATCH] fix: half page down scrolls down --- src/tui/app.rs | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/src/tui/app.rs b/src/tui/app.rs index 59ab692e..7a638cde 100644 --- a/src/tui/app.rs +++ b/src/tui/app.rs @@ -876,22 +876,38 @@ impl<'a> App<'a> { } HalfPageDown(n) => { let offset = self.item_list.height as i32 / 2; - self.item_list.scroll_by(offset * n); + if self.options.layout == TuiLayout::Default { + self.item_list.scroll_by(-offset * n); + } else { + self.item_list.scroll_by(offset * n); + } return Ok(vec![Event::RunPreview]); } HalfPageUp(n) => { let offset = self.item_list.height as i32 / 2; - self.item_list.scroll_by(offset * n); + if self.options.layout == TuiLayout::Default { + self.item_list.scroll_by(offset * n); + } else { + self.item_list.scroll_by(-offset * n); + } return Ok(vec![Event::RunPreview]); } PageDown(n) => { let offset = self.item_list.height as i32; - self.item_list.scroll_by(offset * n); + if self.options.layout == TuiLayout::Default { + self.item_list.scroll_by(-offset * n); + } else { + self.item_list.scroll_by(offset * n); + } return Ok(vec![Event::RunPreview]); } PageUp(n) => { let offset = self.item_list.height as i32; - self.item_list.scroll_by(offset * n); + if self.options.layout == TuiLayout::Default { + self.item_list.scroll_by(offset * n); + } else { + self.item_list.scroll_by(-offset * n); + } return Ok(vec![Event::RunPreview]); } PreviewUp(n) => {