Album art now works!

master
Joey Pollack 2 years ago
parent c64e8f3178
commit 0dbfa1874b

@ -0,0 +1,45 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug executable 'jpmmv'",
"cargo": {
"args": [
"build",
"--bin=jpmmv",
"--package=jpmmv"
],
"filter": {
"name": "jpmmv",
"kind": "bin"
}
},
"args": [],
"cwd": "${workspaceFolder}"
},
{
"type": "lldb",
"request": "launch",
"name": "Debug unit tests in executable 'jpmmv'",
"cargo": {
"args": [
"test",
"--no-run",
"--bin=jpmmv",
"--package=jpmmv"
],
"filter": {
"name": "jpmmv",
"kind": "bin"
}
},
"args": [],
"cwd": "${workspaceFolder}"
}
]
}

@ -9,7 +9,8 @@ fn main() -> Result<(), eframe::Error>
env_logger::init(); // Log to stderr (if you run with `RUST_LOG=debug`). env_logger::init(); // Log to stderr (if you run with `RUST_LOG=debug`).
let options = eframe::NativeOptions let options = eframe::NativeOptions
{ {
viewport: egui::ViewportBuilder::default().with_inner_size([600.0, 160.0]), viewport: egui::ViewportBuilder::default().with_inner_size([600.0, 160.0])
.with_min_inner_size([600.0, 160.0]),
..Default::default() ..Default::default()
}; };
eframe::run_native( eframe::run_native(
@ -60,10 +61,19 @@ impl eframe::App for JpmmvApp
ui.horizontal_centered(|ui| ui.horizontal_centered(|ui|
{ {
// ui.image(egui::include_image!("../assets/Music Note.png")); // ui.image(egui::include_image!("../assets/Music Note.png"));
ui.add(
egui::Image::new(self.current_metadata.art_url.clone()) ui.vertical(|ui|
{
// ui.label(self.current_metadata.art_url.clone());
ui.add(//self.current_metadata.art_url.clone()
//egui::Image::from_uri("file:///tmp/strawberry-cover-UgoFhf.jpg")
egui::Image::from_uri(self.current_metadata.art_url.clone())
.max_width(240.0) .max_width(240.0)
); );
});
ui.style_mut().text_styles.insert( ui.style_mut().text_styles.insert(

@ -1,6 +1,6 @@
use std::{process::Command, str}; use std::{process::Command, str, fs, fs::File};
pub struct SongMetadata pub struct SongMetadata
{ {
@ -45,8 +45,43 @@ pub fn get_song_metadata() -> SongMetadata
sm.artist = split[1].to_string(); sm.artist = split[1].to_string();
sm.album = split[2].to_string(); sm.album = split[2].to_string();
sm.art_url = split[3].to_string(); sm.art_url = split[3].to_string();
sm.art_url = sm.art_url.trim().to_string();
// let test_url = sm.art_url.trim_start_matches("file://").to_string();
// let test_url = test_url.trim();
// let paths = fs::read_dir("/tmp").unwrap();
// //println!("List of files in /tmp:");
// for path in paths
// {
// let name = path.unwrap().path();
// if name.to_str().unwrap().to_string().contains("strawberry-cover")
// {
// let temp = name.to_str().unwrap().to_string();
// let temp = temp.trim();
// println!("Found possible art file\n\tFound: {} \n\tCompare: {}", name.display(), test_url);
// if temp == test_url
// {
// println!("Attemping to open file: {}", name.display());
// let f = match File::open(name.clone())
// {
// Ok(f) => f,
// Err(e) => panic!("Failed open album art file: {}", e)
// };
// println!("File found!\t\n\n");
// break;
// }
// else
// {
// println!("\tNO MATCH\n\n");
// }
// }
// }
sm return sm;
} }
pub fn next_track() pub fn next_track()

Loading…
Cancel
Save