summaryrefslogtreecommitdiff
path: root/plugins/pixbuf-thumbnailer
diff options
context:
space:
mode:
authorGaël Bonithon <gael@xfce.org>2021-12-22 12:41:47 +0100
committerGaël Bonithon <gael@xfce.org>2021-12-22 13:06:47 +0100
commit01548638d5a59191076551a9ce1be7f6b1616262 (patch)
treec872e1b201115b574646fbabc0f841b925dd32e9 /plugins/pixbuf-thumbnailer
parent62d0f3e2faaf4cdab3dd9f45eaa03cb9ad4219c6 (diff)
downloadtumbler-01548638d5a59191076551a9ce1be7f6b1616262.tar.gz
Refactoring: Avoid code duplication
Diffstat (limited to 'plugins/pixbuf-thumbnailer')
-rw-r--r--plugins/pixbuf-thumbnailer/pixbuf-thumbnailer.c47
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 (;;)