summaryrefslogtreecommitdiff
path: root/gdk/gdkdisplay.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-06-20 23:29:19 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-06-20 23:29:19 +0000
commit5830bf89b5bb3eb48fa84ed690a726be3a82e129 (patch)
treeffccd98b302bb7b4e18bc2acca6500d5f4cfe648 /gdk/gdkdisplay.c
parent4251a51edc15c41799d87d3e26761c2064507df6 (diff)
downloadgtk+-5830bf89b5bb3eb48fa84ed690a726be3a82e129.tar.gz
Add a singleton object that we can use to get notification when displays
Thu Jun 20 16:49:00 2002 Owen Taylor <otaylor@redhat.com> * gdk/gdkdisplaymanager.[ch] gdk/gdk.[ch] gdk/gdkdisplay.c gdk/gdkinternals.h gdk/x11/gdkdisplay-x11.c gdk/win32/gdkdisplay-win32.c: Add a singleton object that we can use to get notification when displays appear / disappear or the default display changes. gdk_set_default_display() => gdk_display_manager_set_default_display() gdk_list_displays() => gdk_display_manager_list_displays(). (#85696) * gdk/Makefile.am gdk/gdkmarshalers.list: Add marshaler generation. * gdk/gdkintl.h: Add this. * gtk/gtkmain.c: Add gtk_parse_args() that initializes GTK+ without opening a display. * gtk/gtkmain.c: Set things up so if a module exports gtk_module_init() and gtk_module_display_init(), then we treat it as multihead aware, otherwise, we only initialize it after the default display is set.
Diffstat (limited to 'gdk/gdkdisplay.c')
-rw-r--r--gdk/gdkdisplay.c63
1 files changed, 3 insertions, 60 deletions
diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c
index 9a746d4978..d4fa23a330 100644
--- a/gdk/gdkdisplay.c
+++ b/gdk/gdkdisplay.c
@@ -31,8 +31,6 @@ static void gdk_display_class_init (GdkDisplayClass *class);
static void gdk_display_init (GdkDisplay *display);
static void gdk_display_finalize (GObject *object);
-static GdkDisplay *default_display = NULL;
-
static GObjectClass *parent_class;
GType
@@ -90,8 +88,9 @@ gdk_display_finalize (GObject *object)
_gdk_displays = g_slist_remove (_gdk_displays, display);
- if (default_display == display)
- default_display = NULL;
+ if (gdk_get_default_display() == display)
+ gdk_display_manager_set_default_display (gdk_display_manager_get(),
+ NULL);
parent_class->finalize (object);
}
@@ -110,62 +109,6 @@ gdk_display_close (GdkDisplay *display)
}
/**
- * gdk_set_default_display:
- * @display: a #GdkDisplay
- *
- * Sets @display as the default display.
- **/
-void
-gdk_set_default_display (GdkDisplay *display)
-{
- default_display = display;
-
- _gdk_windowing_set_default_display (display);
-}
-
-/**
- * gdk_get_default_display:
- *
- * Gets the default #GdkDisplay.
- *
- * Returns: a #GdkDisplay, or %NULL if there is no default
- * display.
- */
-GdkDisplay *
-gdk_get_default_display (void)
-{
- return default_display;
-}
-
-/**
- * gdk_get_default_screen:
- *
- * Gets the default screen for the default display. (See
- * gdk_get_default_display ()).
- *
- * Returns: a #GdkScreen.
- */
-GdkScreen *
-gdk_get_default_screen (void)
-{
- return gdk_display_get_default_screen (gdk_get_default_display ());
-}
-
-/**
- * gdk_list_displays:
- *
- * List all currently open displays.
- *
- * Return value: a newly allocated #GSList of #GdkDisplay objects.
- * Free this list with g_slist_free() when you are done with it.
- **/
-GSList *
-gdk_list_displays (void)
-{
- return g_slist_copy (_gdk_displays);
-}
-
-/**
* gdk_display_get_event:
* @display: a #GdkDisplay
*