From ab0d88ae3a47191e10b1f031b2e9cd83307c8fb1 Mon Sep 17 00:00:00 2001 From: Jonas Platte Date: Tue, 18 Jul 2023 10:47:28 +0200 Subject: [PATCH] ui: Pull out identical code in different branches --- .../src/timeline/event_handler.rs | 22 ++++++++----------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/crates/matrix-sdk-ui/src/timeline/event_handler.rs b/crates/matrix-sdk-ui/src/timeline/event_handler.rs index d7933308c..5ab35f95f 100644 --- a/crates/matrix-sdk-ui/src/timeline/event_handler.rs +++ b/crates/matrix-sdk-ui/src/timeline/event_handler.rs @@ -923,19 +923,14 @@ impl<'a> TimelineEventHandler<'a> { } else { // If there is no event item, there is no day divider yet. trace!("Adding first day divider (remote)"); + let new_day_divider = new_timeline_item( + VirtualTimelineItem::DayDivider(timestamp), + self.next_internal_id, + ); if should_push { - self.items.push_back(new_timeline_item( - VirtualTimelineItem::DayDivider(timestamp), - self.next_internal_id, - )); + self.items.push_back(new_day_divider); } else { - self.items.insert( - insert_idx, - new_timeline_item( - VirtualTimelineItem::DayDivider(timestamp), - self.next_internal_id, - ), - ); + self.items.insert(insert_idx, new_day_divider); insert_idx += 1; } } @@ -951,10 +946,11 @@ impl<'a> TimelineEventHandler<'a> { } trace!("Adding new remote timeline item after all non-pending events"); + let new_item = new_timeline_item(item, self.next_internal_id); if should_push { - self.items.push_back(new_timeline_item(item, self.next_internal_id)); + self.items.push_back(new_item); } else { - self.items.insert(insert_idx, new_timeline_item(item, self.next_internal_id)); + self.items.insert(insert_idx, new_item); } }