From caf384f8267a7e71dfa2b1b7f3ac6781e57cc9c5 Mon Sep 17 00:00:00 2001 From: unsecretised Date: Wed, 25 Mar 2026 15:01:11 +0800 Subject: [PATCH 1/2] Fix wrapping issue on clipboard page --- src/app/apps.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/apps.rs b/src/app/apps.rs index 3471fd31..b3954d1d 100644 --- a/src/app/apps.rs +++ b/src/app/apps.rs @@ -175,7 +175,7 @@ impl App { Text::new(self.display_name) .font(theme.font()) .size(16) - .wrapping(Wrapping::WordOrGlyph) + .wrapping(Wrapping::None) .color(theme.text_color(1.0)), ) .push( From e306f0b84e68eca74bf5593b59e855349ba6981f Mon Sep 17 00:00:00 2001 From: unsecretised Date: Wed, 25 Mar 2026 17:31:47 +0800 Subject: [PATCH 2/2] add #219 --- src/app/menubar.rs | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/app/menubar.rs b/src/app/menubar.rs index ee12fbed..99d0fb53 100644 --- a/src/app/menubar.rs +++ b/src/app/menubar.rs @@ -39,14 +39,14 @@ pub fn menu_icon(config: Config, sender: ExtSender) -> TrayIcon { } pub fn menu_builder(config: Config, sender: ExtSender, update_item: bool) -> Menu { - let hotkey = config.toggle_hotkey.parse::().unwrap(); + let hotkey = config.toggle_hotkey.parse::().ok(); let mut modes = config.modes; if !modes.contains_key("default") { modes.insert("Default".to_string(), "default".to_string()); } - init_event_handler(sender, hotkey.id()); + init_event_handler(sender, hotkey.map(|x| x.id)); Menu::with_items(&[ &MenuItem::with_id( @@ -86,7 +86,7 @@ fn get_image() -> DynamicImage { .unwrap() } -fn init_event_handler(sender: ExtSender, hotkey_id: u32) { +fn init_event_handler(sender: ExtSender, hotkey_id: Option) { let runtime = Runtime::new().unwrap(); MenuEvent::set_event_handler(Some(move |x: MenuEvent| { @@ -107,12 +107,11 @@ fn init_event_handler(sender: ExtSender, hotkey_id: u32) { open_url("https://github.com/unsecretised/rustcast/issues/new"); } "show_rustcast" => { - runtime.spawn(async move { - sender - .clone() - .try_send(Message::KeyPressed(hotkey_id)) - .unwrap(); - }); + if let Some(hk) = hotkey_id { + runtime.spawn(async move { + sender.clone().try_send(Message::KeyPressed(hk)).unwrap(); + }); + } } "update" => { open_url("https://github.com/unsecretised/rustcast/releases/latest"); @@ -179,12 +178,12 @@ fn mode_item(modes: HashMap) -> Submenu { Submenu::with_items("Modes", true, &items).unwrap() } -fn open_item(hotkey: HotKey) -> MenuItem { +fn open_item(hotkey: Option) -> MenuItem { MenuItem::with_id( "show_rustcast", "Toggle View", true, - Some(Accelerator::new(Some(hotkey.mods), hotkey.key)), + hotkey.map(|hk| Accelerator::new(Some(hk.mods), hk.key)), ) }