]> www.fi.muni.cz Git - evince.git/blobdiff - thumbnailer/evince-thumbnailer.c
Updated Dzongkha translations
[evince.git] / thumbnailer / evince-thumbnailer.c
index dfa521bea4e931ad1936cb50ab1f752294112ad0..1c0ba0b4e1aa95bb823ceb8ef0f0437abfc9a934 100644 (file)
 #include <libgnomevfs/gnome-vfs-uri.h>
 #include <libgnomevfs/gnome-vfs-utils.h>
 #include <libgnomevfs/gnome-vfs-init.h>
 #include <libgnomevfs/gnome-vfs-uri.h>
 #include <libgnomevfs/gnome-vfs-utils.h>
 #include <libgnomevfs/gnome-vfs-init.h>
+#include <libgnomevfs/gnome-vfs-ops.h>
 
 #include <ev-document.h>
 
 #include <ev-document.h>
-#include <ev-document-types.h>
 #include <ev-document-thumbnails.h>
 #include <ev-document-thumbnails.h>
+#include <ev-document-factory.h>
 
 #include <string.h>
 
 
 #include <string.h>
 
@@ -35,38 +36,34 @@ evince_thumbnail_pngenc_get (const char *uri, const char *thumbnail, int size)
        EvDocument *document = NULL;
        GError *error = NULL;
        GdkPixbuf *pixbuf;
        EvDocument *document = NULL;
        GError *error = NULL;
        GdkPixbuf *pixbuf;
-       GType document_type;
-       char *mime_type = NULL;
 
 
-       document_type = ev_document_type_lookup (uri, &mime_type);
-       if (document_type == G_TYPE_INVALID)
-               return FALSE;
-
-       document = g_object_new (document_type, NULL);
+       document = ev_document_factory_get_document  (uri, &error);
 
 
-       if (!ev_document_load (document, uri, &error)) {
+       if (error) {
                if (error->domain == EV_DOCUMENT_ERROR &&
                if (error->domain == EV_DOCUMENT_ERROR &&
-                   error->code == EV_DOCUMENT_ERROR_ENCRYPTED) {
+                   error->code == EV_DOCUMENT_ERROR_ENCRYPTED) {
                        /* FIXME: Create a thumb for cryp docs */
                        /* FIXME: Create a thumb for cryp docs */
+                       g_error_free (error);
+                       return FALSE;
                }
                g_error_free (error);
                return FALSE;
        }
                }
                g_error_free (error);
                return FALSE;
        }
+       
+       if (document == NULL) {
+               return FALSE;
+       }
 
        if (!EV_IS_DOCUMENT_THUMBNAILS (document)) {
                return FALSE;
        }
 
        pixbuf = ev_document_thumbnails_get_thumbnail
 
        if (!EV_IS_DOCUMENT_THUMBNAILS (document)) {
                return FALSE;
        }
 
        pixbuf = ev_document_thumbnails_get_thumbnail
-                       (EV_DOCUMENT_THUMBNAILS (document), 0, size, FALSE);
+                       (EV_DOCUMENT_THUMBNAILS (document), 0, 0, size, FALSE);
        
        if (pixbuf != NULL) {
                const char *overlaid_icon_name = NULL;
 
        
        if (pixbuf != NULL) {
                const char *overlaid_icon_name = NULL;
 
-               if (strcmp (mime_type, "application/pdf") == 0) {
-                       overlaid_icon_name = "pdf-icon.png";
-               }
-
                if (overlaid_icon_name) {
                        GdkPixbuf *overlaid_pixbuf;
 
                if (overlaid_icon_name) {
                        GdkPixbuf *overlaid_pixbuf;