From 335a736eeda07aa770e796ded3df44babcc505c8 Mon Sep 17 00:00:00 2001 From: akliuxingyuan Date: Wed, 1 Nov 2023 22:20:30 +0800 Subject: [PATCH] tray: load_icon use request_size directly --- src/modules/sni/item.cpp | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/src/modules/sni/item.cpp b/src/modules/sni/item.cpp index dfaca665..c3de2357 100644 --- a/src/modules/sni/item.cpp +++ b/src/modules/sni/item.cpp @@ -356,32 +356,15 @@ Glib::RefPtr Item::getIconPixbuf() { } Glib::RefPtr Item::getIconByName(const std::string& name, int request_size) { - int tmp_size = 0; icon_theme->rescan_if_needed(); - auto sizes = icon_theme->get_icon_sizes(name.c_str()); - for (auto const& size : sizes) { - // -1 == scalable - if (size == request_size || size == -1) { - tmp_size = request_size; - break; - } else if (size < request_size) { - tmp_size = size; - } else if (size > tmp_size && tmp_size > 0) { - tmp_size = request_size; - break; - } - } - if (tmp_size == 0) { - tmp_size = request_size; - } if (!icon_theme_path.empty() && - icon_theme->lookup_icon(name.c_str(), tmp_size, + icon_theme->lookup_icon(name.c_str(), request_size, Gtk::IconLookupFlags::ICON_LOOKUP_FORCE_SIZE)) { - return icon_theme->load_icon(name.c_str(), tmp_size, + return icon_theme->load_icon(name.c_str(), request_size, Gtk::IconLookupFlags::ICON_LOOKUP_FORCE_SIZE); } - return DefaultGtkIconThemeWrapper::load_icon(name.c_str(), tmp_size, + return DefaultGtkIconThemeWrapper::load_icon(name.c_str(), request_size, Gtk::IconLookupFlags::ICON_LOOKUP_FORCE_SIZE); }