]> 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:37:56 +0000 (10:37 +0000)
committerCarlos Garcia Campos <carlosgc@src.gnome.org>
Fri, 10 Apr 2009 10:37:56 +0000 (10:37 +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=/trunk/; revision=3595

ChangeLog
properties/ev-properties-main.c

index 7a1b24fe9cf4cb146b444fedc89512882107806b..b990098da84778ac0d1144b07cfb984a0c5ab5fd 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;
 }