diff options
author | Gaël Bonithon <gael@xfce.org> | 2021-12-22 12:41:47 +0100 |
---|---|---|
committer | Gaël Bonithon <gael@xfce.org> | 2021-12-22 13:06:47 +0100 |
commit | 01548638d5a59191076551a9ce1be7f6b1616262 (patch) | |
tree | c872e1b201115b574646fbabc0f841b925dd32e9 /plugins/pixbuf-thumbnailer | |
parent | 62d0f3e2faaf4cdab3dd9f45eaa03cb9ad4219c6 (diff) | |
download | tumbler-01548638d5a59191076551a9ce1be7f6b1616262.tar.gz |
Refactoring: Avoid code duplication
Diffstat (limited to 'plugins/pixbuf-thumbnailer')
-rw-r--r-- | plugins/pixbuf-thumbnailer/pixbuf-thumbnailer.c | 47 |
1 files changed, 1 insertions, 46 deletions
diff --git a/plugins/pixbuf-thumbnailer/pixbuf-thumbnailer.c b/plugins/pixbuf-thumbnailer/pixbuf-thumbnailer.c index 7c01a63..813b069 100644 --- a/plugins/pixbuf-thumbnailer/pixbuf-thumbnailer.c +++ b/plugins/pixbuf-thumbnailer/pixbuf-thumbnailer.c @@ -22,8 +22,6 @@ #include <config.h> #endif -#include <math.h> - #include <glib.h> #include <glib/gi18n.h> #include <glib-object.h> @@ -107,49 +105,6 @@ pixbuf_thumbnailer_init (PixbufThumbnailer *thumbnailer) -static void -pixbuf_thumbnailer_size_prepared (GdkPixbufLoader *loader, - gint source_width, - gint source_height, - TumblerThumbnail *thumbnail) -{ - TumblerThumbnailFlavor *flavor; - gint dest_width; - gint dest_height; - gdouble hratio; - gdouble wratio; - - g_return_if_fail (GDK_IS_PIXBUF_LOADER (loader)); - g_return_if_fail (TUMBLER_IS_THUMBNAIL (thumbnail)); - - flavor = tumbler_thumbnail_get_flavor (thumbnail); - tumbler_thumbnail_flavor_get_size (flavor, &dest_width, &dest_height); - g_object_unref (flavor); - - if (source_width <= dest_width && source_height <= dest_height) - { - /* do not scale the image */ - dest_width = source_width; - dest_height = source_height; - } - else - { - /* determine which axis needs to be scaled down more */ - wratio = (gdouble) source_width / (gdouble) dest_width; - hratio = (gdouble) source_height / (gdouble) dest_height; - - /* adjust the other axis */ - if (hratio > wratio) - dest_width = rint (source_width / hratio); - else - dest_height = rint (source_height / wratio); - } - - gdk_pixbuf_loader_set_size (loader, MAX (dest_width, 1), MAX (dest_height, 1)); -} - - - static GdkPixbuf * pixbuf_thumbnailer_new_from_stream (GInputStream *stream, TumblerThumbnail *thumbnail, @@ -176,7 +131,7 @@ pixbuf_thumbnailer_new_from_stream (GInputStream *stream, loader = gdk_pixbuf_loader_new (); g_signal_connect (loader, "size-prepared", - G_CALLBACK (pixbuf_thumbnailer_size_prepared), thumbnail); + G_CALLBACK (thumbler_util_size_prepared), thumbnail); buffer = g_new (guchar, LOADER_BUFFER_SIZE); for (;;) |