Submitted By:              Douglas R. Reno
Date:                      2017-01-11
Initial Package Version:   3.0.2
Upstream Status:           Applied
Origin:                    Upstream (http://bugzilla.abisource.com/show_bug.cgi?id=13815)
Description:               Fixes rendering the text windows with GTK+-3.22.x by
                           converting to a gboolean from a gint, fixing the
                           window drawing as completely black.

diff -Naurp abiword-3.0.2.orig/src/af/xap/gtk/xap_UnixFrameImpl.cpp abiword-3.0.2/src/af/xap/gtk/xap_UnixFrameImpl.cpp
--- abiword-3.0.2.orig/src/af/xap/gtk/xap_UnixFrameImpl.cpp	2014-12-14 08:56:47.000000000 -0600
+++ abiword-3.0.2/src/af/xap/gtk/xap_UnixFrameImpl.cpp	2017-01-12 13:13:44.120217859 -0600
@@ -1208,9 +1208,9 @@ gint XAP_UnixFrameImpl::_fe::delete_even
 }
 
 #if GTK_CHECK_VERSION(3,0,0)
-gint XAP_UnixFrameImpl::_fe::draw(GtkWidget * w, cairo_t * cr)
+gboolean XAP_UnixFrameImpl::_fe::draw(GtkWidget * w, cairo_t * cr)
 #else
-gint XAP_UnixFrameImpl::_fe::expose(GtkWidget * w, GdkEventExpose* pExposeEvent)
+gboolean XAP_UnixFrameImpl::_fe::expose(GtkWidget * w, GdkEventExpose* pExposeEvent)
 #endif
 {
 	XAP_UnixFrameImpl * pUnixFrameImpl = static_cast<XAP_UnixFrameImpl *>(g_object_get_data(G_OBJECT(w), "user_data"));
@@ -1243,7 +1243,7 @@ gint XAP_UnixFrameImpl::_fe::expose(GtkW
 		pView->draw(&rClip);
 #endif
 	}
-	return FALSE;
+	return TRUE;
 }
 
 static bool bScrollWait = false;
diff -Naurp abiword-3.0.2.orig/src/af/xap/gtk/xap_UnixFrameImpl.h abiword-3.0.2/src/af/xap/gtk/xap_UnixFrameImpl.h
--- abiword-3.0.2.orig/src/af/xap/gtk/xap_UnixFrameImpl.h	2013-04-07 08:53:03.000000000 -0500
+++ abiword-3.0.2/src/af/xap/gtk/xap_UnixFrameImpl.h	2017-01-12 13:14:25.538506298 -0600
@@ -152,9 +152,9 @@ protected:
 			static gint key_release_event(GtkWidget* w, GdkEventKey* e);
 			static gint delete_event(GtkWidget * w, GdkEvent * /*event*/, gpointer /*data*/);
 #if GTK_CHECK_VERSION(3,0,0)
-			static gint draw(GtkWidget * w, cairo_t * cr);
+			static gboolean draw(GtkWidget * w, cairo_t * cr);
 #else
-			static gint expose(GtkWidget * w, GdkEventExpose* pExposeEvent);
+			static gboolean expose(GtkWidget * w, GdkEventExpose* pExposeEvent);
 #endif
 			static gint do_ZoomUpdate( gpointer /* xap_UnixFrame * */ p);
 			static void vScrollChanged(GtkAdjustment * w, gpointer /*data*/);
