display: Remove ::create_surface() vfunc
authorBenjamin Otte <otte@redhat.com>
Fri, 21 Apr 2023 03:41:48 +0000 (05:41 +0200)
committerBenjamin Otte <otte@redhat.com>
Wed, 26 Apr 2023 19:03:34 +0000 (21:03 +0200)
Instead, have a toplevel_type and popup_type in GdkDisplay and
call g_object_new() with those types.

22 files changed:
gdk/broadway/gdkdisplay-broadway.c
gdk/broadway/gdkprivate-broadway.h
gdk/broadway/gdksurface-broadway.c
gdk/broadway/gdksurface-broadway.h
gdk/gdkdisplay.c
gdk/gdkdisplayprivate.h
gdk/gdksurface.c
gdk/gdksurfaceprivate.h
gdk/macos/gdkmacosdisplay.c
gdk/macos/gdkmacossurface-private.h
gdk/macos/gdkmacossurface.c
gdk/wayland/gdkdisplay-wayland.c
gdk/wayland/gdkprivate-wayland.h
gdk/wayland/gdksurface-wayland.c
gdk/win32/gdkdisplay-win32.c
gdk/win32/gdkprivate-win32.h
gdk/win32/gdksurface-win32.c
gdk/win32/gdksurface-win32.h
gdk/x11/gdkdisplay-x11.c
gdk/x11/gdkprivate-x11.h
gdk/x11/gdksurface-x11.c
gdk/x11/gdksurface-x11.h

index 1610bc1673317718111974bab73e2d64711911eb..47305ba54c4497d3e38e08a8f16e29c21418c40d 100644 (file)
@@ -477,6 +477,8 @@ gdk_broadway_display_class_init (GdkBroadwayDisplayClass * class)
   object_class->dispose = gdk_broadway_display_dispose;
   object_class->finalize = gdk_broadway_display_finalize;
 
+  display_class->toplevel_type = GDK_TYPE_BROADWAY_TOPLEVEL;
+  display_class->popup_type = GDK_TYPE_BROADWAY_POPUP;
   display_class->cairo_context_type = GDK_TYPE_BROADWAY_CAIRO_CONTEXT;
 
   display_class->get_name = gdk_broadway_display_get_name;
@@ -488,7 +490,6 @@ gdk_broadway_display_class_init (GdkBroadwayDisplayClass * class)
 
   display_class->get_next_serial = gdk_broadway_display_get_next_serial;
   display_class->notify_startup_complete = gdk_broadway_display_notify_startup_complete;
-  display_class->create_surface = gdk_broadway_display_create_surface;
   display_class->get_keymap = _gdk_broadway_display_get_keymap;
 
   display_class->get_monitors = gdk_broadway_display_get_monitors;
