Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/thumbnailer
diff options
context:
space:
mode:
authorNickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-03-30 22:20:35 (GMT)
committer Nickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-03-30 22:20:35 (GMT)
commit67a923a1096f1e9765a5d804e4fb9fac39bcfcf2 (patch)
tree66e0e782861c292b8684bb367dc0489bdcc68f73 /thumbnailer
parentdda75bc2dbcd9a6ed5507bb0609f057846edc261 (diff)
Rework factory functions so they are placed now in a single file
* backend/ev-document-factory.c: (ev_document_factory_get_from_mime), (ev_document_factory_get_all_mime_types), (get_document_from_uri), (ev_document_factory_get_document), (file_filter_add_mime_list_and_free), (ev_document_factory_add_filters): * backend/ev-document-factory.h: * properties/ev-properties-main.c: (ev_properties_get_pages): * shell/Makefile.am: * shell/ev-application.c: * shell/ev-job-xfer.c: (ev_job_xfer_run): * shell/ev-window.c: (ev_window_cmd_file_open), (ev_window_cmd_save_as): * thumbnailer/evince-thumbnailer.c: (evince_thumbnail_pngenc_get): Rework factory functions so they are placed now in a single file ev-document-factory.c
Diffstat (limited to 'thumbnailer')
-rw-r--r--thumbnailer/evince-thumbnailer.c34
1 files changed, 3 insertions, 31 deletions
diff --git a/thumbnailer/evince-thumbnailer.c b/thumbnailer/evince-thumbnailer.c
index 513d9e2..8c79ae9 100644
--- a/thumbnailer/evince-thumbnailer.c
+++ b/thumbnailer/evince-thumbnailer.c
@@ -30,32 +30,6 @@
#define THUMBNAIL_SIZE 128
-static EvDocument *
-get_document_from_uri (const char *uri, gboolean slow, gchar **mime_type)
-{
- EvDocument *document = NULL;
- GnomeVFSFileInfo *info;
- GnomeVFSResult result;
-
- info = gnome_vfs_file_info_new ();
- result = gnome_vfs_get_file_info (uri, info,
- GNOME_VFS_FILE_INFO_GET_MIME_TYPE |
- GNOME_VFS_FILE_INFO_FOLLOW_LINKS |
- (slow ? GNOME_VFS_FILE_INFO_FORCE_SLOW_MIME_TYPE : 0));
- if (result != GNOME_VFS_OK || info->mime_type == NULL) {
- goto end;
- }
-
- document = ev_document_factory_get_document (info->mime_type);
- if (mime_type != NULL) {
- *mime_type = info->mime_type ? g_strdup (info->mime_type) : NULL;
- }
-
-end:
- gnome_vfs_file_info_unref (info);
- return document;
-}
-
static gboolean
evince_thumbnail_pngenc_get (const char *uri, const char *thumbnail, int size)
{
@@ -64,11 +38,9 @@ evince_thumbnail_pngenc_get (const char *uri, const char *thumbnail, int size)
GdkPixbuf *pixbuf;
char *mime_type = NULL;
- document = get_document_from_uri (uri, FALSE, &mime_type);
- if (document == NULL) {
- document = get_document_from_uri (uri, TRUE, &mime_type);
- }
- if (document == NULL) {
+ document = ev_document_factory_get_document (uri, &mime_type, &error);
+
+ if (document == NULL || error) {
return FALSE;
}