From b78eb1ee5401adc804e7f7fd863c446e1f725df1 Mon Sep 17 00:00:00 2001
From: jooaf
Date: Fri, 24 Jan 2025 11:37:46 -0600
Subject: [PATCH] Fix: Scroll offset in Title Select Popup was off
---
Cargo.lock | 2 +-
src/title_select_popup.rs | 2 +-
src/ui_handler.rs | 6 +++---
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index e2158cc..5830d6b 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1427,7 +1427,7 @@ dependencies = [
[[package]]
name = "thoth-cli"
-version = "0.1.73"
+version = "0.1.75"
dependencies = [
"anyhow",
"arboard",
diff --git a/src/title_select_popup.rs b/src/title_select_popup.rs
index f00aa88..6ebcad8 100644
--- a/src/title_select_popup.rs
+++ b/src/title_select_popup.rs
@@ -74,7 +74,7 @@ impl TitleSelectPopup {
self.selected_index = self.filtered_titles.len() - 1;
}
- if self.selected_index < self.scroll_offset {
+ if self.selected_index <= self.scroll_offset {
self.scroll_offset = self.selected_index;
}
if self.selected_index == self.filtered_titles.len() - 1 {
diff --git a/src/ui_handler.rs b/src/ui_handler.rs
index eb44049..ce2cc69 100644
--- a/src/ui_handler.rs
+++ b/src/ui_handler.rs
@@ -1,4 +1,4 @@
-use crate::{get_save_backup_file_path, EditorClipboard, BORDER_PADDING_SIZE};
+use crate::{get_save_backup_file_path, EditorClipboard};
use anyhow::{bail, Result};
use crossterm::{
event::{self, DisableMouseCapture, EnableMouseCapture, KeyCode, KeyModifiers},
@@ -243,8 +243,8 @@ fn handle_title_select_popup_input(state: &mut UIState, key: event::KeyEvent) ->
// The borders are rendered using unicode box-drawing characters:
// top border : ┌───┐
// bottom border : └───┘
- let visible_items = (state.scrollable_textarea.viewport_height as f32 * 0.8).floor() as usize
- - BORDER_PADDING_SIZE;
+ let visible_items =
+ (state.scrollable_textarea.viewport_height as f32 * 0.8).floor() as usize - 10;
match key.code {
KeyCode::Enter => {