index 085f33010c41143e065c8ce0fe84e266fb0032ed..0295aa10214f57af5bc00f3a2e7af5e16bd00a07 100644 (file)
@@ -103,9 +103,6 @@ void _gdk_broadway_display_get_default_cursor_size (GdkDisplay *display,
 void _gdk_broadway_display_get_maximal_cursor_size (GdkDisplay *display,
                                                     guint       *width,
                                                     guint       *height);
-GdkSurface * gdk_broadway_display_create_surface (GdkDisplay     *display,
-                                                  GdkSurfaceType  surface_type,
-                                                  GdkSurface     *parent);
 GdkKeymap* _gdk_broadway_display_get_keymap (GdkDisplay *display);
 void _gdk_broadway_display_consume_all_input (GdkDisplay *display);
 BroadwayInputMsg * _gdk_broadway_display_block_for_input (GdkDisplay *display,
index 592a71c9fa800dc3e19ec0a37ba6ddb360766f40..3937701fd9cd569ce4082cb530c11fcc6afe3b8c 100644 (file)
 
 G_DEFINE_TYPE (GdkBroadwaySurface, gdk_broadway_surface, GDK_TYPE_SURFACE)
 
-GType gdk_broadway_toplevel_get_type (void) G_GNUC_CONST;
-GType gdk_broadway_popup_get_type (void) G_GNUC_CONST;
-GType gdk_broadway_drag_surface_get_type (void) G_GNUC_CONST;
-
-#define GDK_TYPE_BROADWAY_TOPLEVEL (gdk_broadway_toplevel_get_type ())
-#define GDK_TYPE_BROADWAY_POPUP (gdk_broadway_popup_get_type ())
-#define GDK_TYPE_BROADWAY_DRAG_SURFACE (gdk_broadway_drag_surface_get_type ())
-
 /* We need to flush in an idle rather than AFTER_PAINT, as the clock
    is frozen during e.g. surface resizes so the paint will not happen
    and the surface resize request is never flushed. */
@@ -227,34 +219,6 @@ _gdk_broadway_roundtrip_notify (GdkSurface  *surface,
     }
 }
 
-GdkSurface *
-gdk_broadway_display_create_surface (GdkDisplay     *display,
-                                     GdkSurfaceType  surface_type,
-                                     GdkSurface     *parent)
-{
-  GdkSurface *surface;
-
-  switch (surface_type)
-    {
-    case GDK_SURFACE_TOPLEVEL:
-      surface = g_object_new (GDK_TYPE_BROADWAY_TOPLEVEL,
-                              "display", display,
-                              NULL);
-      break;
-    case GDK_SURFACE_POPUP:
-      surface = g_object_new (GDK_TYPE_BROADWAY_POPUP,
-                              "parent", parent,
-                              "display", display,
-                              NULL);
-      break;
-    default:
-      g_assert_not_reached ();
-      break;
-    }
-
-  return surface;
-}
-
 static void
 _gdk_broadway_surface_destroy (GdkSurface *surface,
                                gboolean    foreign_destroy)
index 70482891681d2281793fa4d2f0e53d1e84d017fc..776681f3c6c623a04f7d15340204d47eb8485a19 100644 (file)
@@ -32,6 +32,14 @@ G_BEGIN_DECLS
 /* Surface implementation for Broadway
  */
 
+GType gdk_broadway_toplevel_get_type (void) G_GNUC_CONST;
+GType gdk_broadway_popup_get_type (void) G_GNUC_CONST;
+GType gdk_broadway_drag_surface_get_type (void) G_GNUC_CONST;
+
+#define GDK_TYPE_BROADWAY_TOPLEVEL (gdk_broadway_toplevel_get_type ())
+#define GDK_TYPE_BROADWAY_POPUP (gdk_broadway_popup_get_type ())
+#define GDK_TYPE_BROADWAY_DRAG_SURFACE (gdk_broadway_drag_surface_get_type ())
+
 struct _GdkBroadwaySurface
 {
   GdkSurface parent_instance;
index 87277f864d0ea19c81e0ed95078d1143cf170732..1bdf40c711cec24da1b706a595c32fcc7c2642c9 100644 (file)
@@ -1196,16 +1196,6 @@ _gdk_display_unpause_events (GdkDisplay *display)
   display->event_pause_count--;
 }
 
-GdkSurface *
-gdk_display_create_surface (GdkDisplay     *display,
-                            GdkSurfaceType  surface_type,
-                            GdkSurface     *parent)
-{
-  return GDK_DISPLAY_GET_CLASS (display)->create_surface (display,
-                                                          surface_type,
-                                                          parent);
-}
-
 /*< private >
  * gdk_display_get_keymap:
  * @display: the `GdkDisplay`
index 00fb70511b7687ff0650ebd0d52e69bc43f6ac03..022b3f6f3f97d957e295e1ed0d067a953b13ee79 100644 (file)
@@ -114,6 +114,8 @@ struct _GdkDisplayClass
 {
   GObjectClass parent_class;
 
+  GType toplevel_type;        /* Type for GdkToplevel, must be set */
+  GType popup_type;           /* Type for GdkPopup, must be set */
   GType cairo_context_type;   /* type for GdkCairoContext, must be set */
   GType vk_context_type;      /* type for GdkVulkanContext, must be set if vk_extension_name != NULL */
   const char *vk_extension_name; /* Name of required windowing vulkan extension or %NULL (default) if Vulkan isn't supported */
@@ -134,10 +136,6 @@ struct _GdkDisplayClass
                                                          const char *startup_id);
   const char *              (*get_startup_notification_id) (GdkDisplay  *display);
 
