Cleaner image loading setup

This commit is contained in:
2026-05-22 16:01:31 -05:00
parent de9b3a428f
commit 447b087188

View File

@@ -15,7 +15,7 @@ from .image_view import ImageView, PImage
class Image(Gtk.EventBox):
def __init__(self, path = None):
def __init__(self, path: str):
super(Image, self).__init__()
self._thumbnail_with = settings.get_thumbnail_with()
@@ -66,10 +66,13 @@ class Image(Gtk.EventBox):
if path.endswith(".gif"):
pixbuf = GdkPixbuf.PixbufAnimation.new_from_file(path).get_static_image()
if not pixbuf:
try:
pixbuf = Gtk.Image.new_from_file(path).get_pixbuf()
except Exception:
pixbuf = Gtk.Image.new_from_resource(path).get_pixbuf()
if pixbuf:
return pixbuf.scale_simple(w, h, 2) # 2 = BILINEAR and is best by default
try:
return GdkPixbuf.Pixbuf.new_from_file_at_scale(path, w, h, True)
except Exception:
return Gtk.Image.new_from_resource(path) \
.get_pixbuf() \
.scale_simple(w, h, 2) # 2 = BILINEAR and is best by default