fix: prefer SVG file icons

This commit is contained in:
Michael Aaron Murphy 2026-05-05 14:47:34 +02:00
parent 750c92c841
commit 6946e95c88
No known key found for this signature in database
GPG key ID: B2732D4240C9212C
2 changed files with 10 additions and 3 deletions

View file

@ -45,7 +45,7 @@ impl MimeIconCache {
return None;
}
let icon_name = icon_names.remove(0);
let mut named = icon::from_name(icon_name).size(key.size);
let mut named = icon::from_name(icon_name).prefer_svg(true).size(key.size);
if !icon_names.is_empty() {
let fallback_names =
icon_names.into_iter().map(std::borrow::Cow::from).collect();
@ -112,7 +112,10 @@ pub fn mime_icon(mime: Mime, size: u16) -> icon::Handle {
let mut mime_icon_cache = MIME_ICON_CACHE.lock().unwrap();
match mime_icon_cache.get(MimeIconKey { mime, size }) {
Some(handle) => handle,
None => icon::from_name(FALLBACK_MIME_ICON).size(size).handle(),
None => icon::from_name(FALLBACK_MIME_ICON)
.prefer_svg(true)
.size(size)
.handle(),
}
}

View file

@ -269,6 +269,7 @@ fn button_style(
pub fn folder_icon(path: &PathBuf, icon_size: u16) -> widget::icon::Handle {
widget::icon::from_name(SPECIAL_DIRS.get(path).map_or("folder", |x| *x))
.prefer_svg(true)
.size(icon_size)
.handle()
}
@ -581,7 +582,10 @@ fn desktop_icon_handle(icon: &str, size: u16) -> widget::icon::Handle {
if icon_path.is_absolute() && icon_path.exists() {
widget::icon::from_path(icon_path.to_path_buf())
} else {
widget::icon::from_name(icon).size(size).handle()
widget::icon::from_name(icon)
.prefer_svg(true)
.size(size)
.handle()
}
}