pub enum Action<T> {
Show 14 variants Close, Drag, Resize { width: u32, height: u32, }, Maximize(bool), Minimize(bool), Move { x: i32, y: i32, }, ChangeMode(Mode), FetchMode(Box<dyn FnOnce(Mode) -> T + 'static>), ToggleMaximize, ToggleDecorations, RequestUserAttention(Option<UserAttention>), GainFocus, ChangeAlwaysOnTop(bool), FetchId(Box<dyn FnOnce(u64) -> T + 'static>),
}
Expand description

An operation to be performed on some window.

Variants§

§

Close

Closes the current window and exits the application.

§

Drag

Moves the window with the left mouse button until the button is released.

There’s no guarantee that this will work unless the left mouse button was pressed immediately before this function is called.

§

Resize

Fields

§width: u32

The new logical width of the window

§height: u32

The new logical height of the window

Resize the window.

§

Maximize(bool)

Sets the window to maximized or back

§

Minimize(bool)

Set the window to minimized or back

§

Move

Fields

§x: i32

The new logical x location of the window

§y: i32

The new logical y location of the window

Move the window.

Unsupported on Wayland.

§

ChangeMode(Mode)

Change the Mode of the window.

§

FetchMode(Box<dyn FnOnce(Mode) -> T + 'static>)

Fetch the current Mode of the window.

§

ToggleMaximize

Toggle the window to maximized or back

§

ToggleDecorations

Toggle whether window has decorations.

Platform-specific
  • X11: Not implemented.
  • Web: Unsupported.
§

RequestUserAttention(Option<UserAttention>)

Request user attention to the window, this has no effect if the application is already focused. How requesting for user attention manifests is platform dependent, see UserAttention for details.

Providing None will unset the request for user attention. Unsetting the request for user attention might not be done automatically by the WM when the window receives input.

Platform-specific
  • iOS / Android / Web: Unsupported.
  • macOS: None has no effect.
  • X11: Requests for user attention must be manually cleared.
  • Wayland: Requires xdg_activation_v1 protocol, None has no effect.
§

GainFocus

Bring the window to the front and sets input focus. Has no effect if the window is already in focus, minimized, or not visible.

This method steals input focus from other applications. Do not use this method unless you are certain that’s what the user wants. Focus stealing can cause an extremely disruptive user experience.

Platform-specific
  • Web / Wayland: Unsupported.
§

ChangeAlwaysOnTop(bool)

Change whether or not the window will always be on top of other windows.

Platform-specific
  • Web / Wayland: Unsupported.
§

FetchId(Box<dyn FnOnce(u64) -> T + 'static>)

Fetch an identifier unique to the window.

Implementations§

source§

impl<T> Action<T>

source

pub fn map<A>(self, f: impl Fn(T) -> A + 'static + MaybeSend + Sync) -> Action<A>where T: 'static,

Maps the output of a window Action using the provided closure.

Trait Implementations§

source§

impl<T> Debug for Action<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for Action<T>

§

impl<T> !Send for Action<T>

§

impl<T> !Sync for Action<T>

§

impl<T> Unpin for Action<T>

§

impl<T> !UnwindSafe for Action<T>

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere T: FloatComponent, Swp: WhitePoint, Dwp: WhitePoint, D: AdaptFrom<S, Swp, Dwp, T>,

source§

fn adapt_into_using<M>(self, method: M) -> Dwhere M: TransformMatrix<Swp, Dwp, T>,

Convert the source color to the destination color using the specified method
source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default
source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> IntoColor<U> for Twhere U: FromColor<T>,

source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
source§

impl<T, U> IntoColorUnclamped<U> for Twhere U: FromColorUnclamped<T>,

source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T, U> TryIntoColor<U> for Twhere U: TryFromColor<T>,

source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more