texture-cache: always call gdk_pixbuf_loader_set_size

Just use the regular image size if we don't want to scale it. This is a
refactor in preparation for the next commit.

https://bugzilla.gnome.org/show_bug.cgi?id=726907
This commit is contained in:
Cosimo Cecchi 2014-03-22 20:26:09 -07:00
parent 74d9b6c2bf
commit 90e52d7266

View File

@ -178,7 +178,7 @@ st_texture_cache_finalize (GObject *object)
G_OBJECT_CLASS (st_texture_cache_parent_class)->finalize (object);
}
static gboolean
static void
compute_pixbuf_scale (gint width,
gint height,
gint available_width,
@ -189,7 +189,10 @@ compute_pixbuf_scale (gint width,
int scaled_width, scaled_height;
if (width == 0 || height == 0)
return FALSE;
{
*new_width = *new_height = 0;
return;
}
if (available_width >= 0 && available_height >= 0)
{
@ -225,9 +228,12 @@ compute_pixbuf_scale (gint width,
{
*new_width = scaled_width;
*new_height = scaled_height;
return TRUE;
}
return FALSE;
else
{
*new_width = width;
*new_height = height;
}
}
static void
@ -314,9 +320,12 @@ on_image_size_prepared (GdkPixbufLoader *pixbuf_loader,
int scaled_width;
int scaled_height;
if (compute_pixbuf_scale (width, height, available_width, available_height,
&scaled_width, &scaled_height))
gdk_pixbuf_loader_set_size (pixbuf_loader, scaled_width, scaled_height);
compute_pixbuf_scale (width, height, available_width, available_height,
&scaled_width, &scaled_height);
gdk_pixbuf_loader_set_size (pixbuf_loader,
scaled_width,
scaled_height);
}
static GdkPixbuf *