-  GdkSurface *           (*create_surface)             (GdkDisplay        *display,
-                                                        GdkSurfaceType     surface_type,
-                                                        GdkSurface        *parent);
-
   GdkKeymap *            (*get_keymap)                 (GdkDisplay        *display);
 
   GdkGLContext *         (* init_gl)                   (GdkDisplay        *display,
@@ -203,9 +201,6 @@ void                _gdk_display_pointer_info_foreach (GdkDisplay       *display
 gulong              _gdk_display_get_next_serial      (GdkDisplay       *display);
 void                _gdk_display_pause_events         (GdkDisplay       *display);
 void                _gdk_display_unpause_events       (GdkDisplay       *display);
-GdkSurface *        gdk_display_create_surface        (GdkDisplay       *display,
-                                                       GdkSurfaceType    surface_type,
-                                                       GdkSurface       *parent);
 
 GdkGLContext *      gdk_display_get_gl_context        (GdkDisplay       *display);
 
index 209ae3080db91b6ed4fe532e93a77578c86f1ba9..981a511935d28d65e19a78a43154c5ec0667b0e3 100644 (file)
@@ -853,16 +853,6 @@ _gdk_surface_update_size (GdkSurface *surface)
   g_object_notify (G_OBJECT (surface), "height");
 }
 
-static GdkSurface *
-gdk_surface_new (GdkDisplay     *display,
-                 GdkSurfaceType  surface_type,
-                 GdkSurface     *parent)
-{
-  return gdk_display_create_surface (display,
-                                     surface_type,
-                                     parent);
-}
-
 /**
  * gdk_surface_new_toplevel: (constructor)
  * @display: the display to create the surface on
@@ -876,8 +866,9 @@ gdk_surface_new_toplevel (GdkDisplay *display)
 {
   g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL);
 
-  return gdk_surface_new (display, GDK_SURFACE_TOPLEVEL,
-                          NULL);
+  return g_object_new (GDK_DISPLAY_GET_CLASS (display)->toplevel_type,
+                       "display", display,
+                       NULL);
 }
 
 /**
@@ -897,11 +888,16 @@ gdk_surface_new_popup (GdkSurface *parent,
                        gboolean    autohide)
 {
   GdkSurface *surface;
+  GdkDisplay *display;
 
   g_return_val_if_fail (GDK_IS_SURFACE (parent), NULL);
 
-  surface = gdk_surface_new (parent->display, GDK_SURFACE_POPUP,
-                             parent);
+  display = gdk_surface_get_display (parent);
+
+  surface = g_object_new (GDK_DISPLAY_GET_CLASS (display)->popup_type,
+                         "display", display,
+                         "parent", parent,
+                         NULL);
 
   surface->autohide = autohide;
 
index b9e5c8f06638bf1b5ca6c1bcad956d7af243d646..1bf930822fa31e5eca345b5d2c33d6d156cc79be 100644 (file)
 
 G_BEGIN_DECLS
 
-typedef enum
-{
-  GDK_SURFACE_TOPLEVEL,
-  GDK_SURFACE_POPUP,
-} GdkSurfaceType;
-
 struct _GdkSurface
 {
   GObject parent_instance;
index d4996239eb2839c746c74d37e6fecb168c87723c..e73c012aebad9d1df697e2ed0c2cf7405ecc4685 100644 (file)
 #include "gdkmacosglcontext-private.h"
 #include "gdkmacoskeymap-private.h"
 #include "gdkmacosmonitor-private.h"
+#include "gdkmacospopupsurface-private.h"
 #include "gdkmacosseat-private.h"
 #include "gdkmacossurface-private.h"
+#include "gdkmacostoplevelsurface-private.h"
 #include "gdkmacosutils-private.h"
 
 G_DEFINE_TYPE (GdkMacosDisplay, gdk_macos_display, GDK_TYPE_DISPLAY)
@@ -539,22 +541,6 @@ _gdk_macos_display_surface_resigned_main (GdkMacosDisplay *self,
   _gdk_macos_display_clear_sorting (self);
 }
 
-static GdkSurface *
-gdk_macos_display_create_surface (GdkDisplay     *display,
-                                  GdkSurfaceType  surface_type,
-                                  GdkSurface     *parent)
-{
-  GdkMacosDisplay *self = (GdkMacosDisplay *)display;
-  GdkMacosSurface *surface;
-
-  g_assert (GDK_IS_MACOS_DISPLAY (self));
-  g_assert (!parent || GDK_IS_MACOS_SURFACE (parent));
-
-  surface = _gdk_macos_surface_new (self, surface_type, parent);
-
-  return GDK_SURFACE (surface);
-}
-
 static GdkKeymap *
 gdk_macos_display_get_keymap (GdkDisplay *display)
 {
@@ -610,10 +596,11 @@ gdk_macos_display_class_init (GdkMacosDisplayClass *klass)
 
   object_class->finalize = gdk_macos_display_finalize;
 
+  display_class->toplevel_type = GDK_TYPE_MACOS_TOPLEVEL_SURFACE;
+  display_class->popup_type = GDK_TYPE_MACOS_POPUP_SURFACE;
   display_class->cairo_context_type = GDK_TYPE_MACOS_CAIRO_CONTEXT;
 
   display_class->beep = gdk_macos_display_beep;
-  display_class->create_surface = gdk_macos_display_create_surface;
   display_class->flush = gdk_macos_display_flush;
   display_class->get_keymap = gdk_macos_display_get_keymap;
   display_class->get_monitors = gdk_macos_display_get_monitors;
index bab6e717b6f97e34a2b000463c16e349e3df6e5f..d10485bc4bc0c1659ba75fac6446a90c8bc0cff0 100644 (file)
@@ -84,9 +84,6 @@ struct _GdkMacosSurfaceClass
   GdkSurfaceClass parent_class;
 };
 
-GdkMacosSurface   *_gdk_macos_surface_new                     (GdkMacosDisplay      *display,
-                                                               GdkSurfaceType        surface_type,
-                                                               GdkSurface           *parent);
 NSWindow          *_gdk_macos_surface_get_native              (GdkMacosSurface      *self);
 void               _gdk_macos_surface_set_native              (GdkMacosSurface      *self,
                                                                GdkMacosWindow       *window);
index 51f6ff0cade797ccb440962d3d780281ee07e3c3..3f46194904884d49a5b81f741fd8155b0b29cd8d 100644 (file)
@@ -44,6 +44,7 @@
 #include "gdkmacosmonitor-private.h"
 #include "gdkmacospopupsurface-private.h"
 #include "gdkmacosutils-private.h"
+#include "gdkmacostoplevelsurface-private.h"
 
 G_DEFINE_ABSTRACT_TYPE (GdkMacosSurface, gdk_macos_surface, GDK_TYPE_SURFACE)
 
@@ -586,39 +587,6 @@ gdk_macos_surface_init (GdkMacosSurface *self)
   self->monitors = g_ptr_array_new_with_free_func (g_object_unref);
 }
 
-GdkMacosSurface *
-_gdk_macos_surface_new (GdkMacosDisplay *display,
-                        GdkSurfaceType   surface_type,
-                        GdkSurface      *parent)
-{
-  GdkMacosSurface *ret;
-
-  g_return_val_if_fail (GDK_IS_MACOS_DISPLAY (display), NULL);
-
-  switch (surface_type)
-    {
-    case GDK_SURFACE_TOPLEVEL:
-      ret = g_object_new (GDK_TYPE_MACOS_TOPLEVEL_SURFACE,
-                          "display", display,
-                          NULL);
-      break;
-
-    case GDK_SURFACE_POPUP:
-      ret = g_object_new (GDK_TYPE_MACOS_POPUP_SURFACE,
-                          "display", display,
-                          "parent", parent,
-                          NULL);
-
-      break;
-
-    default:
-      g_warn_if_reached ();
-      ret = NULL;
-    }
-
-  return g_steal_pointer (&ret);
-}
-
 void
 _gdk_macos_surface_get_shadow (GdkMacosSurface *self,
                                int             *top,
index 04dd738649f7304f9d32c9673e09ce00096f2f3a..941a6d00f40be379f654ad9dd155a9d5c3d44931 100644 (file)
@@ -967,6 +967,8 @@ gdk_wayland_display_class_init (GdkWaylandDisplayClass *class)
   object_class->dispose = gdk_wayland_display_dispose;
   object_class->finalize = gdk_wayland_display_finalize;
 
+  display_class->toplevel_type = GDK_TYPE_WAYLAND_TOPLEVEL;
+  display_class->popup_type = GDK_TYPE_WAYLAND_POPUP;
   display_class->cairo_context_type = GDK_TYPE_WAYLAND_CAIRO_CONTEXT;
 
 #ifdef GDK_RENDERING_VULKAN
@@ -987,7 +989,6 @@ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
   display_class->get_startup_notification_id = gdk_wayland_display_get_startup_notification_id;
 G_GNUC_END_IGNORE_DEPRECATIONS
   display_class->notify_startup_complete = gdk_wayland_display_notify_startup_complete;
-  display_class->create_surface = gdk_wayland_display_create_surface;
   display_class->get_keymap = _gdk_wayland_display_get_keymap;
 
   display_class->init_gl = gdk_wayland_display_init_gl;
index 3df11880f278384a8fd806eff8c3e77905436ab8..0860f118b430cba4b825396968e4ebedb5f4929f 100644 (file)
@@ -157,10 +157,6 @@ void             gdk_wayland_drop_set_source_actions       (GdkDrop
 void             gdk_wayland_drop_set_action               (GdkDrop               *drop,
                                                             uint32_t               action);
 
-GdkSurface *     gdk_wayland_display_create_surface        (GdkDisplay            *display,
-                                                            GdkSurfaceType         surface_type,
-                                                            GdkSurface            *parent);
-
 void        _gdk_wayland_display_create_seat    (GdkWaylandDisplay *display,
                                                  guint32                  id,
                                                  struct wl_seat          *seat);
index 816d47243ec8c45a830b15cc3ffa9c0b35371e7b..4dd546aab6296a0d2565a27edc8678edabe81035 100644 (file)
@@ -841,36 +841,6 @@ gdk_wayland_surface_destroy_wl_surface (GdkWaylandSurface *self)
   g_clear_pointer (&self->display_server.outputs, g_slist_free);
 }
 
-GdkSurface *
-gdk_wayland_display_create_surface (GdkDisplay     *display,
-                                    GdkSurfaceType  surface_type,
-                                    GdkSurface     *parent)
-{
-  GdkSurface *surface;
-
-  switch (surface_type)
-    {
-    case GDK_SURFACE_TOPLEVEL:
-      g_warn_if_fail (parent == NULL);
-      surface = g_object_new (GDK_TYPE_WAYLAND_TOPLEVEL,
-                              "display", display,
-                              NULL);
-      break;
-    case GDK_SURFACE_POPUP:
-      g_warn_if_fail (parent != NULL);
-      surface = g_object_new (GDK_TYPE_WAYLAND_POPUP,
-                              "parent", parent,
-                              "display", display,
-                              NULL);
-      break;
-    default:
-      g_assert_not_reached ();
-      break;
-    }
-
-  return surface;
-}
-
 static void
 maybe_notify_mapped (GdkSurface *surface)
 {
index f8aa2a97c1796bd8a95f6c2b9bcfbeee255f7e17..bad1076866eb5f84056946be9154f2ca36d39573 100644 (file)
@@ -28,6 +28,7 @@
 #include "gdkdisplay-win32.h"
 #include "gdkdevicemanager-win32.h"
 #include "gdkglcontext-win32.h"
+#include "gdksurface-win32.h"
 #include "gdkwin32display.h"
 #include "gdkwin32screen.h"
 #include "gdkwin32surface.h"
@@ -1268,6 +1269,8 @@ gdk_win32_display_class_init (GdkWin32DisplayClass *klass)
   object_class->dispose = gdk_win32_display_dispose;
   object_class->finalize = gdk_win32_display_finalize;
 
+  display_class->toplevel_type = GDK_TYPE_WIN32_TOPLEVEL;
+  display_class->popup_type = GDK_TYPE_WIN32_POPUP;
   display_class->cairo_context_type = GDK_TYPE_WIN32_CAIRO_CONTEXT;
 
   display_class->get_name = gdk_win32_display_get_name;
@@ -1281,7 +1284,6 @@ gdk_win32_display_class_init (GdkWin32DisplayClass *klass)
 
   display_class->get_next_serial = gdk_win32_display_get_next_serial;
   display_class->notify_startup_complete = gdk_win32_display_notify_startup_complete;
-  display_class->create_surface = gdk_win32_display_create_surface;
 
   display_class->get_keymap = _gdk_win32_display_get_keymap;
 
index 6433da545de00af694f07d5c4b370c4e0a161588..918e961aa0cfa8057a8acc945042626547abe943 100644 (file)
@@ -381,10 +381,6 @@ GdkModifierType _gdk_win32_keymap_get_mod_mask   (GdkWin32Keymap *keymap);
 
 GdkKeymap *_gdk_win32_display_get_keymap (GdkDisplay *display);
 
-GdkSurface *gdk_win32_display_create_surface  (GdkDisplay    *display,
-                                               GdkSurfaceType surface_type,
-                                               GdkSurface     *parent);
-
 /* stray GdkSurfaceImplWin32 members */
 void _gdk_win32_surface_register_dnd (GdkSurface *window);
 void _gdk_win32_surface_unregister_dnd (GdkSurface *window);
index a40b946ec7e2adec7348f25878053a07ada5a38b..aa18e117b3657cea0f168ca8d670deaa2f26b943 100644 (file)
@@ -135,14 +135,6 @@ static void     gdk_win32_impl_frame_clock_after_paint (GdkFrameClock *clock,
 
 G_DEFINE_TYPE (GdkWin32Surface, gdk_win32_surface, GDK_TYPE_SURFACE)
 
-GType gdk_win32_toplevel_get_type (void) G_GNUC_CONST;
-GType gdk_win32_popup_get_type (void) G_GNUC_CONST;
-GType gdk_win32_drag_surface_get_type (void) G_GNUC_CONST;
-
-#define GDK_TYPE_WIN32_TOPLEVEL (gdk_win32_toplevel_get_type ())
-#define GDK_TYPE_WIN32_POPUP (gdk_win32_popup_get_type ())
-#define GDK_TYPE_WIN32_DRAG_SURFACE (gdk_win32_drag_surface_get_type ())
-
 static void
 gdk_win32_surface_init (GdkWin32Surface *impl)
 {
@@ -435,34 +427,6 @@ RegisterGdkClass (GType wtype)
   return klass;
 }
 
-GdkSurface *
-gdk_win32_display_create_surface (GdkDisplay     *display,
-                                  GdkSurfaceType  surface_type,
-                                  GdkSurface     *parent)
-{
-  GdkSurface *surface;
-
-  switch (surface_type)
-    {
-    case GDK_SURFACE_TOPLEVEL:
-      surface = g_object_new (GDK_TYPE_WIN32_TOPLEVEL,
-                              "display", display,
-                              NULL);
-      break;
-    case GDK_SURFACE_POPUP:
-      surface = g_object_new (GDK_TYPE_WIN32_POPUP,
-                              "parent", parent,
-                              "display", display,
-                              NULL);
-      break;
-    default:
-      g_assert_not_reached ();
-      break;
-    }
-
-  return surface;
-}
-
 static void
 gdk_win32_surface_constructed (GObject *object)
 {
index 89d3202729e376c4448c4daa13fc66d372ea288c..afe8d42010140b1c5cb3fa0ae684c94da472ac33 100644 (file)
 
 G_BEGIN_DECLS
 
+GType gdk_win32_toplevel_get_type (void) G_GNUC_CONST;
+GType gdk_win32_popup_get_type (void) G_GNUC_CONST;
+GType gdk_win32_drag_surface_get_type (void) G_GNUC_CONST;
+
+#define GDK_TYPE_WIN32_TOPLEVEL (gdk_win32_toplevel_get_type ())
+#define GDK_TYPE_WIN32_POPUP (gdk_win32_popup_get_type ())
+#define GDK_TYPE_WIN32_DRAG_SURFACE (gdk_win32_drag_surface_get_type ())
+
 typedef enum
 {
   GDK_DECOR_ALL         = 1 << 0,
index c8786a5601daaae3f6fc57398e1dc26180d97821..f93941d3593a9665949121b8da8f93378fd934d4 100644 (file)
@@ -3028,6 +3028,8 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class)
   object_class->dispose = gdk_x11_display_dispose;
   object_class->finalize = gdk_x11_display_finalize;
 
+  display_class->toplevel_type = GDK_TYPE_X11_TOPLEVEL;
+  display_class->popup_type = GDK_TYPE_X11_POPUP;
   display_class->cairo_context_type = GDK_TYPE_X11_CAIRO_CONTEXT;
 #ifdef GDK_RENDERING_VULKAN
   display_class->vk_context_type = GDK_TYPE_X11_VULKAN_CONTEXT;
@@ -3048,7 +3050,6 @@ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
   display_class->get_startup_notification_id = gdk_x11_display_get_startup_notification_id;
 G_GNUC_END_IGNORE_DEPRECATIONS
   display_class->notify_startup_complete = gdk_x11_display_notify_startup_complete;
-  display_class->create_surface = gdk_x11_display_create_surface;
   display_class->get_keymap = gdk_x11_display_get_keymap;
 
   display_class->init_gl = gdk_x11_display_init_gl;
index 1bedb10703b3650f5159d13c91d84c8c0fd07701..d60b97f6b6c400a229c1ac61e03bbaa179b82c67 100644 (file)
@@ -173,9 +173,6 @@ void       _gdk_x11_display_get_maximal_cursor_size (GdkDisplay *display,
                                                      guint      *width,
                                                      guint      *height);
 
-GdkSurface * gdk_x11_display_create_surface (GdkDisplay     *display,
-                                             GdkSurfaceType  surface_type,
-                                             GdkSurface     *parent);
 GList *    gdk_x11_display_get_toplevel_windows     (GdkDisplay *display);
 
 void _gdk_x11_precache_atoms (GdkDisplay          *display,
index cf901acce4eeaba2aa5b887e98e100d750df5580..9f6c7b2d2d64e17997808a8aeaa00a22a96ecc4f 100644 (file)
@@ -130,14 +130,6 @@ static void gdk_x11_surface_set_geometry_hints (GdkSurface        *surface,
 
 G_DEFINE_TYPE (GdkX11Surface, gdk_x11_surface, GDK_TYPE_SURFACE)
 
-GType gdk_x11_toplevel_get_type (void) G_GNUC_CONST;
-GType gdk_x11_popup_get_type (void) G_GNUC_CONST;
-GType gdk_x11_drag_surface_get_type (void) G_GNUC_CONST;
-
-#define GDK_TYPE_X11_TOPLEVEL (gdk_x11_toplevel_get_type ())
-#define GDK_TYPE_X11_POPUP (gdk_x11_popup_get_type ())
-#define GDK_TYPE_X11_DRAG_SURFACE (gdk_x11_drag_surface_get_type ())
-
 static void
 gdk_x11_surface_init (GdkX11Surface *impl)
 {  
@@ -1239,34 +1231,6 @@ gdk_x11_surface_create_pixmap_surface (GdkSurface *surface,
 static void gdk_x11_surface_set_type_hint (GdkSurface        *surface,
                                            GdkSurfaceTypeHint hint);
 
-GdkSurface *
-gdk_x11_display_create_surface (GdkDisplay     *display,
-                                GdkSurfaceType  surface_type,
-                                GdkSurface     *parent)
-{
-  GdkSurface *surface;
-
-  switch (surface_type)
-    {
-    case GDK_SURFACE_TOPLEVEL:
-      surface = g_object_new (GDK_TYPE_X11_TOPLEVEL,
-                              "display", display,
-                              NULL);
-      break;
-    case GDK_SURFACE_POPUP:
-      surface = g_object_new (GDK_TYPE_X11_POPUP,
-                              "parent", parent,
-                              "display", display,
-                              NULL);
-      break;
-    default:
-      g_assert_not_reached ();
-      break;
-    }
-
-  return surface;
-}
-
 static void
 gdk_toplevel_x11_free_contents (GdkDisplay *display,
                                GdkToplevelX11 *toplevel)
index 2967cf1b66bf12f07969448dd861d5edbc2e8853..150920d45b183115b6b56335c140d9ed8e691588 100644 (file)
 
 G_BEGIN_DECLS
 
+GType gdk_x11_toplevel_get_type (void) G_GNUC_CONST;
+GType gdk_x11_popup_get_type (void) G_GNUC_CONST;
+GType gdk_x11_drag_surface_get_type (void) G_GNUC_CONST;
+
+#define GDK_TYPE_X11_TOPLEVEL (gdk_x11_toplevel_get_type ())
+#define GDK_TYPE_X11_POPUP (gdk_x11_popup_get_type ())
+#define GDK_TYPE_X11_DRAG_SURFACE (gdk_x11_drag_surface_get_type ())
+
 typedef struct _GdkToplevelX11 GdkToplevelX11;
 typedef struct _GdkXPositionInfo GdkXPositionInfo;