File olpc-2837.patch of Package sugar-evince
diff --git a/python/evince.defs b/python/evince.defs
index 3329431..60a5a1c 100644
--- a/python/evince.defs
+++ b/python/evince.defs
@@ -342,6 +342,31 @@
(return-type "none")
)
+(define-method handle_link
+ (of-object "EvView")
+ (c-name "ev_view_handle_link")
+ (return-type "none")
+ (parameters
+ '("EvLink*" "link")
+ )
+)
+
+;; From ev-link.h
+
+(define-object PageCache
+ (in-module "Ev")
+ (c-name "EvLink")
+ (parent "GObject")
+ (gtype-id "EV_TYPE_LINK")
+)
+
+(define-method get_page
+ (of-object "EvLink")
+ (c-name "ev_link_get_page")
+ (return-type "gint")
+)
+
+
;; From ev-document.h
(define-interface Document
@@ -437,6 +462,32 @@
;; XXX missing ev_page_new
+;; From ev-document-links.h
+
+(define-interface DocumentLinks
+ (in-module "Ev")
+ (c-name "EvDocumentLinks")
+ (gtype-id "EV_TYPE_DOCUMENT_LINKS")
+ (prerequisite "GObject")
+)
+
+(define-function ev_document_links_get_type
+ (c-name "ev_document_links_get_type")
+ (return-type "GType")
+)
+
+(define-method has_document_links
+ (of-object "EvDocumentLinks")
+ (c-name "ev_document_links_has_document_links")
+ (return-type "gboolean")
+)
+
+(define-method get_links_model
+ (of-object "EvDocumentLinks")
+ (c-name "ev_document_links_get_links_model")
+ (return-type "GtkTreeModel*")
+)
+
;; From ev-page-cache.h
;; XXX missing lots of methods on PageCache
diff --git a/python/evince.override b/python/evince.override
index 7a164af..9d27d79 100644
--- a/python/evince.override
+++ b/python/evince.override
@@ -8,8 +8,10 @@ headers
#include <ev-view.h>
#include <ev-document-find.h>
#include <ev-document-factory.h>
+#include <ev-document-links.h>
#include <ev-document.h>
#include <ev-page-cache.h>
+#include <ev-link.h>
#include <ev-jobs.h>
#include <ev-job-scheduler.h>
@@ -19,6 +21,7 @@ modulename ev
import gobject.GObject as PyGObject_Type
import gtk.Widget as PyGtkWidget_Type
import gtk.ScrolledWindow as PyGtkScrolledWindow_Type
+import gtk.TreeModel as PyGtkTreeModel_Type
%%
override ev_view_find_changed kwargs
/* This function usually takes a GList of search results and hence must be