mirror of
https://github.com/rust-windowing/winit.git
synced 2026-09-01 14:20:05 -04:00
Close NSWindow when Window is dropped if not already closed.
Previously, if a `Window` was `Drop`ped while open, the window would remain open until the user pressed the x button. This fixes the behaviour so that the window is closed when dropped if it has not already been closed.
This commit is contained in:
@@ -181,6 +181,14 @@ impl Drop for Window {
|
|||||||
if let Some(ev) = self.delegate.state.events_loop.upgrade() {
|
if let Some(ev) = self.delegate.state.events_loop.upgrade() {
|
||||||
ev.find_and_remove_window(id);
|
ev.find_and_remove_window(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Close the window if it has not yet been closed.
|
||||||
|
let nswindow = *self.window;
|
||||||
|
if nswindow != nil {
|
||||||
|
unsafe {
|
||||||
|
msg_send![nswindow, close];
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user