Compare commits

..

2 Commits
v0.7.0 ... main

Author SHA1 Message Date
Simon Gellis dc072cc2ba chore: Release lemur version 0.7.1 2025-07-14 19:34:16 -04:00
Simon Gellis 3ac13d0cf2 Use sync file dialog for screenshots 2025-07-14 19:33:36 -04:00
3 changed files with 7 additions and 10 deletions

2
Cargo.lock generated
View File

@ -1832,7 +1832,7 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
[[package]] [[package]]
name = "lemur" name = "lemur"
version = "0.7.0" version = "0.7.1"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"atoi", "atoi",

View File

@ -4,7 +4,7 @@ description = "An emulator for the Virtual Boy."
repository = "https://git.virtual-boy.com/PVB/lemur" repository = "https://git.virtual-boy.com/PVB/lemur"
publish = false publish = false
license = "MIT" license = "MIT"
version = "0.7.0" version = "0.7.1"
edition = "2024" edition = "2024"
[dependencies] [dependencies]

View File

@ -311,12 +311,11 @@ impl GameWindow {
self.client self.client
.send_command(EmulatorCommand::Screenshot(self.sim_id, tx)); .send_command(EmulatorCommand::Screenshot(self.sim_id, tx));
let bytes = rx.await.context("Could not take screenshot")?; let bytes = rx.await.context("Could not take screenshot")?;
let file = rfd::AsyncFileDialog::new() let file = rfd::FileDialog::new()
.add_filter("PNG images", &["png"]) .add_filter("PNG images", &["png"])
.set_file_name("screenshot.png") .set_file_name("screenshot.png")
.save_file() .save_file();
.await; let Some(path) = file else {
let Some(file) = file else {
return Ok(None); return Ok(None);
}; };
if bytes.len() != 384 * 224 * 2 { if bytes.len() != 384 * 224 * 2 {
@ -328,10 +327,8 @@ impl GameWindow {
let y = (index / 2) / 384; let y = (index / 2) / 384;
screencap.put_pixel(x as u32, y as u32, image::Luma([pixel])); screencap.put_pixel(x as u32, y as u32, image::Luma([pixel]));
} }
screencap screencap.save(&path).context("Could not save screenshot")?;
.save(&file.path()) Ok(Some(path.display().to_string()))
.context("Could not save screenshot")?;
Ok(Some(file.path().display().to_string()))
} }
fn show_options_menu(&mut self, ctx: &Context, ui: &mut Ui) { fn show_options_menu(&mut self, ctx: &Context, ui: &mut Ui) {