Fix artist list scrolling to bottom on click

Restore saved scroll offset into ListState before select() so ratatui
preserves the current viewport position instead of scrolling from zero.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-31 00:25:53 +00:00
parent 0823168167
commit 732001771e

View File

@@ -156,6 +156,7 @@ fn render_tree(frame: &mut Frame, area: Rect, state: &mut AppState, colors: &The
} }
let mut list_state = ListState::default(); let mut list_state = ListState::default();
*list_state.offset_mut() = state.artists.tree_scroll_offset;
if focused { if focused {
list_state.select(state.artists.selected_index); list_state.select(state.artists.selected_index);
} }
@@ -267,6 +268,7 @@ fn render_songs(frame: &mut Frame, area: Rect, state: &mut AppState, colors: &Th
} }
let mut list_state = ListState::default(); let mut list_state = ListState::default();
*list_state.offset_mut() = state.artists.song_scroll_offset;
if focused { if focused {
list_state.select(artists.selected_song); list_state.select(artists.selected_song);
} }