summaryrefslogtreecommitdiff
path: root/office/epdfview/poppler-0150.patch
diff options
context:
space:
mode:
Diffstat (limited to 'office/epdfview/poppler-0150.patch')
-rw-r--r--office/epdfview/poppler-0150.patch77
1 files changed, 77 insertions, 0 deletions
diff --git a/office/epdfview/poppler-0150.patch b/office/epdfview/poppler-0150.patch
new file mode 100644
index 0000000000..771b93a011
--- /dev/null
+++ b/office/epdfview/poppler-0150.patch
@@ -0,0 +1,77 @@
+From d8d3dac5fc3fe519b443d22f74258af4aaf48d0c Mon Sep 17 00:00:00 2001
+From: jordi <jordi@cb4bfb15-1111-0410-82e2-95233c8f1c7e>
+Date: Mon, 11 Oct 2010 15:53:47 +0000
+Subject: [PATCH 2/3] Added support for poppler's API changes in 0.15.0 by Michal Schmidt.
+
+git-svn-id: svn://svn.emma-soft.com/epdfview@354 cb4bfb15-1111-0410-82e2-95233c8f1c7e
+---
+ trunk/configure.ac | 16 ++++++++++------
+ trunk/src/PDFDocument.cxx | 12 +++++++++++-
+ 2 files changed, 21 insertions(+), 7 deletions(-)
+
+diff --git a/trunk/configure.ac b/trunk/configure.ac
+index 7ce0ddc..6cbd0e2 100644
+--- a/trunk/configure.ac
++++ b/trunk/configure.ac
+@@ -40,18 +40,22 @@ PKG_CHECK_MODULES([POPPLER], [poppler-glib >= $POPPLER_REQUIRED gdk-2.0 >= $GTK2
+ AC_SUBST([POPPLER_CFLAGS])
+ AC_SUBST([POPPLER_LIBS])
+ dnl Check if we have poppler version 0.5.2 or higher.
+-PKG_CHECK_EXISTS([poppler-glib >= 0.5.2], [have_poppler_052=yes])
+-if test "x$have_poppler_052" = "xyes"; then
++PKG_CHECK_EXISTS([poppler-glib >= 0.5.2], [have_poppler_0_5_2=yes])
++if test "x$have_poppler_0_5_2" = "xyes"; then
+ AC_DEFINE([HAVE_POPPLER_0_5_2], [1], [Define to 1 if you have Poppler version 0.5.2 or higher.])
+ fi
+-PKG_CHECK_EXISTS([poppler-glib >= 0.6], [have_poppler_060=yes])
+-if test "x$have_poppler_060" = "xyes"; then
++PKG_CHECK_EXISTS([poppler-glib >= 0.6], [have_poppler_0_6_0=yes])
++if test "x$have_poppler_0_6_0" = "xyes"; then
+ AC_DEFINE([HAVE_POPPLER_0_6_0], [1], [Define to 1 if you have Poppler version 0.6.0 or higher.])
+ fi
+-PKG_CHECK_EXISTS([poppler-glib >= 0.8], [have_poppler_080=yes])
+-if test "x$have_poppler_080" = "xyes"; then
++PKG_CHECK_EXISTS([poppler-glib >= 0.8], [have_poppler_0_8_0=yes])
++if test "x$have_poppler_0_8_0" = "xyes"; then
+ AC_DEFINE([HAVE_POPPLER_0_8_0], [1], [Define to 1 if you have Poppler version 0.8.0 or higher.])
+ fi
++PKG_CHECK_EXISTS([poppler-glib >= 0.15], [have_poppler_0_15_0=yes])
++if test "x$have_poppler_0_15_0" = "xyes"; then
++ AC_DEFINE([HAVE_POPPLER_0_15_0], [1], [Define to 1 if you have Poppler version 0.15.0 or higher.])
++fi
+
+ EPDFVIEW_PATH_CUPS([CUPS], [have_cups=yes])
+ AM_CONDITIONAL(cups_printing, test "x$have_cups" = "xyes")
+diff --git a/trunk/src/PDFDocument.cxx b/trunk/src/PDFDocument.cxx
+index 6567e9b..a590a20 100644
+--- a/trunk/src/PDFDocument.cxx
++++ b/trunk/src/PDFDocument.cxx
+@@ -678,14 +678,24 @@ PDFDocument::setTextSelection (DocumentRectangle *rect)
+ gdouble pageWidth, pageHeight;
+ poppler_page_get_size(page, &pageWidth, &pageHeight);
+
++#if defined (HAVE_POPPLER_0_15_0)
++ PopplerRectangle textRect = { rect->getX1() / getZoom(),
++ rect->getY1() / getZoom(),
++ rect->getX2() / getZoom(),
++ rect->getY2() / getZoom()};
++#else // !HAVE_POPPLER_0_15_0
+ //for get text we must exchange y coordinate, don't ask me where logic here.
+ PopplerRectangle textRect = { rect->getX1() / getZoom(),
+ (pageHeight - rect->getY2() / getZoom()),
+ rect->getX2() * getZoom() / getZoom(),
+ (pageHeight - rect->getY1() / getZoom())};
++#endif // HAVE_POPPLER_0_15_0
+ repairEmpty(textRect);
+
+-#if defined (HAVE_POPPLER_0_6_0)
++#if defined (HAVE_POPPLER_0_15_0)
++ gchar *text = poppler_page_get_selected_text(page, POPPLER_SELECTION_GLYPH,
++ &textRect);
++#elif defined (HAVE_POPPLER_0_6_0)
+ gchar *text = poppler_page_get_text(page, POPPLER_SELECTION_GLYPH,
+ &textRect);
+ #else // !HAVE_POPPLER_0_6_0
+--
+1.7.4
+