]> www.fi.muni.cz Git - evince.git/commitdiff
Create and load the document based on the mime-type provided by nautilus
authorCarlos Garcia Campos <carlosgc@gnome.org>
Fri, 10 Apr 2009 10:41:49 +0000 (10:41 +0000)
committerCarlos Garcia Campos <carlosgc@src.gnome.org>
Fri, 10 Apr 2009 10:41:49 +0000 (10:41 +0000)
2009-04-10  Carlos Garcia Campos  <carlosgc@gnome.org>

* properties/ev-properties-main.c: (ev_properties_get_pages):

Create and load the document based on the mime-type provided by
nautilus instead of using our own documents factory. Fixes bug
#533917.

svn path=/branches/gnome-2-26/; revision=3596

ChangeLog
properties/ev-properties-main.c

index 0591da32287d352fe8714285d06082edf6aa0d2f..629d7c024b20739ab44c9abb92135a4c7d201d22 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2009-04-10  Carlos Garcia Campos  <carlosgc@gnome.org>
+
+       * properties/ev-properties-main.c: (ev_properties_get_pages):
+
+       Create and load the document based on the mime-type provided by
+       nautilus instead of using our own documents factory. Fixes bug
+       #533917.
+       
 2009-04-09  Benjamin Berg  <benjamin@sipsolutions.net>
 
        * backend/tiff/tiff-document.c: (tiff_document_render):
index 6af16f36ad7301ecc9fcff69eee13c019a084c08..e0631f9765307fc9ea7dc84c0393f1875e00005a 100644 (file)
@@ -89,7 +89,8 @@ ev_properties_get_pages (NautilusPropertyPageProvider *provider,
        EvDocument *document;
        GList *pages = NULL;
        NautilusFileInfo *file;
-       char *uri = NULL;
+       gchar *uri = NULL;
+       gchar *mime_type = NULL;
        GtkWidget *page, *label;
        NautilusPropertyPage *property_page;
 
@@ -100,16 +101,18 @@ ev_properties_get_pages (NautilusPropertyPageProvider *provider,
 
        /* okay, make the page */
        uri = nautilus_file_info_get_uri (file);
-       document = ev_document_factory_get_document (uri, &error);
+       mime_type = nautilus_file_info_get_mime_type (file);
+       
+       document = ev_backends_manager_get_document (mime_type);
+       if (!document)
+               goto end;
 
+       ev_document_load (document, uri, &error);
        if (error) {
                g_error_free (error);
                goto end;
        }
        
-       if (!document)
-               goto end;
-
        label = gtk_label_new (_("Document"));
        page = ev_properties_view_new (uri);
        ev_properties_view_set_info (EV_PROPERTIES_VIEW (page),
@@ -123,6 +126,8 @@ ev_properties_get_pages (NautilusPropertyPageProvider *provider,
 
 end:
        g_free (uri);
+       g_free (mime_type);
+       
        return pages;
 }