Merge #201: fix gui: wrong event selection on home panel

ea6d4f9b6374ea9e8873a4eb768feef11caaa48f fix gui: wrong event selection on home panel (edouard)

Pull request description:

  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.

ACKs for top commit:
  edouardparis:
    Self-ACK ea6d4f9b6374ea9e8873a4eb768feef11caaa48f

Tree-SHA512: c0eef61c53a75f1fa746494bf9abc151a31f37d05616a8615eba2f3d3f6fe2573d96adef3b5ad7efd7f30b71d01afb012d5166cdfcbf9a1215752cbdfb43d6ae
This commit is contained in:
edouard 2022-12-12 15:49:28 +01:00
commit bb9a41727e
No known key found for this signature in database
GPG Key ID: E65F7A089C20DC8F
2 changed files with 7 additions and 2 deletions

View File

@ -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::<Element<view::Message>>,
);
}

View File

@ -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(