diff --git a/src/lib.rs b/src/lib.rs index ac4db6d..46b3e3e 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -41,8 +41,8 @@ use bevy_utils::{ use bevy_window::{ exit_on_all_closed, CursorEntered, CursorLeft, CursorMoved, FileDragAndDrop, Ime, ReceivedCharacter, RequestRedraw, Window, WindowBackendScaleFactorChanged, - WindowCloseRequested, WindowCreated, WindowFocused, WindowMoved, WindowResized, - WindowScaleFactorChanged, WindowThemeChanged, + WindowCloseRequested, WindowCreated, WindowDestroyed, WindowFocused, WindowMoved, + WindowResized, WindowScaleFactorChanged, WindowThemeChanged, }; #[cfg(target_os = "android")] @@ -231,6 +231,7 @@ struct WindowEvents<'w> { window_focused: EventWriter<'w, WindowFocused>, window_moved: EventWriter<'w, WindowMoved>, window_theme_changed: EventWriter<'w, WindowThemeChanged>, + window_destroyed: EventWriter<'w, WindowDestroyed>, } #[derive(SystemParam)] @@ -638,6 +639,11 @@ pub fn winit_runner(mut app: App) { theme: convert_winit_theme(theme), }); } + WindowEvent::Destroyed => { + window_events.window_destroyed.send(WindowDestroyed { + window: window_entity, + }); + } _ => {} }