X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=thumbnailer%2Fevince-thumbnailer.c;h=1c0ba0b4e1aa95bb823ceb8ef0f0437abfc9a934;hb=9e5880e71caf9f4737b8a4f630e7183b8ac484ed;hp=dfa521bea4e931ad1936cb50ab1f752294112ad0;hpb=a5e3f1314e7e27fb0e765b3b9b8e1deb92c7c536;p=evince.git diff --git a/thumbnailer/evince-thumbnailer.c b/thumbnailer/evince-thumbnailer.c index dfa521be..1c0ba0b4 100644 --- a/thumbnailer/evince-thumbnailer.c +++ b/thumbnailer/evince-thumbnailer.c @@ -20,10 +20,11 @@ #include #include #include +#include #include -#include #include +#include #include @@ -35,38 +36,34 @@ evince_thumbnail_pngenc_get (const char *uri, const char *thumbnail, int size) 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 && - error->code == EV_DOCUMENT_ERROR_ENCRYPTED) { + error->code == EV_DOCUMENT_ERROR_ENCRYPTED) { /* FIXME: Create a thumb for cryp docs */ + 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 - (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 (strcmp (mime_type, "application/pdf") == 0) { - overlaid_icon_name = "pdf-icon.png"; - } - if (overlaid_icon_name) { GdkPixbuf *overlaid_pixbuf;