summaryrefslogtreecommitdiffstats
path: root/winit/src/window.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2022-08-18 14:39:15 +0200
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2022-08-18 14:39:15 +0200
commit11f5527d7645619f49b030e30485f24ac637efbd (patch)
tree489f7cfbb134b8736290f30010fe680a31c90423 /winit/src/window.rs
parent277b848ad8df1e8d038e33707548a45d63a601db (diff)
downloadiced-11f5527d7645619f49b030e30485f24ac637efbd.tar.gz
iced-11f5527d7645619f49b030e30485f24ac637efbd.tar.bz2
iced-11f5527d7645619f49b030e30485f24ac637efbd.zip
Implement `SetMode` and `FetchMode` window actions
Diffstat (limited to 'winit/src/window.rs')
-rw-r--r--winit/src/window.rs16
1 files changed, 15 insertions, 1 deletions
diff --git a/winit/src/window.rs b/winit/src/window.rs
index f3207e68..265139f7 100644
--- a/winit/src/window.rs
+++ b/winit/src/window.rs
@@ -2,7 +2,7 @@
use crate::command::{self, Command};
use iced_native::window;
-pub use window::Event;
+pub use window::{Event, Mode};
/// Resizes the window to the given logical dimensions.
pub fn resize<Message>(width: u32, height: u32) -> Command<Message> {
@@ -16,3 +16,17 @@ pub fn resize<Message>(width: u32, height: u32) -> Command<Message> {
pub fn move_to<Message>(x: i32, y: i32) -> Command<Message> {
Command::single(command::Action::Window(window::Action::Move { x, y }))
}
+
+/// Sets the [`Mode`] of the window.
+pub fn set_mode<Message>(mode: Mode) -> Command<Message> {
+ Command::single(command::Action::Window(window::Action::SetMode(mode)))
+}
+
+/// Fetches the current [`Mode`] of the window.
+pub fn fetch_mode<Message>(
+ f: impl FnOnce(Mode) -> Message + 'static,
+) -> Command<Message> {
+ Command::single(command::Action::Window(window::Action::FetchMode(
+ Box::new(f),
+ )))
+}