summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-office/abiword/files')
-rw-r--r--app-office/abiword/files/abiword-3.0.0-bison30.patch28
-rw-r--r--app-office/abiword/files/abiword-3.0.0-boost54.patch31
-rw-r--r--app-office/abiword/files/abiword-3.0.0-fix-redraw.patch56
-rw-r--r--app-office/abiword/files/abiword-3.0.0-fix-shortcut.patch40
-rw-r--r--app-office/abiword/files/abiword-3.0.0-pdf-crash.patch102
5 files changed, 257 insertions, 0 deletions
diff --git a/app-office/abiword/files/abiword-3.0.0-bison30.patch b/app-office/abiword/files/abiword-3.0.0-bison30.patch
new file mode 100644
index 000000000000..0299520e282a
--- /dev/null
+++ b/app-office/abiword/files/abiword-3.0.0-bison30.patch
@@ -0,0 +1,28 @@
+Last-update: 2014-02-02
+Author: Dimitri John Ledkov <xnox@ubuntu.com>
+Description: Cherrypick patch from NetBSD, to fix FTBFS with bison 3.0.
+
+--- a/plugins/mathview/itex2mml/itex2MML.y
++++ b/plugins/mathview/itex2mml/itex2MML.y
+@@ -1,8 +1,10 @@
+ /* itex2MML 1.4.8
+ * itex2MML.y last modified 9/21/2011
+ */
+
++%parse-param {char **ret_str}
++
+ %{
+ #include <stdio.h>
+ #include <string.h>
+ #include <stdlib.h>
+@@ -26,9 +28,9 @@
+ }
+
+ void (*itex2MML_error) (const char * msg) = itex2MML_default_error;
+
+- static void yyerror (char * s)
++ static void yyerror (char **ret_str, char * s)
+ {
+ char * msg = itex2MML_copy3 (s, " at token ", yytext);
+ if (itex2MML_error)
+ (*itex2MML_error) (msg);
diff --git a/app-office/abiword/files/abiword-3.0.0-boost54.patch b/app-office/abiword/files/abiword-3.0.0-boost54.patch
new file mode 100644
index 000000000000..f7cfeaef6184
--- /dev/null
+++ b/app-office/abiword/files/abiword-3.0.0-boost54.patch
@@ -0,0 +1,31 @@
+Last-Update: 2014-02-05
+Forwarded: yes
+Author: Dmitry Smirnov <onlyjob@member.fsf.org>
+Bug-Debian: http://bugs.debian.org/737551
+Bug-Abiword: http://bugzilla.abisource.com/13602
+Description: fix FTBFS with libboost1.54-dev
+
+--- a/plugins/collab/core/sync/xp/SynchronizedQueue.h
++++ b/plugins/collab/core/sync/xp/SynchronizedQueue.h
+@@ -21,8 +21,9 @@
+
+ #include <deque>
+ #include <boost/bind.hpp>
+ #include <boost/function.hpp>
++#include <boost/noncopyable.hpp>
+ #include <sync/xp/lock.h>
+ #include <sync/xp/Synchronizer.h>
+
+ class EmptyQueueException {};
+--- a/plugins/collab/backends/tcp/xp/Session.h
++++ b/plugins/collab/backends/tcp/xp/Session.h
+@@ -21,8 +21,9 @@
+
+ #include <boost/function.hpp>
+ #include <boost/bind.hpp>
+ #include <boost/enable_shared_from_this.hpp>
++#include <boost/noncopyable.hpp>
+ #include <deque>
+ #include <sync/xp/lock.h>
+ #include <sync/xp/Synchronizer.h>
+
diff --git a/app-office/abiword/files/abiword-3.0.0-fix-redraw.patch b/app-office/abiword/files/abiword-3.0.0-fix-redraw.patch
new file mode 100644
index 000000000000..cad0a92d4143
--- /dev/null
+++ b/app-office/abiword/files/abiword-3.0.0-fix-redraw.patch
@@ -0,0 +1,56 @@
+From c260e8d107a8708d57a60fbc18ef71ffeb88fcf1 Mon Sep 17 00:00:00 2001
+From: Hubert Figuiere <hub@figuiere.net>
+Date: Sat, 22 Feb 2014 18:42:56 +0000
+Subject: [PATCH] Bug 13582 - Fix redraw region in custom widget.
+
+Cherry-picked from trunk@33870 and reworked for 3.0.x
+
+git-svn-id: svn+ssh://svn.abisource.com/svnroot/abiword/branches/ABI-3-0-0-STABLE@33871 bcba8976-2d24-0410-9c9c-aab3bd5fdfd6
+---
+ src/af/gr/gtk/gr_UnixCairoGraphics.cpp | 2 +-
+ src/af/xap/gtk/xap_UnixCustomWidget.cpp | 10 ++++++----
+ 2 files changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/src/af/gr/gtk/gr_UnixCairoGraphics.cpp b/src/af/gr/gtk/gr_UnixCairoGraphics.cpp
+index 4c8d23c..15d7a7d 100644
+--- a/src/af/gr/gtk/gr_UnixCairoGraphics.cpp
++++ b/src/af/gr/gtk/gr_UnixCairoGraphics.cpp
+@@ -520,7 +520,7 @@ void GR_UnixCairoGraphics::_beginPaint()
+ {
+ UT_ASSERT(ev->type == GDK_EXPOSE || ev->type == GDK_DAMAGE);
+ if (ev->type == GDK_EXPOSE || ev->type == GDK_DAMAGE)
+- UT_ASSERT(ev->expose.window == m_pWin);
++ UT_ASSERT(ev->expose.window == m_pWin || ev->expose.window == gdk_window_get_effective_parent (m_pWin));
+ }
+ }
+ #endif
+diff --git a/src/af/xap/gtk/xap_UnixCustomWidget.cpp b/src/af/xap/gtk/xap_UnixCustomWidget.cpp
+index b0b7015..5150afe 100644
+--- a/src/af/xap/gtk/xap_UnixCustomWidget.cpp
++++ b/src/af/xap/gtk/xap_UnixCustomWidget.cpp
+@@ -45,16 +45,18 @@ void XAP_UnixCustomWidget::_fe::expose(XAP_UnixCustomWidget *self, GdkEventExpos
+ #endif
+ {
+ #if GTK_CHECK_VERSION(3,0,0)
+- GdkEventExpose *ev = reinterpret_cast<GdkEventExpose *>(gtk_get_current_event());
+-#endif
++ self->m_cr = cr;
++ double x1, y1, x2, y2;
++ cairo_clip_extents(cr, &x1, &y1, &x2, &y2);
++
++ UT_Rect r(x1, y1, x2 - x1, y2 - y1);
++#else
+ UT_Rect r(
+ ev->area.x,
+ ev->area.y,
+ ev->area.width,
+ ev->area.height
+ );
+-#if GTK_CHECK_VERSION(3,0,0)
+- self->m_cr = cr;
+ #endif
+ self->draw(&r);
+ }
+--
+1.9.1
+
diff --git a/app-office/abiword/files/abiword-3.0.0-fix-shortcut.patch b/app-office/abiword/files/abiword-3.0.0-fix-shortcut.patch
new file mode 100644
index 000000000000..0bc2db525150
--- /dev/null
+++ b/app-office/abiword/files/abiword-3.0.0-fix-shortcut.patch
@@ -0,0 +1,40 @@
+Description: Upstream-derived patch to fix SHIFT-CTRL-CURSOR_KEY shortcut combos.
+Origin: upstream, http://bugzilla.abisource.com/attachment.cgi?id=5695&action=view
+Bug: http://bugzilla.abisource.com/show_bug.cgi?id=13596
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/1315949
+
+Index: b/src/af/ev/gtk/ev_UnixKeyboard.cpp
+===================================================================
+--- a/src/af/ev/gtk/ev_UnixKeyboard.cpp
++++ b/src/af/ev/gtk/ev_UnixKeyboard.cpp
+@@ -87,17 +87,20 @@
+ {
+ state |= EV_EMS_CONTROL;
+
+- // Gdk does us the favour of working out a translated keyvalue for us,
+- // but with the Ctrl keys, we do not want that -- see bug 9545
+- Display * display = GDK_DISPLAY_XDISPLAY(gdk_window_get_display(e->window));
+- KeySym sym = XkbKeycodeToKeysym(display,
+- e->hardware_keycode,
+- e->state & GDK_SHIFT_MASK ? 1 : 0, 0);
+- xxx_UT_DEBUGMSG(("ev_UnixKeyboard::keyPressEvent: keyval %d, hardware_keycode %d\n"
+- " sym: 0x%x\n",
+- e->keyval, e->hardware_keycode, sym));
++ if (!s_isVirtualKeyCode(charData))
++ {
++ // Gdk does us the favour of working out a translated keyvalue for us,
++ // but with the Ctrl keys, we do not want that -- see bug 9545
++ Display * display = GDK_DISPLAY_XDISPLAY(gdk_window_get_display(e->window));
++ KeySym sym = XkbKeycodeToKeysym(display,
++ e->hardware_keycode,
++ e->state & GDK_SHIFT_MASK ? 1 : 0, 0);
++ xxx_UT_DEBUGMSG(("ev_UnixKeyboard::keyPressEvent: keyval %d, hardware_keycode %d\n"
++ " sym: 0x%x\n",
++ e->keyval, e->hardware_keycode, sym));
+
+- charData = sym;
++ charData = sym;
++ }
+ }
+ if (e->state & (s_alt_mask))
+ state |= EV_EMS_ALT;
diff --git a/app-office/abiword/files/abiword-3.0.0-pdf-crash.patch b/app-office/abiword/files/abiword-3.0.0-pdf-crash.patch
new file mode 100644
index 000000000000..633ef7f73eb7
--- /dev/null
+++ b/app-office/abiword/files/abiword-3.0.0-pdf-crash.patch
@@ -0,0 +1,102 @@
+From 128dfbc82cbd5c2c1bb6d0cde238a933639fba50 Mon Sep 17 00:00:00 2001
+From: Hubert Figuiere <hub@figuiere.net>
+Date: Sat, 28 Dec 2013 02:05:23 +0000
+Subject: [PATCH] Bug 13586 - We don't have a frame when printing.
+
+UPLIFTED from trunk
+
+git-svn-id: svn+ssh://svn.abisource.com/svnroot/abiword/branches/ABI-3-0-0-STABLE@33663 bcba8976-2d24-0410-9c9c-aab3bd5fdfd6
+---
+ src/text/fmt/gtk/fv_UnixSelectionHandles.cpp | 44 +++++++++++++++++++++-------
+ 1 file changed, 33 insertions(+), 11 deletions(-)
+
+diff --git a/src/text/fmt/gtk/fv_UnixSelectionHandles.cpp b/src/text/fmt/gtk/fv_UnixSelectionHandles.cpp
+index a3a3347..8bc187c 100644
+--- a/src/text/fmt/gtk/fv_UnixSelectionHandles.cpp
++++ b/src/text/fmt/gtk/fv_UnixSelectionHandles.cpp
+@@ -36,42 +36,60 @@ static void handle_dragged_cb (FvTextHandle *handle,
+
+ mode = _fv_text_handle_get_mode (handle);
+
+- if (pos == FV_TEXT_HANDLE_POSITION_SELECTION_START)
++ if (pos == FV_TEXT_HANDLE_POSITION_SELECTION_START) {
+ handles->updateSelectionStart ((UT_sint32)x, (UT_sint32)y);
++ }
+ else {
+- if (mode == FV_TEXT_HANDLE_MODE_SELECTION)
++ if (mode == FV_TEXT_HANDLE_MODE_SELECTION) {
+ handles->updateSelectionEnd ((UT_sint32)x, (UT_sint32)y);
+- else
++ }
++ else {
+ handles->updateCursor((UT_sint32)x, (UT_sint32)y);
++ }
+ }
+ }
+
+ FV_UnixSelectionHandles::FV_UnixSelectionHandles(FV_View *view, FV_Selection selection)
+ : FV_SelectionHandles (view, selection)
++ , m_text_handle(NULL)
+ {
+ XAP_Frame * pFrame = static_cast<XAP_Frame*>(m_pView->getParentData());
+- XAP_UnixFrameImpl * pFrameImpl =static_cast<XAP_UnixFrameImpl *>( pFrame->getFrameImpl());
+- GtkWidget * pWidget = pFrameImpl->getViewWidget();
+-
+- m_text_handle = _fv_text_handle_new (pWidget);
+- _fv_text_handle_set_relative_to (m_text_handle,
+- gtk_widget_get_window (pWidget));
+- g_signal_connect (m_text_handle, "handle-dragged",
+- G_CALLBACK(handle_dragged_cb), this);
++ // When saving to PDF (and printing) we don't have a frame
++ // See bug 13586
++ if (pFrame) {
++ XAP_UnixFrameImpl * pFrameImpl = static_cast<XAP_UnixFrameImpl *>(pFrame->getFrameImpl());
++ GtkWidget * pWidget = pFrameImpl->getViewWidget();
++
++ m_text_handle = _fv_text_handle_new (pWidget);
++ _fv_text_handle_set_relative_to (m_text_handle,
++ gtk_widget_get_window (pWidget));
++ g_signal_connect (m_text_handle, "handle-dragged",
++ G_CALLBACK(handle_dragged_cb), this);
++ }
+ }
+
+ FV_UnixSelectionHandles::~FV_UnixSelectionHandles()
+ {
++ if(!m_text_handle) {
++ return;
++ }
+ g_object_unref (m_text_handle);
+ }
+
+ void FV_UnixSelectionHandles::hide()
+ {
++ if(!m_text_handle) {
++ return;
++ }
+ _fv_text_handle_set_mode (m_text_handle, FV_TEXT_HANDLE_MODE_NONE);
+ }
+
+ void FV_UnixSelectionHandles::setCursorCoords(UT_sint32 x, UT_sint32 y, UT_uint32 height, bool visible)
+ {
++ if(!m_text_handle) {
++ return;
++ }
++
+ GdkRectangle rect;
+
+ _fv_text_handle_set_mode(m_text_handle, FV_TEXT_HANDLE_MODE_CURSOR);
+@@ -92,6 +110,10 @@ void FV_UnixSelectionHandles::setCursorCoords(UT_sint32 x, UT_sint32 y, UT_uint3
+ void FV_UnixSelectionHandles::setSelectionCoords(UT_sint32 start_x, UT_sint32 start_y, UT_uint32 start_height, bool start_visible,
+ UT_sint32 end_x, UT_sint32 end_y, UT_uint32 end_height, bool end_visible)
+ {
++ if(!m_text_handle) {
++ return;
++ }
++
+ GdkRectangle rect;
+
+ _fv_text_handle_set_mode(m_text_handle, FV_TEXT_HANDLE_MODE_SELECTION);
+--
+1.9.1
+