[Xfce4-commits] <thunar:jannis/thunar-vfs-thumbnailer> Squashme: A bit more work done here, moved things around.

Jannis Pohlmann noreply at xfce.org
Thu Jan 7 14:54:04 CET 2010


Updating branch refs/heads/jannis/thunar-vfs-thumbnailer
         to ebd7367ff194def9986fe6f63e52618feb22bfff (commit)
       from 8e2e0f6f94d5ea57d29f6bb3aa6e35d3dd9955d9 (commit)

commit ebd7367ff194def9986fe6f63e52618feb22bfff
Author: Jannis Pohlmann <jannis at xfce.org>
Date:   Thu Jan 7 14:52:56 2010 +0100

    Squashme: A bit more work done here, moved things around.

 Makefile.am                                        |    1 +
 configure.in.in                                    |    7 ++--
 .../Makefile.am                                    |    0
 .../thunar-vfs-thumbnailer-plugin.c                |    0
 .../thunar-vfs-thumbnailer-provider.c              |    8 +++--
 .../thunar-vfs-thumbnailer-provider.h              |    0
 .../thunar-vfs-thumbnailer.c                       |   32 ++++++++++++++++++++
 .../thunar-vfs-thumbnailer.h                       |    0
 tumbler-plugins/Makefile.am                        |    6 ----
 9 files changed, 41 insertions(+), 13 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 18e2c9c..bd6d07b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -8,6 +8,7 @@ SUBDIRS =								\
 	tdb								\
 	thunarx								\
 	thunar								\
+	thunar-vfs-thumbnailer						\
 	docs								\
 	examples							\
 	plugins
diff --git a/configure.in.in b/configure.in.in
index 4657081..4d41a64 100644
--- a/configure.in.in
+++ b/configure.in.in
@@ -119,8 +119,8 @@ dnl *** Check for standard headers ***
 dnl **********************************
 AC_CHECK_HEADERS([ctype.h errno.h fcntl.h grp.h limits.h locale.h memory.h \
                   paths.h pwd.h sched.h signal.h stdarg.h stdio.h stdlib.h \
-                  string.h sys/mman.h sys/stat.h sys/time.h sys/types.h \
-                  sys/uio.h sys/wait.h time.h])
+                  string.h sys/mman.h sys/resource.h sys/stat.h sys/time.h \
+                  sys/types.h sys/uio.h sys/wait.h time.h])
 
 dnl ************************************
 dnl *** Check for standard functions ***
@@ -287,8 +287,7 @@ thunar/Makefile
 thunarx/Makefile
 thunarx/thunarx-2.pc
 thunarx/thunarx-config.h
-tumbler-plugins/Makefile
-tumbler-plugins/thunar-vfs-thumbnailer/Makefile
+thunar-vfs-thumbnailer/Makefile
 ])
 
 dnl ***************************
