x11: Make gdk_x11_display_open() public API
authorBenjamin Otte <otte@redhat.com>
Wed, 1 Nov 2017 14:31:36 +0000 (15:31 +0100)
committerBenjamin Otte <otte@redhat.com>
Wed, 1 Nov 2017 14:48:00 +0000 (15:48 +0100)
People should be able to explicitily open displays to their backends.

docs/reference/gdk/gdk4-sections.txt
gdk/gdkdisplaymanager.c
gdk/x11/gdkdisplay-x11.c
gdk/x11/gdkprivate-x11.h
gdk/x11/gdkx11display.h

index 8722f6713f5c4980e4c8519c40d75c00b4acc6c2..745c790dda6c2a75e8d525d63c0f72d0f308be17 100644 (file)
@@ -921,6 +921,7 @@ gdk_x11_lookup_xdisplay
 gdk_x11_get_server_time
 gdk_x11_device_get_id
 gdk_x11_device_manager_lookup
+gdk_x11_display_open
 gdk_x11_display_get_user_time
 gdk_x11_display_broadcast_startup_message
 gdk_x11_display_get_startup_notification_id
index c3e32c27b681883ceb945f74b945123eecf02d9c..a21aa6766db118c20c68239be5ae24928fb3dbb7 100644 (file)
@@ -276,7 +276,7 @@ static GdkBackend gdk_backends[] = {
   { "mir",      _gdk_mir_display_open },
 #endif
 #ifdef GDK_WINDOWING_X11
-  { "x11",      _gdk_x11_display_open },
+  { "x11",      gdk_x11_display_open },
 #endif
 #ifdef GDK_WINDOWING_BROADWAY
   { "broadway", _gdk_broadway_display_open },
index af54a994f1e62e395b9d8ff3858fda8277915297..432ac34e2dbfafd0b8501744a5f00a3069515425 100644 (file)
@@ -1532,8 +1532,20 @@ gdk_display_setup_window_visual (GdkDisplay *display,
   gdk_display_set_rgba (display, rgba);
 }
 
+/**
+ * gdk_x11_display_open:
+ * @display_name: (allow-none): name of the X display.
+ *     See the XOpenDisplay() for details.
+ *
+ * Tries to open a new display to the X server given by
+ * @display_name. If opening the display fails, %NULL is
+ * returned.
+ *
+ * Returns: (nullable) (transfer full): The new display or
+ *     %NULL on error.
+ **/
 GdkDisplay *
-_gdk_x11_display_open (const gchar *display_name)
+gdk_x11_display_open (const gchar *display_name)
 {
   Display *xdisplay;
   GdkDisplay *display;
index 59b5e36b82ad20276fd1f57b3513218c52a8961d..0d7a571e36a5704b8c2b66fd06bcec2482b8215e 100644 (file)
@@ -137,7 +137,6 @@ void _gdk_x11_window_grab_check_destroy (GdkWindow *window);
 gboolean _gdk_x11_display_is_root_window (GdkDisplay *display,
                                           Window      xroot_window);
 
-GdkDisplay * _gdk_x11_display_open            (const gchar *display_name);
 void _gdk_x11_display_update_grab_info        (GdkDisplay *display,
                                                GdkDevice  *device,
                                                gint        status);
index 703aec7754309df2c29e13640e48d345dfacb589..445f024f10ed97c04d55cc26143e79a3170d7902 100644 (file)
@@ -53,6 +53,9 @@ typedef struct _GdkX11DisplayClass GdkX11DisplayClass;
 GDK_AVAILABLE_IN_ALL
 GType      gdk_x11_display_get_type            (void);
 
+GDK_AVAILABLE_IN_3_94
+GdkDisplay *  gdk_x11_display_open        (const char  *display_name);
+
 GDK_AVAILABLE_IN_ALL
 Display *gdk_x11_display_get_xdisplay     (GdkDisplay  *display);