[eog-plugins] [champlain] Place map widget inside GtkFrame instead of a GtkViewport



commit aca7153e266dd8f1755fce72c370cbe1862d50b0
Author: Felix Riemann <friemann gnome org>
Date:   Mon Aug 24 12:46:38 2009 +0200

    [champlain] Place map widget inside GtkFrame instead of a GtkViewport
    
    This is a temporary workaround to avoid fatal X errors when destroying
    the widget. A label-less GtkFrame should only look minimally different
    to the viewport and avoids the fatal errors. See bgo#590692 for details.

 ChangeLog                                |    7 +++++++
 plugins/champlain/eog-champlain-plugin.c |    7 +++++--
 2 files changed, 12 insertions(+), 2 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index c4a6b5a..1617a95 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2009-08-24  Felix Riemann  <friemann gnome org>
 
+	* plugins/champlain/eog-champlain-plugin.c (impl_activate):
+	Place the champlain widget inside a GtkFrame instead of a viewport.
+	This is just a temporary workaround until there is a solution for the
+	X errors mentioned in bug 590692.
+
+2009-08-24  Felix Riemann  <friemann gnome org>
+
 	* configure.ac:
 	* plugins/champlain/eog-champlain-plugin.c:
 	Update champlain plugin to work with libchamplain-0.3 and clutter-1.0.
diff --git a/plugins/champlain/eog-champlain-plugin.c b/plugins/champlain/eog-champlain-plugin.c
index 5b6999c..9561bc7 100644
--- a/plugins/champlain/eog-champlain-plugin.c
+++ b/plugins/champlain/eog-champlain-plugin.c
@@ -271,9 +271,12 @@ impl_activate (EogPlugin *plugin, EogWindow *window)
 				data,
 				(GDestroyNotify) free_window_data);
 
-	viewport = gtk_viewport_new (NULL, NULL);
+	/* This is a workaround until bug 590692 is fixed. */
+	viewport = gtk_frame_new (NULL);
+	gtk_frame_set_shadow_type (GTK_FRAME (viewport), GTK_SHADOW_ETCHED_IN);
+	/*viewport = gtk_viewport_new (NULL, NULL);
 	gtk_viewport_set_shadow_type (GTK_VIEWPORT (viewport),
-				      GTK_SHADOW_ETCHED_IN);
+				      GTK_SHADOW_ETCHED_IN);*/
 
 	embed = gtk_champlain_embed_new ();
 	data->map = gtk_champlain_embed_get_view (GTK_CHAMPLAIN_EMBED (embed));



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]