diff options
Diffstat (limited to 'src/queue.rs')
| -rw-r--r-- | src/queue.rs | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/src/queue.rs b/src/queue.rs index f556ed3..edd973f 100644 --- a/src/queue.rs +++ b/src/queue.rs | |||
| @@ -191,8 +191,12 @@ impl Queue { | |||
| 191 | 191 | ||
| 192 | let current_pos = self.position; | 192 | let current_pos = self.position; |
| 193 | let indices_len = self.shuffled_indices.len().min(10); | 193 | let indices_len = self.shuffled_indices.len().min(10); |
| 194 | eprintln!("DEBUG restore: current_pos={}, tracks.len={}, shuffled_indices={:?}", | 194 | eprintln!( |
| 195 | current_pos, self.tracks.len(), &self.shuffled_indices[..indices_len]); | 195 | "DEBUG restore: current_pos={}, tracks.len={}, shuffled_indices={:?}", |
| 196 | current_pos, | ||
| 197 | self.tracks.len(), | ||
| 198 | &self.shuffled_indices[..indices_len] | ||
| 199 | ); | ||
| 196 | 200 | ||
| 197 | // Find which tracks have been played (positions 0..=current_pos in shuffled order) | 201 | // Find which tracks have been played (positions 0..=current_pos in shuffled order) |
| 198 | let mut played_track_paths: Vec<std::path::PathBuf> = Vec::new(); | 202 | let mut played_track_paths: Vec<std::path::PathBuf> = Vec::new(); |
| @@ -200,8 +204,12 @@ impl Queue { | |||
| 200 | if let Some(&idx) = self.shuffled_indices.get(i) | 204 | if let Some(&idx) = self.shuffled_indices.get(i) |
| 201 | && let Some(track) = self.tracks.get(idx) | 205 | && let Some(track) = self.tracks.get(idx) |
| 202 | { | 206 | { |
| 203 | eprintln!("DEBUG: played track at shuffled pos {} -> track idx {} = {:?}", | 207 | eprintln!( |
| 204 | i, idx, track.path.file_name()); | 208 | "DEBUG: played track at shuffled pos {} -> track idx {} = {:?}", |
| 209 | i, | ||
| 210 | idx, | ||
| 211 | track.path.file_name() | ||
| 212 | ); | ||
| 205 | played_track_paths.push(track.path.clone()); | 213 | played_track_paths.push(track.path.clone()); |
| 206 | } | 214 | } |
| 207 | } | 215 | } |
| @@ -220,7 +228,11 @@ impl Queue { | |||
| 220 | for (i, orig_track) in self.original_tracks.iter().enumerate() { | 228 | for (i, orig_track) in self.original_tracks.iter().enumerate() { |
| 221 | let is_played = played_track_paths.iter().any(|p| p == &orig_track.path); | 229 | let is_played = played_track_paths.iter().any(|p| p == &orig_track.path); |
| 222 | if !is_played { | 230 | if !is_played { |
| 223 | eprintln!("DEBUG: adding unplayed from original idx {}: {:?}", i, orig_track.path.file_name()); | 231 | eprintln!( |
| 232 | "DEBUG: adding unplayed from original idx {}: {:?}", | ||
| 233 | i, | ||
| 234 | orig_track.path.file_name() | ||
| 235 | ); | ||
| 224 | new_tracks.push(orig_track.clone()); | 236 | new_tracks.push(orig_track.clone()); |
| 225 | } | 237 | } |
| 226 | } | 238 | } |
