From a70bedd6bbc9e06598247c19ad231fd94ec141f7 Mon Sep 17 00:00:00 2001 From: Halit Can Date: Sun, 12 Jul 2026 03:59:24 +0300 Subject: [PATCH] feat: initialize window ID on startup and batch keyboard subscription with additional event handling --- hcie-iced-app/crates/hcie-iced-gui/src/app.rs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/hcie-iced-app/crates/hcie-iced-gui/src/app.rs b/hcie-iced-app/crates/hcie-iced-gui/src/app.rs index c16e1a4..a57d249 100644 --- a/hcie-iced-app/crates/hcie-iced-gui/src/app.rs +++ b/hcie-iced-app/crates/hcie-iced-gui/src/app.rs @@ -468,7 +468,13 @@ impl HcieIcedApp { } app.initialized = true; - let init_task = Task::none(); + let init_task = iced::window::get_oldest().map(|opt_id| { + if let Some(id) = opt_id { + Message::WindowId(id) + } else { + Message::NoOp + } + }); (app, init_task) } @@ -1817,7 +1823,7 @@ impl HcieIcedApp { /// - Ctrl+V: Paste /// - Escape: Close dialog pub fn subscription(&self) -> iced::Subscription { - iced::keyboard::on_key_press(|key, modifiers| { + let keyboard = iced::keyboard::on_key_press(|key, modifiers| { let ctrl = modifiers.control() || modifiers.logo(); let shift = modifiers.shift(); @@ -1863,6 +1869,8 @@ impl HcieIcedApp { } _ => None, } - }) + }); + + iced::Subscription::batch(vec![keyboard]) } }