diff --git a/tumbler-plugins/thunar-vfs-thumbnailer/Makefile.am b/thunar-vfs-thumbnailer/Makefile.am
similarity index 100%
rename from tumbler-plugins/thunar-vfs-thumbnailer/Makefile.am
rename to thunar-vfs-thumbnailer/Makefile.am
diff --git a/tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-plugin.c b/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-plugin.c
similarity index 100%
rename from tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-plugin.c
rename to thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-plugin.c
diff --git a/tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.c b/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.c
similarity index 91%
rename from tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.c
rename to thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.c
index 86cd591..40ec66f 100644
--- a/tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.c
+++ b/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.c
@@ -105,12 +105,14 @@ thunar_vfs_thumbnailer_provider_get_thumbnailers (TumblerThumbnailerProvider *pr
 {
   ThunarVfsThumbnailer *thumbnailer;
   GList                *thumbnailers = NULL;
-  const gchar          *uri_schemes[] = { NULL, };
+  const gchar          *uri_schemes[] = { "file", NULL };
   const gchar          *mime_types[] = { NULL, };
 
   /* create the pixbuf thumbnailer */
-  thumbnailer = g_object_new (TYPE_THUNAR_VFS_THUMBNAILER, "mime-types", mime_types,
-                              "uri-schemes", uri_schemes, NULL);
+  thumbnailer = g_object_new (TYPE_THUNAR_VFS_THUMBNAILER, 
+                              "mime-types", mime_types,
+                              "uri-schemes", uri_schemes, 
+                              NULL);
 
   /* add the thumbnailer to the list */
   thumbnailers = g_list_append (thumbnailers, thumbnailer);
diff --git a/tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.h b/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.h
similarity index 100%
rename from tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.h
rename to thunar-vfs-thumbnailer/thunar-vfs-thumbnailer-provider.h
diff --git a/tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.c b/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.c
similarity index 95%
rename from tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.c
rename to thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.c
index ec68987..e75f24d 100644
--- a/tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.c
+++ b/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.c
@@ -1,5 +1,6 @@
 /* vi:set et ai sw=2 sts=2 ts=2: */
 /*-
+ * Copyright (c) 2004-2007 Benedikt Meurer <benny at xfce.org>
  * Copyright (c) 2009 Jannis Pohlmann <jannis at xfce.org>
  *
  * This library is free software; you can redistribute it and/or
@@ -25,6 +26,9 @@
 #ifdef HAVE_SYS_MMAN_H
 #include <sys/mman.h>
 #endif
+#ifdef HAVE_SYS_RESOURCE_H
+#include <sys/resource.h>
+#endif
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
 #endif
@@ -111,6 +115,7 @@ static void     thunar_vfs_thumbnailer_cache_watch_destroy (gpointer
 static void     thunar_vfs_thumbnailer_create              (TumblerAbstractThumbnailer *thumbnailer,
                                                             GCancellable               *cancellable,
                                                             TumblerFileInfo            *info);
+static void     thunar_vfs_thumbnailer_update_supported    (ThunarVfsThumbnailer       *thumbnailer);
 
 
 
@@ -325,6 +330,9 @@ thunar_vfs_thumbnailer_cache_load (ThunarVfsThumbnailer *thumbnailer)
     }
 
   g_free (cache_path);
+
+  /* compute new hash keys and notify supported-changed listeners */
+  thunar_vfs_thumbnailer_update_supported (thumbnailer);
 }
 
 
@@ -598,3 +606,27 @@ thunar_vfs_thumbnailer_create (TumblerAbstractThumbnailer *thumbnailer,
   g_object_unref (pixbuf);
   g_object_unref (source_pixbuf);
 }
+
+
+
+static void
+thunar_vfs_thumbnailer_update_supported (ThunarVfsThumbnailer *thumbnailer)
+{
+  const gchar **mime_types;
+  gint          num_mime_types;
+  gint          n;
+
+  g_return_if_fail (IS_THUNAR_VFS_THUMBNAILER (thumbnailer));
+
+  num_mime_types = CACHE_READ32 (thumbnailer->cache, 8);
+
+  mime_types = g_slice_alloc0 (sizeof (const gchar *) * num_mime_types + 1);
+  mime_types[num_mime_types] = NULL;
+
+  for (n = 0; n < num_mime_types; ++n)
+    mime_types[n] = thumbnailer->cache + CACHE_READ32 (cache, 16 + 8 * n + 4);
+
+  tumbler_thumbnailer_set_mime_types (thumbnailer, mime_types);
+
+  g_strfreev (mime_types);
+}
diff --git a/tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.h b/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.h
similarity index 100%
rename from tumbler-plugins/thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.h
rename to thunar-vfs-thumbnailer/thunar-vfs-thumbnailer.h
diff --git a/tumbler-plugins/Makefile.am b/tumbler-plugins/Makefile.am
deleted file mode 100644
index d507cb4..0000000
--- a/tumbler-plugins/Makefile.am
+++ /dev/null
@@ -1,6 +0,0 @@
-if HAVE_TUMBLER
-SUBDIRS =								\
-	thunar-vfs-thumbnailer
-endif
-
-# vi:set ts=8 sw=8 noet ai nocindent syntax=automake:



More information about the Xfce4-commits mailing list