From 5fddddf2964f25aa3eb823fd029833b05858d369 Mon Sep 17 00:00:00 2001 From: Kyle Scheuing Date: Thu, 11 Sep 2025 20:28:56 -0400 Subject: [PATCH] fix(dropdown): missing icon on windows --- res/icons/pan-down-symbolic.svg | 3 +++ src/widget/dropdown/widget.rs | 8 +++++++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 res/icons/pan-down-symbolic.svg diff --git a/res/icons/pan-down-symbolic.svg b/res/icons/pan-down-symbolic.svg new file mode 100644 index 00000000000..ce2a0b14e53 --- /dev/null +++ b/res/icons/pan-down-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/widget/dropdown/widget.rs b/src/widget/dropdown/widget.rs index d196215d935..5402bbfd479 100644 --- a/src/widget/dropdown/widget.rs +++ b/src/widget/dropdown/widget.rs @@ -373,8 +373,14 @@ pub struct State { impl State { /// Creates a new [`State`] for a [`Dropdown`]. pub fn new() -> Self { + #[cfg(target_os = "linux")] + let icon = icon::from_name("pan-down-symbolic").size(16).handle(); + #[cfg(not(target_os = "linux"))] + let icon = icon::from_svg_bytes(include_bytes!("../../../res/icons/pan-down-symbolic.svg")) + .symbolic(true); + Self { - icon: match icon::from_name("pan-down-symbolic").size(16).handle().data { + icon: match icon.data { icon::Data::Name(named) => named .path() .filter(|path| path.extension().is_some_and(|ext| ext == OsStr::new("svg")))