From 3542fd986580df34a98e7ca798bee5a1c1402cd7 Mon Sep 17 00:00:00 2001 From: unsecretised Date: Mon, 5 Jan 2026 21:43:54 +0800 Subject: [PATCH 1/2] This adds finder to the apps list --- src/app/apps.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/app/apps.rs b/src/app/apps.rs index 458c105..f9b855c 100644 --- a/src/app/apps.rs +++ b/src/app/apps.rs @@ -61,6 +61,15 @@ impl App { name: format!("RustCast Version: {app_version}"), name_lc: "version".to_string(), }, + App { + open_command: Function::OpenApp( + "/System/Library/CoreServices/Finder.app".to_string(), + ), + desc: RUSTCAST_DESC_NAME.to_string(), + icons: None, + name: "Finder".to_string(), + name_lc: "finder".to_string(), + }, ] } From bd5e42fb1c59697b067f30d7d500ee365d953913 Mon Sep 17 00:00:00 2001 From: unsecretised Date: Mon, 5 Jan 2026 21:51:38 +0800 Subject: [PATCH 2/2] Load finder icon as well --- src/app/apps.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/app/apps.rs b/src/app/apps.rs index f9b855c..559904d 100644 --- a/src/app/apps.rs +++ b/src/app/apps.rs @@ -1,6 +1,8 @@ //! This modules handles the logic for each "app" that rustcast can load //! //! An "app" is effectively, one of the results that rustcast returns when you search for something +use std::path::Path; + use iced::{ Alignment, Background, Length::Fill, @@ -11,6 +13,7 @@ use iced::{ use crate::{ app::{Message, RUSTCAST_DESC_NAME}, commands::Function, + utils::handle_from_icns, }; /// The main app struct, that represents an "App" @@ -66,7 +69,9 @@ impl App { "/System/Library/CoreServices/Finder.app".to_string(), ), desc: RUSTCAST_DESC_NAME.to_string(), - icons: None, + icons: handle_from_icns(Path::new( + "/System/Library/CoreServices/Finder.app/Contents/Resources/Finder.icns", + )), name: "Finder".to_string(), name_lc: "finder".to_string(), },