diff options
author | Matthias Clasen <mclasen@redhat.com> | 2019-04-22 01:14:46 +0000 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2019-05-28 20:25:14 +0000 |
commit | 712a5d4f257d4fc73cd64ec12d5f818a6377621f (patch) | |
tree | a9527e856f0b3e38e58af5d4acc479170468092a /gdk/gdkdisplayprivate.h | |
parent | 93b8f2563d5d5c9aa16018ebc1533cbe1a408f87 (diff) | |
download | gtk+-712a5d4f257d4fc73cd64ec12d5f818a6377621f.tar.gz |
Get rid of GdkSurfaceImpl
We don't need the complicated wrapper system anymore,
since client-side windows are gone. This commit moves
all the vfuncs to GtkSurfaceClass, and changes the
backends to just derive their surface implementation
from GdkSurface.
Diffstat (limited to 'gdk/gdkdisplayprivate.h')
-rw-r--r-- | gdk/gdkdisplayprivate.h | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/gdk/gdkdisplayprivate.h b/gdk/gdkdisplayprivate.h index 496d023614..8c8b76a8bc 100644 --- a/gdk/gdkdisplayprivate.h +++ b/gdk/gdkdisplayprivate.h @@ -112,7 +112,6 @@ struct _GdkDisplayClass { GObjectClass parent_class; - GType surface_type; /* type for native surfaces for this display, set in class_init */ 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 */ @@ -141,9 +140,13 @@ struct _GdkDisplayClass GdkEvent *new_event); void (*event_data_free) (GdkDisplay *display, GdkEvent *event); - void (*create_surface_impl) (GdkDisplay *display, - GdkSurface *surface, - GdkSurface *real_parent); + GdkSurface * (*create_surface) (GdkDisplay *display, + GdkSurfaceType surface_type, + GdkSurface *parent, + int x, + int y, + int width, + int height); GdkKeymap * (*get_keymap) (GdkDisplay *display); @@ -228,10 +231,13 @@ void _gdk_display_event_data_copy (GdkDisplay *display GdkEvent *new_event); void _gdk_display_event_data_free (GdkDisplay *display, GdkEvent *event); -void gdk_display_create_surface_impl (GdkDisplay *display, - GdkSurface *surface, - GdkSurface *real_parent); -GdkSurface * _gdk_display_create_surface (GdkDisplay *display); +GdkSurface * gdk_display_create_surface (GdkDisplay *display, + GdkSurfaceType surface_type, + GdkSurface *parent, + int x, + int y, + int width, + int height); gboolean gdk_display_make_gl_context_current (GdkDisplay *display, GdkGLContext *context); |