aboutsummaryrefslogtreecommitdiff
path: root/src/io.rs
diff options
context:
space:
mode:
authorAstatin <[email protected]>2025-07-15 18:57:03 +0200
committerAstatin <[email protected]>2025-07-15 18:57:03 +0200
commitc6972abff6c81565a41df8731509435274a80c1f (patch)
tree5d73ee5e68132df3465ad1b2b260940b6b40f1b7 /src/io.rs
parent81f8a04c38671a82c756450bbe13803e1701ada0 (diff)
Make render function not block when window is suspended
Diffstat (limited to 'src/io.rs')
-rw-r--r--src/io.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/io.rs b/src/io.rs
index fae191a..92e5984 100644
--- a/src/io.rs
+++ b/src/io.rs
@@ -31,7 +31,7 @@ pub enum WindowSignal {
}
pub trait Window {
- fn update(&mut self, fb: &[u32; 160 * 144]) -> Option<WindowSignal>;
+ fn update(&mut self, fb: Box<[u32; 160 * 144]>) -> Option<WindowSignal>;
}
pub trait Serial {
@@ -208,8 +208,8 @@ impl<I: Input, W: Window, S: Serial, A: Audio, LS: LoadSave> Gameboy<I, W, S, A,
}
if nanos_sleep > 0.0 {
- if let Some(fb) = state.mem.display.redraw_request {
- if let Some(WindowSignal::Exit) = window.update(&fb) {
+ if let Some(fb) = state.mem.display.get_redraw_request() {
+ if let Some(WindowSignal::Exit) = window.update(fb) {
break;
}
}