summaryrefslogtreecommitdiffstats
path: root/native
diff options
context:
space:
mode:
authorLibravatar Michael Aaron Murphy <mmstick@pm.me>2022-10-09 16:35:28 +0200
committerLibravatar Michael Aaron Murphy <mmstick@pm.me>2022-10-11 21:56:01 +0200
commit8a50836ffc32a6d9157eb18740b3947c4dbd7d1f (patch)
tree7d49a214e838a8724fa392b547b847105adc7b00 /native
parent7ea7dbef578ddbe2a9a50da6aab253ba016f1362 (diff)
downloadiced-8a50836ffc32a6d9157eb18740b3947c4dbd7d1f.tar.gz
iced-8a50836ffc32a6d9157eb18740b3947c4dbd7d1f.tar.bz2
iced-8a50836ffc32a6d9157eb18740b3947c4dbd7d1f.zip
feat: Add window maximize support
Diffstat (limited to 'native')
-rw-r--r--native/src/window/action.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/native/src/window/action.rs b/native/src/window/action.rs
index ce125144..c49fdf9d 100644
--- a/native/src/window/action.rs
+++ b/native/src/window/action.rs
@@ -18,6 +18,8 @@ pub enum Action<T> {
/// The new logical height of the window
height: u32,
},
+ /// Sets the window to maximized or back
+ Maximize(bool),
/// Move the window.
///
/// Unsupported on Wayland.
@@ -29,6 +31,8 @@ pub enum Action<T> {
},
/// Set the [`Mode`] of the window.
SetMode(Mode),
+ /// Sets the window to maximized or back
+ ToggleMaximize,
/// Fetch the current [`Mode`] of the window.
FetchMode(Box<dyn FnOnce(Mode) -> T + 'static>),
}
@@ -45,8 +49,10 @@ impl<T> Action<T> {
match self {
Self::Drag => Action::Drag,
Self::Resize { width, height } => Action::Resize { width, height },
+ Self::Maximize(bool) => Action::Maximize(bool),
Self::Move { x, y } => Action::Move { x, y },
Self::SetMode(mode) => Action::SetMode(mode),
+ Self::ToggleMaximize => Action::ToggleMaximize,
Self::FetchMode(o) => Action::FetchMode(Box::new(move |s| f(o(s)))),
}
}
@@ -61,10 +67,12 @@ impl<T> fmt::Debug for Action<T> {
"Action::Resize {{ widget: {}, height: {} }}",
width, height
),
+ Self::Maximize(value) => write!(f, "Action::Maximize({})", value),
Self::Move { x, y } => {
write!(f, "Action::Move {{ x: {}, y: {} }}", x, y)
}
Self::SetMode(mode) => write!(f, "Action::SetMode({:?})", mode),
+ Self::ToggleMaximize => write!(f, "Action::ToggleMaximize"),
Self::FetchMode(_) => write!(f, "Action::FetchMode"),
}
}