wayvr overlay removal

This commit is contained in:
galister
2025-12-26 13:19:57 +09:00
parent 771ade368c
commit dc6d03605f
4 changed files with 21 additions and 3 deletions

View File

@@ -353,10 +353,11 @@ impl WayVR {
continue;
};
if let Some(oid) = self.state.window_to_overlay.get(&window_handle) {
if let Some(oid) = self.state.window_to_overlay.remove(&window_handle) {
app.tasks.enqueue(TaskType::Overlay(OverlayTask::Drop(
OverlaySelector::Id(*oid),
OverlaySelector::Id(oid),
)));
self.state.overlay_to_window.remove(oid);
}
self.state.wm.remove_window(window_handle);
@@ -389,6 +390,11 @@ impl WayVR {
.tasks
.send(WayVRTask::ProcessTerminationRequest(process_handle));
}
pub fn overlay_added(&mut self, oid: OverlayID, window: window::WindowHandle) {
self.state.overlay_to_window.insert(oid, window);
self.state.window_to_overlay.insert(window, oid);
}
}
impl WayVRState {