From 58ec19578a5ae4a1c2bf5305ecc47b7821b55a94 Mon Sep 17 00:00:00 2001 From: omer Date: Sun, 8 Oct 2023 22:01:06 +0300 Subject: [PATCH] add circular scrolling to the list of images. --- src/app/state.rs | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/app/state.rs b/src/app/state.rs index 66d0ed3..569e46b 100644 --- a/src/app/state.rs +++ b/src/app/state.rs @@ -74,17 +74,28 @@ impl<'a> AppState<'a> { .. } = self { - if *selected_index < images.len() - 1 { - *selected_index += 1; + *selected_index += 1; + if *selected_index >= images.len() { + *selected_index = 0; } } } pub fn decrement_index(&mut self) { - if let Self::Initialized { selected_index, .. } = self { - if *selected_index > 0 { - *selected_index -= 1; + if let Self::Initialized { + selected_index, + paths: images, + .. + } = self + { + if images.is_empty() { + return; + } + + if *selected_index == 0 { + *selected_index = images.len(); } + *selected_index -= 1; } }