Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=04a3d592a446d65632603f892732d375c07d3bae

commit 04a3d592a446d65632603f892732d375c07d3bae
Author: Elentir <elen...@frugalware.org>
Date:   Sun Apr 10 23:58:51 2011 +0200

epdfview-0.1.7-5-x86_64

* backport some patchs to support poppler>=0.16

diff --git a/source/xapps-extra/epdfview/0001-r329.patch 
b/source/xapps-extra/epdfview/0001-r329.patch
new file mode 100644
index 0000000..f16f0a8
--- /dev/null
+++ b/source/xapps-extra/epdfview/0001-r329.patch
@@ -0,0 +1,79 @@
+From dc6c25e8f1a7a3845fa7d14b9dfbd22deb9dd6ef Mon Sep 17 00:00:00 2001
+From: jordi <jordi@cb4bfb15-1111-0410-82e2-95233c8f1c7e>
+Date: Fri, 20 Mar 2009 08:06:32 +0000
+Subject: [PATCH 1/3] I had to change the return valud of MainView's 
scroll-event handler, since Gtk+ expects a gboolean that tells whether to 
propagate the event.  Since we didn't return any value, depending on the 
compilation flags the mouse wheel didn't work at all.
+
+This closes #118.
+
+git-svn-id: svn://svn.emma-soft.com/epdfview@329 
cb4bfb15-1111-0410-82e2-95233c8f1c7e
+---
+ src/gtk/MainView.cxx |   21 ++++++++++++++-------
+ src/gtk/PageView.cxx |    7 -------
+ 2 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/src/gtk/MainView.cxx b/src/gtk/MainView.cxx
+index b983bff..4a52cd3 100644
+--- a/src/gtk/MainView.cxx
++++ b/src/gtk/MainView.cxx
+@@ -77,7 +77,7 @@ static void main_window_zoom_in_cb (GtkWidget *, gpointer);
+ static void main_window_zoom_out_cb (GtkWidget *, gpointer);
+ static void main_window_zoom_width_cb (GtkToggleAction *, gpointer);
+ static void main_window_set_page_mode (GtkRadioAction *, GtkRadioAction *, 
gpointer);
+-static void main_window_page_scrolled_cb (GtkWidget *widget, GdkEventScroll 
*event, gpointer data);
++static gboolean main_window_page_scrolled_cb (GtkWidget *widget, 
GdkEventScroll *event, gpointer data);
+
+ #if defined (HAVE_CUPS)
+ static void main_window_print_cb (GtkWidget *, gpointer);
+@@ -1479,18 +1479,25 @@ main_window_set_page_mode (GtkRadioAction *action, 
GtkRadioAction *current, gpoi
+     pter->setPageMode (mode);
+ }
+
+-void
++gboolean
+ main_window_page_scrolled_cb (GtkWidget *widget, GdkEventScroll *event, 
gpointer data)
+ {
+     g_assert ( NULL != data && "The data parameter is NULL.");
+
+     MainPter *pter = (MainPter *)data;
+     // Only zoom when the CTRL-Button is down...
+-    if ( !(event->state & GDK_CONTROL_MASK) ) return;
+-    if ( event->direction == GDK_SCROLL_UP ) {
+-        pter->zoomInActivated ();
+-    } else if ( event->direction == GDK_SCROLL_DOWN ) {
+-        pter->zoomOutActivated ();
++    if ( GDK_CONTROL_MASK == (event->state & GDK_CONTROL_MASK) )
++    {
++        if ( event->direction == GDK_SCROLL_UP )
++        {
++            pter->zoomInActivated ();
++        }
++        else if ( event->direction == GDK_SCROLL_DOWN )
++        {
++            pter->zoomOutActivated ();
++        }
++        return TRUE;
+     }
++    return FALSE;
+ }
+
+diff --git a/src/gtk/PageView.cxx b/trunk/src/gtk/PageView.cxx
+index 0546561..adaa823 100644
+--- a/src/gtk/PageView.cxx
++++ b/src/gtk/PageView.cxx
+@@ -527,13 +527,6 @@ page_view_scrolled_cb (GtkWidget *widget, GdkEventScroll 
*event, gpointer data)
+ {
+     g_assert ( NULL != data && "The data parameter is NULL.");
+
+-    // don't scroll when the CRTL-Button is down, because then the page should
+-    // actually be zoomed and not scrolled. Zooming is handelt by the MainView
+-    // class.
+-    if ( event->state & GDK_CONTROL_MASK )
+-    {
+-        return FALSE;
+-    }
+     PagePter *pter = (PagePter *)data;
+     GtkAdjustment *adjustment =
+         gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (widget));
+--
+1.7.4
+
diff --git a/source/xapps-extra/epdfview/0002-r354.patch 
b/source/xapps-extra/epdfview/0002-r354.patch
new file mode 100644
index 0000000..b4afe87
--- /dev/null
+++ b/source/xapps-extra/epdfview/0002-r354.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
+---
+ configure.ac        |   16 ++++++++++------
+ src/PDFDocument.cxx |   12 +++++++++++-
+ 2 files changed, 21 insertions(+), 7 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 7ce0ddc..6cbd0e2 100644
+--- a/configure.ac
++++ b/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/src/PDFDocument.cxx b/src/PDFDocument.cxx
+index 6567e9b..a590a20 100644
+--- a/src/PDFDocument.cxx
++++ b/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
+
diff --git a/source/xapps-extra/epdfview/0003-r357.patch 
b/source/xapps-extra/epdfview/0003-r357.patch
new file mode 100644
index 0000000..bcea5d1
--- /dev/null
+++ b/source/xapps-extra/epdfview/0003-r357.patch
@@ -0,0 +1,134 @@
+From 951a8f66463c0dc38fa05931bd8df7b45707f6e8 Mon Sep 17 00:00:00 2001
+From: jordi <jordi@cb4bfb15-1111-0410-82e2-95233c8f1c7e>
+Date: Wed, 17 Nov 2010 16:02:45 +0000
+Subject: [PATCH 3/3] Applied patch by Dennis Sheil <dennis-popp...@vartmp.com> 
to use the correct variable type for linearization since poppler version 0.15.1.
+
+git-svn-id: svn://svn.emma-soft.com/epdfview@357 
cb4bfb15-1111-0410-82e2-95233c8f1c7e
+---
+ THANKS              |    1 +
+ configure.ac        |    5 +++++
+ src/IDocument.cxx   |   15 ++++++++++++++-
+ src/IDocument.h     |    8 ++++++++
+ src/PDFDocument.cxx |    4 ++++
+ 5 files changed, 32 insertions(+), 1 deletions(-)
+
+diff --git a/THANKS b/THANKS
+index 48dcb2b..7888d1a 100644
+--- a/THANKS
++++ b/THANKS
+@@ -4,6 +4,7 @@ contributions:
+     - Alain Mendizabal <alainme...@gmail.com>, for his Basque translation.
+     - Alex Dedul <rot...@gmail.com>, for his patch.
+     - Alexander <lotha...@gmail.com>, for corrections in the Polish 
translation.
++    - Dennis Sheil <dennis-popp...@vartmp.com>, for his patch.
+     - Enrico Tröger <enrico.troe...@uvena.de>, for his full screen patch and 
others.
+     - Daniel Nylander <p...@danielnylander.se>, for his Swedish translation.
+     - Daniel Pielmeie <daniel.pielm...@googlemail.com>, for his patches.
+diff --git a/configure.ac b/configure.ac
+index 6cbd0e2..f8316b0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -56,6 +56,11 @@ 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
++PKG_CHECK_EXISTS([poppler-glib >= 0.15.1], [have_poppler_0_15_1=yes])
++if test "x$have_poppler_0_15_1" = "xyes"; then
++    AC_DEFINE([HAVE_POPPLER_0_15_1], [1], [Define to 1 if you have Poppler 
version 0.15.1 or higher.])
++fi
++
+
+ EPDFVIEW_PATH_CUPS([CUPS], [have_cups=yes])
+ AM_CONDITIONAL(cups_printing, test "x$have_cups" = "xyes")
+diff --git a/src/IDocument.cxx b/src/IDocument.cxx
+index f1b71c5..f560f34 100644
+--- a/src/IDocument.cxx
++++ b/src/IDocument.cxx
+@@ -755,11 +755,16 @@ IDocument::setFormat (gchar *format)
+ const gchar *
+ IDocument::getLinearized ()
+ {
++#if defined (HAVE_POPPLER_0_15_1)
++    if ( m_Linearized ) return "Yes";
++    else return "No";
++#else
+     if ( NULL == m_Linearized )
+     {
+         return "No";
+     }
+     return m_Linearized;
++#endif
+ }
+
+ ///
+@@ -768,14 +773,22 @@ IDocument::getLinearized ()
+ /// @param linearized Set to "Yes" if the document is linearized. "No"
+ ///                   otherwise. IDocument will free it.
+ ///
++#if defined (HAVE_POPPLER_0_15_1)
+ void
+-IDocument::setLinearized (gchar *linearized)
++IDocument::setLinearized (gboolean *linearized)
++{
++    m_Linearized = linearized;
++}
++#else
++void
++    IDocument::setLinearized (gchar *linearized)
+ {
+     gchar *oldLinearized = m_Linearized;
+     m_Linearized = g_strdup (linearized);
+     g_free (oldLinearized);
+     g_free (linearized);
+ }
++#endif
+
+ ///
+ /// @brief Gets the document's creation date.
+diff --git a/src/IDocument.h b/src/IDocument.h
+index fbb3954..32aadf2 100644
+--- a/src/IDocument.h
++++ b/src/IDocument.h
+@@ -306,7 +306,11 @@ namespace ePDFView
+             const gchar *getFormat (void);
+             void setFormat (gchar *format);
+             const gchar *getLinearized (void);
++#if defined (HAVE_POPPLER_0_15_1)
++            void setLinearized (gboolean *linearized);
++#else
+             void setLinearized (gchar *linearized);
++#endif
+             const gchar *getCreationDate (void);
+             void setCreationDate (gchar *date);
+             const gchar *getModifiedDate (void);
+@@ -382,7 +386,11 @@ namespace ePDFView
+             /// The document's keyword.
+             gchar *m_Keywords;
+             /// Tells if the document is linearized or not.
++#if defined (HAVE_POPPLER_0_15_1)
++            gboolean *m_Linearized;
++#else
+             gchar *m_Linearized;
++#endif
+             /// The document's modification date and time.
+             gchar *m_ModifiedDate;
+             /// @brief The list of classes that will receive notifications
+diff --git a/src/PDFDocument.cxx b/src/PDFDocument.cxx
+index a590a20..4d425cd 100644
+--- a/src/PDFDocument.cxx
++++ b/src/PDFDocument.cxx
+@@ -324,7 +324,11 @@ PDFDocument::loadMetadata (void)
+     gchar *format = NULL;
+     gchar *keywords = NULL;
+     PopplerPageLayout layout = POPPLER_PAGE_LAYOUT_UNSET;
++#if defined (HAVE_POPPLER_0_15_1)
++    gboolean *linearized = NULL;
++#else
+     gchar *linearized = NULL;
++#endif
+     GTime modDate;
+     PopplerPageMode mode = POPPLER_PAGE_MODE_UNSET;
+     gchar *producer = NULL;
+--
+1.7.4
+
diff --git a/source/xapps-extra/epdfview/FrugalBuild 
b/source/xapps-extra/epdfview/FrugalBuild
index bc0facf..364550d 100644
--- a/source/xapps-extra/epdfview/FrugalBuild
+++ b/source/xapps-extra/epdfview/FrugalBuild
@@ -16,12 +16,22 @@ _F_desktop_mimetypes="application/pdf"
_F_desktop_exec="epdfview %f"
_F_desktop_icon="epdfview.png"
up2date="lynx -dump $url/wiki/Download | grep -m1 tar.bz2 | sed 
's/.*w-\(.*\).t.*/\1/'"
-source=($url/chrome/site/releases/$pkgname-$pkgver.tar.bz2)
-sha1sums=('ff46942c285b8e2c28766a38cdfce1a018b4a015')
+source=($url/chrome/site/releases/$pkgname-$pkgver.tar.bz2 0001-r329.patch 
0002-r354.patch \
+       0003-r357.patch m_Linearized.patch)
+sha1sums=('ff46942c285b8e2c28766a38cdfce1a018b4a015' \
+          '92a8ea08279ccbe479fccab07359d8c3f915a1a2' \
+          '29c6d31fccd916dafecb47ebab7d741ceace02de' \
+          'e4a81fbe60e4785b2295a15499a173e5c02d26db' \
+          'b7ce5859938f4fb25dc39dfe3b1a9db90fac82fb')

build()
{
-       Fbuild
+       Fcd
+       Fpatchall
+       touch ChangeLog || Fdie
+       Fautoreconf
+       Fmake
+       Fmakeinstall
Fmkdir /usr/share/pixmaps
cp $Fdestdir/usr/share/$pkgname/pixmaps/icon_epdfview-32.png 
$Fdestdir/usr/share/pixmaps/epdfview.png || Fdie
Frm /usr/share/applications/epdfview.desktop
diff --git a/source/xapps-extra/epdfview/gcc43.patch 
b/source/xapps-extra/epdfview/gcc43.patch
deleted file mode 100644
index d17130e..0000000
--- a/source/xapps-extra/epdfview/gcc43.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up epdfview-0.1.6/src/IDocumentLink.h.orig 
epdfview-0.1.6/src/IDocumentLink.h
---- epdfview-0.1.6/src/IDocumentLink.h.orig    2008-02-14 11:21:01.000000000 
+0100
-+++ epdfview-0.1.6/src/IDocumentLink.h 2008-02-14 11:21:06.000000000 +0100
-@@ -33,7 +33,7 @@ namespace ePDFView
-     class IDocumentLink
-     {
-         public:
--            IDocumentLink (gdouble x1, gdouble y1, gdouble x2, gdouble y1);
-+            IDocumentLink (gdouble x1, gdouble y1, gdouble x2, gdouble y2);
-             virtual ~IDocumentLink (void);
-
-             virtual void activate (IDocument *document) = 0;
diff --git a/source/xapps-extra/epdfview/m_Linearized.patch 
b/source/xapps-extra/epdfview/m_Linearized.patch
new file mode 100644
index 0000000..7cad8d9
--- /dev/null
+++ b/source/xapps-extra/epdfview/m_Linearized.patch
@@ -0,0 +1,24 @@
+--- src/IDocument.cxx  2011-02-06 14:45:34.173334040 +0100
++++ src/IDocument.cxx    2011-02-06 14:51:23.173334040 +0100
+@@ -135,7 +135,11 @@
+     m_FindPage = 0;
+     m_Format = NULL;
+     m_Keywords = NULL;
++#if defined (HAVE_POPPLER_0_15_1)
++    m_Linearized = FALSE;
++#else
+     m_Linearized = NULL;
++#endif
+     m_ModifiedDate = NULL;
+     m_PageCache = NULL;
+     m_PageCacheAge = 0;
+@@ -164,7 +168,9 @@
+     g_free (m_FileName);
+     g_free (m_Format);
+     g_free (m_Keywords);
++#if !defined (HAVE_POPPLER_0_15_1)
+     g_free (m_Linearized);
++#endif
+     g_free (m_ModifiedDate);
+     g_free (m_Password);
+     g_free (m_Producer);
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to