pub enum WindowCommand {
Drag,
Minimize,
ToggleMaximize,
SetMaximized(bool),
Close,
SetTitle(String),
Focus,
SetCursor(Cursor),
}Expand description
A window-management action requested by UI code (a custom title bar’s buttons) and applied by the runner
to the OS window after event dispatch. Enqueued via push_window_command and drained via
take_window_commands; kept as data (rather than direct Window calls) because widget closures run
deep in the tree walk with no access to the platform window.
Variants§
Drag
Begin an OS-driven interactive move (drag the window by its title bar). Must originate from a pointer-press handler so the platform can latch onto the in-progress drag.
Minimize
Minimize the window to the taskbar/dock.
ToggleMaximize
Toggle between maximized and restored.
SetMaximized(bool)
Explicitly set the maximized state.
Close
Close the window (and, for a single-window app, exit the app).
SetTitle(String)
Update the OS window title.
Focus
Bring the window to the front and give it input focus. Honored where the window manager allows programmatic activation (some Wayland compositors ignore it).
SetCursor(Cursor)
Set the pointer shape. Pushed from a hover handler, which is why it is a command rather than a property: the widget under the pointer decides, and it changes many times per second.
Trait Implementations§
Source§impl Clone for WindowCommand
impl Clone for WindowCommand
Source§fn clone(&self) -> WindowCommand
fn clone(&self) -> WindowCommand
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WindowCommand
impl Debug for WindowCommand
Source§impl PartialEq for WindowCommand
impl PartialEq for WindowCommand
impl StructuralPartialEq for WindowCommand
Auto Trait Implementations§
impl Freeze for WindowCommand
impl RefUnwindSafe for WindowCommand
impl Send for WindowCommand
impl Sync for WindowCommand
impl Unpin for WindowCommand
impl UnsafeUnpin for WindowCommand
impl UnwindSafe for WindowCommand
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more