summaryrefslogtreecommitdiffstats
path: root/winit
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-06-20 01:13:09 +0200
committerLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-06-20 01:13:09 +0200
commit92e08c8f07511cc212cbce545fb7739ef1a4bf1f (patch)
tree9b8a1e7746b13148168109bdbcfc8f94b84c252a /winit
parentbdd30f7ab8c2280c368b86cb12baec0578669d44 (diff)
downloadiced-92e08c8f07511cc212cbce545fb7739ef1a4bf1f.tar.gz
iced-92e08c8f07511cc212cbce545fb7739ef1a4bf1f.tar.bz2
iced-92e08c8f07511cc212cbce545fb7739ef1a4bf1f.zip
Add `get_latest` and `get_oldest` tasks in `window`
Diffstat (limited to 'winit')
-rw-r--r--winit/src/program.rs24
1 files changed, 18 insertions, 6 deletions
diff --git a/winit/src/program.rs b/winit/src/program.rs
index 62f8b6af..2e7945ac 100644
--- a/winit/src/program.rs
+++ b/winit/src/program.rs
@@ -1165,6 +1165,18 @@ fn run_action<P, C>(
let _ = window_manager.remove(id);
let _ = ui_caches.remove(&id);
}
+ window::Action::GetOldest(channel) => {
+ let id =
+ window_manager.iter_mut().next().map(|(id, _window)| id);
+
+ let _ = channel.send(id);
+ }
+ window::Action::GetLatest(channel) => {
+ let id =
+ window_manager.iter_mut().last().map(|(id, _window)| id);
+
+ let _ = channel.send(id);
+ }
window::Action::Drag(id) => {
if let Some(window) = window_manager.get_mut(id) {
let _ = window.raw.drag_window();
@@ -1180,7 +1192,7 @@ fn run_action<P, C>(
);
}
}
- window::Action::FetchSize(id, channel) => {
+ window::Action::GetSize(id, channel) => {
if let Some(window) = window_manager.get_mut(id) {
let size = window
.raw
@@ -1190,7 +1202,7 @@ fn run_action<P, C>(
let _ = channel.send(Size::new(size.width, size.height));
}
}
- window::Action::FetchMaximized(id, channel) => {
+ window::Action::GetMaximized(id, channel) => {
if let Some(window) = window_manager.get_mut(id) {
let _ = channel.send(window.raw.is_maximized());
}
@@ -1200,7 +1212,7 @@ fn run_action<P, C>(
window.raw.set_maximized(maximized);
}
}
- window::Action::FetchMinimized(id, channel) => {
+ window::Action::GetMinimized(id, channel) => {
if let Some(window) = window_manager.get_mut(id) {
let _ = channel.send(window.raw.is_minimized());
}
@@ -1210,7 +1222,7 @@ fn run_action<P, C>(
window.raw.set_minimized(minimized);
}
}
- window::Action::FetchPosition(id, channel) => {
+ window::Action::GetPosition(id, channel) => {
if let Some(window) = window_manager.get_mut(id) {
let position = window
.raw
@@ -1250,7 +1262,7 @@ fn run_action<P, C>(
window.raw.set_window_icon(conversion::icon(icon));
}
}
- window::Action::FetchMode(id, channel) => {
+ window::Action::GetMode(id, channel) => {
if let Some(window) = window_manager.get_mut(id) {
let mode = if window.raw.is_visible().unwrap_or(true) {
conversion::mode(window.raw.fullscreen())
@@ -1304,7 +1316,7 @@ fn run_action<P, C>(
}
}
}
- window::Action::FetchRawId(id, channel) => {
+ window::Action::GetRawId(id, channel) => {
if let Some(window) = window_manager.get_mut(id) {
let _ = channel.send(window.raw.id().into());
}