summaryrefslogtreecommitdiff
path: root/src/gtkutil.c
diff options
context:
space:
mode:
authorJan Djärv <jan.h.d@swipnet.se>2011-11-27 19:33:17 +0100
committerJan Djärv <jan.h.d@swipnet.se>2011-11-27 19:33:17 +0100
commit54e9e3bf847d39b8c0daa46a999efeb6f84c9d76 (patch)
tree4cb768242a57e75c056a6172baf7455e2c47180a /src/gtkutil.c
parente9a452d9cd08b5e09fa7ee51d1f57bbc4a9509c0 (diff)
downloademacs-54e9e3bf847d39b8c0daa46a999efeb6f84c9d76.tar.gz
Work around an Ubuntu 11.10 bug where Emacs loops forever when started.
* configure.in: Check for gtk_window_set_has_resize_grip. * src/gtkutil.c (xg_create_frame_widgets): Call gtk_window_set_has_resize_grip (FALSE) if that function is present with Gtk+ 2.0.
Diffstat (limited to 'src/gtkutil.c')
-rw-r--r--src/gtkutil.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gtkutil.c b/src/gtkutil.c
index 7e6f5c3164d..bc71685819e 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -1100,6 +1100,14 @@ xg_create_frame_widgets (FRAME_PTR f)
else
wtop = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ /* gtk_window_set_has_resize_grip is a Gtk+ 3.0 function but Ubuntu
+ has backported it to Gtk+ 2.0 and they add the resize grip for
+ Gtk+ 2.0 applications also. But it has a bug that makes Emacs loop
+ forever, so disable the grip. */
+#if GTK_MAJOR_VERSION < 3 && defined (HAVE_GTK_WINDOW_SET_HAS_RESIZE_GRIP)
+ gtk_window_set_has_resize_grip (GTK_WINDOW (wtop), FALSE);
+#endif
+
xg_set_screen (wtop, f);
wvbox = gtk_vbox_new (FALSE, 0);