summaryrefslogtreecommitdiff
path: root/gdk/gdkdisplayprivate.h
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2019-04-22 01:14:46 +0000
committerMatthias Clasen <mclasen@redhat.com>2019-05-28 20:25:14 +0000
commit712a5d4f257d4fc73cd64ec12d5f818a6377621f (patch)
treea9527e856f0b3e38e58af5d4acc479170468092a /gdk/gdkdisplayprivate.h
parent93b8f2563d5d5c9aa16018ebc1533cbe1a408f87 (diff)
downloadgtk+-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.h22
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);