Patch by Tasos Sahanidis Ubuntu 15.04 doesn't return the icons in 16x16 so the FORCE_SIZE flag needs to be used. Additionally, external icons need to be scaled to match the rest. --- a/src/mainwindow.cc +++ b/src/mainwindow.cc @@ -241,14 +241,19 @@ theme = Gtk::IconTheme::get_default(); try { - pixbuf = theme->load_icon(name, width, Gtk::ICON_LOOKUP_GENERIC_FALLBACK); + pixbuf = theme->load_icon(name, width, Gtk::ICON_LOOKUP_GENERIC_FALLBACK | Gtk::ICON_LOOKUP_FORCE_SIZE); if (pixbuf) i->set(pixbuf); - else - i->set(name); + else { + Glib::RefPtr pixbuf = Gdk::Pixbuf::create_from_file(name); + pixbuf = pixbuf->scale_simple(width, height, Gdk::INTERP_BILINEAR); + i->set(pixbuf); + } } catch (Gtk::IconThemeError &e) { - i->set(name); + Glib::RefPtr pixbuf = Gdk::Pixbuf::create_from_file(name); + pixbuf = pixbuf->scale_simple(width, height, Gdk::INTERP_BILINEAR); + i->set(pixbuf); } catch (Gio::Error &e) { i->set(name); }