Render images on background thread to keep UI responsive
This commit is contained in:
+6
-2
@@ -20,6 +20,7 @@ use crate::{
|
||||
input::MappingProvider,
|
||||
memory::MemoryMonitor,
|
||||
persistence::Persistence,
|
||||
vram::VramProcessor,
|
||||
window::{
|
||||
AboutWindow, AppWindow, BgMapWindow, CharacterDataWindow, GameWindow, GdbServerWindow,
|
||||
InputWindow,
|
||||
@@ -45,6 +46,7 @@ pub struct Application {
|
||||
mappings: MappingProvider,
|
||||
controllers: ControllerManager,
|
||||
memory: MemoryMonitor,
|
||||
vram: VramProcessor,
|
||||
persistence: Persistence,
|
||||
viewports: HashMap<ViewportId, Viewport>,
|
||||
focused: Option<ViewportId>,
|
||||
@@ -63,6 +65,7 @@ impl Application {
|
||||
let mappings = MappingProvider::new(persistence.clone());
|
||||
let controllers = ControllerManager::new(client.clone(), &mappings);
|
||||
let memory = MemoryMonitor::new(client.clone());
|
||||
let vram = VramProcessor::new();
|
||||
{
|
||||
let mappings = mappings.clone();
|
||||
let proxy = proxy.clone();
|
||||
@@ -75,6 +78,7 @@ impl Application {
|
||||
proxy,
|
||||
mappings,
|
||||
memory,
|
||||
vram,
|
||||
controllers,
|
||||
persistence,
|
||||
viewports: HashMap::new(),
|
||||
@@ -205,11 +209,11 @@ impl ApplicationHandler<UserEvent> for Application {
|
||||
self.open(event_loop, Box::new(about));
|
||||
}
|
||||
UserEvent::OpenCharacterData(sim_id) => {
|
||||
let vram = CharacterDataWindow::new(sim_id, &mut self.memory);
|
||||
let vram = CharacterDataWindow::new(sim_id, &mut self.memory, &mut self.vram);
|
||||
self.open(event_loop, Box::new(vram));
|
||||
}
|
||||
UserEvent::OpenBgMap(sim_id) => {
|
||||
let bgmap = BgMapWindow::new(sim_id, &mut self.memory);
|
||||
let bgmap = BgMapWindow::new(sim_id, &mut self.memory, &mut self.vram);
|
||||
self.open(event_loop, Box::new(bgmap));
|
||||
}
|
||||
UserEvent::OpenDebugger(sim_id) => {
|
||||
|
||||
Reference in New Issue
Block a user