diff --git a/main/src/application/session.rs b/main/src/application/session.rs index 3496a95bb..ab0b9a8ff 100644 --- a/main/src/application/session.rs +++ b/main/src/application/session.rs @@ -67,7 +67,7 @@ pub trait SessionUi { &self, session: &Session, matrix: &playtime_clip_engine::base::Matrix, - event: &reaper_high::ChangeEvent, + events: &[reaper_high::ChangeEvent], ); fn mapping_matched(&self, event: MappingMatchedEvent); fn target_controlled(&self, event: TargetControlEvent); @@ -2630,9 +2630,9 @@ impl DomainEventHandler for WeakSession { s.ui.clip_matrix_changed(&s, matrix, events, is_poll); } #[cfg(feature = "playtime")] - ControlSurfaceChangeEventForClipEngine(matrix, event) => { + ControlSurfaceChangeEventsForClipEngine(matrix, events) => { let s = session.try_borrow()?; - s.ui.process_control_surface_change_event_for_clip_engine(&s, matrix, event); + s.ui.process_control_surface_change_event_for_clip_engine(&s, matrix, events); } MappingMatched(event) => { let s = session.try_borrow()?; diff --git a/main/src/domain/eventing.rs b/main/src/domain/eventing.rs index 88224f3e7..c268cc43e 100644 --- a/main/src/domain/eventing.rs +++ b/main/src/domain/eventing.rs @@ -37,9 +37,9 @@ pub enum DomainEvent<'a> { is_poll: bool, }, #[cfg(feature = "playtime")] - ControlSurfaceChangeEventForClipEngine( + ControlSurfaceChangeEventsForClipEngine( &'a playtime_clip_engine::base::Matrix, - &'a reaper_high::ChangeEvent, + &'a [reaper_high::ChangeEvent], ), TimeForCelebratingSuccess, ConditionsChanged, diff --git a/main/src/domain/main_processor.rs b/main/src/domain/main_processor.rs index 0eda951f5..e43f57e29 100644 --- a/main/src/domain/main_processor.rs +++ b/main/src/domain/main_processor.rs @@ -1743,11 +1743,9 @@ impl MainProcessor { // Let matrix react to track changes etc. matrix.process_reaper_change_events(events); // Process for GUI - for event in events { - self.basics.event_handler.handle_event_ignoring_error( - DomainEvent::ControlSurfaceChangeEventForClipEngine(matrix, event), - ); - } + self.basics.event_handler.handle_event_ignoring_error( + DomainEvent::ControlSurfaceChangeEventsForClipEngine(matrix, events), + ); } } } diff --git a/main/src/infrastructure/ui/main_panel.rs b/main/src/infrastructure/ui/main_panel.rs index 7800a9e27..edf3b37f7 100644 --- a/main/src/infrastructure/ui/main_panel.rs +++ b/main/src/infrastructure/ui/main_panel.rs @@ -523,11 +523,11 @@ impl SessionUi for Weak { &self, session: &Session, matrix: &playtime_clip_engine::base::Matrix, - event: &reaper_high::ChangeEvent, + events: &[reaper_high::ChangeEvent], ) { App::get() .clip_engine_hub() - .send_occasional_matrix_updates_caused_by_reaper(session.id(), matrix, event); + .send_occasional_matrix_updates_caused_by_reaper(session.id(), matrix, events); } fn mapping_matched(&self, event: MappingMatchedEvent) {