From ea6d4f9b6374ea9e8873a4eb768feef11caaa48f Mon Sep 17 00:00:00 2001 From: edouard Date: Fri, 9 Dec 2022 11:45:45 +0100 Subject: [PATCH] fix gui: wrong event selection on home panel Because pending events are in a different list that confirmed event. The wrong list item was selected when user tried to click on a pending event. --- gui/src/app/state/mod.rs | 7 ++++++- gui/src/app/view/home.rs | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gui/src/app/state/mod.rs b/gui/src/app/state/mod.rs index 03be8873..094f3abd 100644 --- a/gui/src/app/state/mod.rs +++ b/gui/src/app/state/mod.rs @@ -75,10 +75,15 @@ impl Home { impl State for Home { fn view<'a>(&'a self, cache: &'a Cache) -> Element<'a, view::Message> { if let Some(i) = self.selected_event { + let event = if i < self.pending_events.len() { + &self.pending_events[i] + } else { + &self.events[i - self.pending_events.len()] + }; return view::modal( false, self.warning.as_ref(), - view::home::event_view(cache, &self.events[i]), + view::home::event_view(cache, event), None::>, ); } diff --git a/gui/src/app/view/home.rs b/gui/src/app/view/home.rs index 59ae930d..3fb124ac 100644 --- a/gui/src/app/view/home.rs +++ b/gui/src/app/view/home.rs @@ -69,7 +69,7 @@ pub fn home_view<'a>( .iter() .enumerate() .fold(Column::new().spacing(10), |col, (i, event)| { - col.push(event_list_view(i, event)) + col.push(event_list_view(i + pending_events.len(), event)) }), ) .push_maybe(