Commit 949bcb9a authored by Edward Betts's avatar Edward Betts Committed by Dmitry Smirnov

New upstream patch to fix format painter bug (Closes: #766845).

parent 810d9977
abiword (3.0.0-8) unstable; urgency=medium
* QA upload.
* Apply an upstream patch to fix format painter bug. (Closes: #766845).
-- Edward Betts <edward@4angle.com> Thu, 04 Dec 2014 22:00:10 +0000
abiword (3.0.0-7) unstable; urgency=medium
* Build-Depends: libjpeg8-dev --> libjpeg-dev (Closes: #763464).
......
Last-Update: 2014-11-15
Bug-Debian: http://bugs.debian.org/766845
Bug-Abiword: http://bugzilla.abisource.com/13586
Description: fix format painter bug
Index: abiword/src/text/fmt/gtk/fv_UnixSelectionHandles.cpp
===================================================================
--- abiword.orig/src/text/fmt/gtk/fv_UnixSelectionHandles.cpp
+++ abiword/src/text/fmt/gtk/fv_UnixSelectionHandles.cpp
@@ -36,42 +36,60 @@ static void handle_dragged_cb (FvTextHan
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::setCursorC
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);
......@@ -10,3 +10,4 @@ autosave.diff -p1
ctrl-comma-subscript.diff -p1
mime-types-desktop.diff -p1
mime-types.diff -p1
format-painter-fix.patch
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment