[gtk/wip/matthiasc/popup5] window: Implement surface getter
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/matthiasc/popup5] window: Implement surface getter
- Date: Fri, 17 May 2019 21:46:25 +0000 (UTC)
commit 9ac93b1a080f219e6805330c88c88f134e704f3e
Author: Matthias Clasen <mclasen redhat com>
Date: Fri May 17 20:37:52 2019 +0000
window: Implement surface getter
gtk/gtkwindow.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
---
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index ad37ab393e..ac84c49e50 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -280,6 +280,7 @@ typedef struct
GtkCssNode *decoration_node;
+ GdkSurface *surface;
GskRenderer *renderer;
GList *foci;
@@ -2376,6 +2377,15 @@ gtk_window_root_interface_init (GtkRootInterface *iface)
iface->get_display = gtk_window_root_get_display;
}
+static GdkSurface *
+gtk_window_native_get_surface (GtkNative *native)
+{
+ GtkWindow *self = GTK_WINDOW (native);
+ GtkWindowPrivate *priv = gtk_window_get_instance_private (self);
+
+ return priv->surface;
+}
+
static GskRenderer *
gtk_window_native_get_renderer (GtkNative *native)
{
@@ -2412,6 +2422,7 @@ gtk_window_native_check_resize (GtkNative *native)
static void
gtk_window_native_interface_init (GtkNativeInterface *iface)
{
+ iface->get_surface = gtk_window_native_get_surface;
iface->get_renderer = gtk_window_native_get_renderer;
iface->get_surface_transform = gtk_window_native_get_surface_transform;
iface->check_resize = gtk_window_native_check_resize;
@@ -5687,6 +5698,8 @@ gtk_window_realize (GtkWidget *widget)
}
}
+ priv->surface = surface;
+
gtk_widget_set_surface (widget, surface);
gdk_surface_set_widget (surface, widget);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]