feat(lib): carry audio attributes in browse and folder listings
A browse listed each file as a name and a size, so a searcher who saw a bitrate in a search reply lost it the moment they opened the sharer's files. Listings (codes 5 and 37) now carry each file's attributes the way Nicotine+ sends them, as a SharedFileEntry with name, size and attributes in place of the (name, size) pair; the CLI's browse record gains bitrate and duration, and the daemon protocol moves to version 2 for the new listing shape.
This commit is contained in:
@@ -1628,7 +1628,13 @@ mod tests {
|
||||
tui.state.browse.open("bob");
|
||||
let listing = vec![soulseek_rs::SharedDirectory {
|
||||
name: "Music".to_string(),
|
||||
files: (0..files).map(|i| (format!("{i:02}.mp3"), 1)).collect(),
|
||||
files: (0..files)
|
||||
.map(|i| soulseek_rs::SharedFileEntry {
|
||||
name: format!("{i:02}.mp3"),
|
||||
size: 1,
|
||||
attributes: Vec::new(),
|
||||
})
|
||||
.collect(),
|
||||
}];
|
||||
tui.state
|
||||
.browse
|
||||
|
||||
Reference in New Issue
Block a user