diff --git a/src/gui/input.rs b/src/gui/input.rs index 254b257..dc27399 100644 --- a/src/gui/input.rs +++ b/src/gui/input.rs @@ -21,10 +21,17 @@ impl SoundpadGui { } if i.key_pressed(Key::Enter) && self.app_state.selected_file.is_some() { - self.play_file( - &self.app_state.selected_file.clone().unwrap(), - i.modifiers.ctrl, - ); + let path = &self.app_state.selected_file.clone().unwrap(); + if i.modifiers.ctrl { + self.play_file(path, true); + } else if i.modifiers.shift + && let Some(last_track) = self.audio_player_state.tracks.last() + { + self.stop(Some(last_track.id)); + self.play_file(path, true); + } else { + self.play_file(path, false); + } } if !self.app_state.show_settings {