Skip to content

Commit

Permalink
Document Window Drop behavior (#3315)
Browse files Browse the repository at this point in the history
  • Loading branch information
daxpedda authored Jan 17, 2024
1 parent d1717b6 commit aec608f
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion src/window.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ use serde::{Deserialize, Serialize};

/// Represents a window.
///
/// The window is closed when dropped.
///
/// # Threading
///
Expand All @@ -30,7 +31,6 @@ use serde::{Deserialize, Serialize};
/// window from a thread other than the main, the code is scheduled to run on
/// the main thread, and your thread may be blocked until that completes.
///
///
/// # Example
///
/// ```no_run
Expand All @@ -54,6 +54,11 @@ use serde::{Deserialize, Serialize};
/// }
/// });
/// ```
///
/// ## Platform-specific
///
/// **Web:** The [`Window`], which is represented by a `HTMLElementCanvas`, can
/// not be closed by dropping the [`Window`].
pub struct Window {
pub(crate) window: platform_impl::Window,
}
Expand All @@ -65,6 +70,9 @@ impl fmt::Debug for Window {
}

impl Drop for Window {
/// This will close the [`Window`].
///
/// See [`Window`] for more details.
fn drop(&mut self) {
self.window.maybe_wait_on_main(|w| {
// If the window is in exclusive fullscreen, we must restore the desktop
Expand Down

0 comments on commit aec608f

Please sign in to comment.