[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/gtkutil.c,v
From: |
Jan Djärv |
Subject: |
[Emacs-diffs] Changes to emacs/src/gtkutil.c,v |
Date: |
Mon, 17 Sep 2007 08:07:20 +0000 |
CVSROOT: /cvsroot/emacs
Module name: emacs
Changes by: Jan Djärv <jhd> 07/09/17 08:07:20
Index: gtkutil.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/gtkutil.c,v
retrieving revision 1.119
retrieving revision 1.120
diff -u -b -r1.119 -r1.120
--- gtkutil.c 16 Sep 2007 09:37:43 -0000 1.119
+++ gtkutil.c 17 Sep 2007 08:07:19 -0000 1.120
@@ -51,6 +51,13 @@
#ifdef HAVE_GTK_MULTIDISPLAY
+/* Gtk does not work well without any display open. Emacs may close
+ all its displays. In that case, keep a display around just for
+ the purpose of having one. */
+
+static GdkDisplay *gdpy_def;
+
+
/* Return the GdkDisplay that corresponds to the X display DPY. */
static GdkDisplay *
@@ -147,9 +154,15 @@
break;
}
- if (! new_dpy) return; /* Emacs will exit anyway. */
-
+ if (new_dpy)
gdpy_new = gdk_x11_lookup_xdisplay (new_dpy);
+ else
+ {
+ if (!gdpy_def)
+ gdpy_def = gdk_display_open (gdk_display_get_name (gdpy));
+ gdpy_new = gdpy_def;
+ }
+
gdk_display_manager_set_default_display (gdk_display_manager_get (),
gdpy_new);
}
@@ -4091,6 +4104,8 @@
we keep it permanently linked in. */
XftInit (0);
#endif
+
+ gdpy_def = NULL;
xg_ignore_gtk_scrollbar = 0;
xg_detached_menus = 0;
xg_menu_cb_list.prev = xg_menu_cb_list.next =
- [Emacs-diffs] Changes to emacs/src/gtkutil.c,v, Jan Djärv, 2007/09/02
- [Emacs-diffs] Changes to emacs/src/gtkutil.c,v, Glenn Morris, 2007/09/06
- [Emacs-diffs] Changes to emacs/src/gtkutil.c,v, Glenn Morris, 2007/09/12
- [Emacs-diffs] Changes to emacs/src/gtkutil.c,v, Glenn Morris, 2007/09/14
- [Emacs-diffs] Changes to emacs/src/gtkutil.c,v, Jan Djärv, 2007/09/16
- [Emacs-diffs] Changes to emacs/src/gtkutil.c,v,
Jan Djärv <=