diff options
author | Benjamin Otte <otte@redhat.com> | 2019-03-09 13:36:14 +0100 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2019-03-19 08:47:54 +0100 |
commit | 480d8aec06ed43459068ebf471661e3fbdafb2df (patch) | |
tree | ba36b8d042c74e01209bfcff7d786c4522cae537 | |
parent | 0d91481587d27f04200c036bf9fe1b39fd57d051 (diff) | |
download | gtk+-480d8aec06ed43459068ebf471661e3fbdafb2df.tar.gz |
renderer: Remove display property
Renderers don't need a display until they get realized. And once they
get realized, they can look up the display from the surface.
-rw-r--r-- | docs/reference/gsk/gsk4-sections.txt | 1 | ||||
-rw-r--r-- | gsk/gskbroadwayrenderer.c | 2 | ||||
-rw-r--r-- | gsk/gskrenderer.c | 84 | ||||
-rw-r--r-- | gsk/gskrenderer.h | 7 |
4 files changed, 4 insertions, 90 deletions
diff --git a/docs/reference/gsk/gsk4-sections.txt b/docs/reference/gsk/gsk4-sections.txt index c66c32cfcb..63b525b6f5 100644 --- a/docs/reference/gsk/gsk4-sections.txt +++ b/docs/reference/gsk/gsk4-sections.txt @@ -2,7 +2,6 @@ <FILE>GskRenderer</FILE> gsk_renderer_new_for_surface gsk_renderer_get_surface -gsk_renderer_get_display gsk_renderer_realize gsk_renderer_unrealize gsk_renderer_render diff --git a/gsk/gskbroadwayrenderer.c b/gsk/gskbroadwayrenderer.c index fc4507f62b..84b948d676 100644 --- a/gsk/gskbroadwayrenderer.c +++ b/gsk/gskbroadwayrenderer.c @@ -461,7 +461,7 @@ gsk_broadway_renderer_add_node (GskRenderer *renderer, float offset_x, float offset_y) { - GdkDisplay *display = gsk_renderer_get_display (renderer); + GdkDisplay *display = gdk_surface_get_display (gsk_renderer_get_surface (renderer)); switch (gsk_render_node_get_node_type (node)) { diff --git a/gsk/gskrenderer.c b/gsk/gskrenderer.c index d321c50181..b34cad3d24 100644 --- a/gsk/gskrenderer.c +++ b/gsk/gskrenderer.c @@ -68,7 +68,6 @@ typedef struct GdkSurface *surface; GskRenderNode *prev_node; GskRenderNode *root_node; - GdkDisplay *display; GskProfiler *profiler; @@ -81,7 +80,6 @@ G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (GskRenderer, gsk_renderer, G_TYPE_OBJECT) enum { PROP_SURFACE = 1, - PROP_DISPLAY, N_PROPS }; @@ -134,34 +132,11 @@ gsk_renderer_dispose (GObject *gobject) g_assert (!priv->is_realized); g_clear_object (&priv->profiler); - g_clear_object (&priv->display); G_OBJECT_CLASS (gsk_renderer_parent_class)->dispose (gobject); } static void -gsk_renderer_set_property (GObject *gobject, - guint prop_id, - const GValue *value, - GParamSpec *pspec) -{ - GskRenderer *self = GSK_RENDERER (gobject); - GskRendererPrivate *priv = gsk_renderer_get_instance_private (self); - - switch (prop_id) - { - case PROP_DISPLAY: - /* Construct-only */ - priv->display = g_value_dup_object (value); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); - break; - } -} - -static void gsk_renderer_get_property (GObject *gobject, guint prop_id, GValue *value, @@ -176,10 +151,6 @@ gsk_renderer_get_property (GObject *gobject, g_value_set_object (value, priv->surface); break; - case PROP_DISPLAY: - g_value_set_object (value, priv->display); - break; - default: G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); break; @@ -187,23 +158,6 @@ gsk_renderer_get_property (GObject *gobject, } static void -gsk_renderer_constructed (GObject *gobject) -{ - GskRenderer *self = GSK_RENDERER (gobject); - GskRendererPrivate *priv = gsk_renderer_get_instance_private (self); - - if (priv->display == NULL) - { - GdkDisplayManager *manager = gdk_display_manager_get (); - - priv->display = gdk_display_manager_get_default_display (manager); - g_assert (priv->display != NULL); - } - - G_OBJECT_CLASS (gsk_renderer_parent_class)->constructed (gobject); -} - -static void gsk_renderer_class_init (GskRendererClass *klass) { GObjectClass *gobject_class = G_OBJECT_CLASS (klass); @@ -213,25 +167,9 @@ gsk_renderer_class_init (GskRendererClass *klass) klass->render = gsk_renderer_real_render; klass->render_texture = gsk_renderer_real_render_texture; - gobject_class->constructed = gsk_renderer_constructed; - gobject_class->set_property = gsk_renderer_set_property; gobject_class->get_property = gsk_renderer_get_property; gobject_class->dispose = gsk_renderer_dispose; - /** - * GskRenderer:display: - * - * The #GdkDisplay used by the #GskRenderer. - */ - gsk_renderer_properties[PROP_DISPLAY] = - g_param_spec_object ("display", - "Display", - "The GdkDisplay object used by the renderer", - GDK_TYPE_DISPLAY, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_STRINGS); - gsk_renderer_properties[PROP_SURFACE] = g_param_spec_object ("surface", "Surface", @@ -290,24 +228,6 @@ gsk_renderer_get_root_node (GskRenderer *renderer) } /** - * gsk_renderer_get_display: - * @renderer: a #GskRenderer - * - * Retrieves the #GdkDisplay used when creating the #GskRenderer. - * - * Returns: (transfer none): a #GdkDisplay - */ -GdkDisplay * -gsk_renderer_get_display (GskRenderer *renderer) -{ - GskRendererPrivate *priv = gsk_renderer_get_instance_private (renderer); - - g_return_val_if_fail (GSK_IS_RENDERER (renderer), NULL); - - return priv->display; -} - -/*< private > * gsk_renderer_is_realized: * @renderer: a #GskRenderer * @@ -674,9 +594,7 @@ gsk_renderer_new_for_surface (GdkSurface *surface) * information to stdout. */ verbose |= renderer_possibilities[i].verbose; - renderer = g_object_new (renderer_type, - "display", gdk_surface_get_display (surface), - NULL); + renderer = g_object_new (renderer_type, NULL); if (gsk_renderer_realize (renderer, surface, &error)) { diff --git a/gsk/gskrenderer.h b/gsk/gskrenderer.h index 55b32b6c6a..6af9af1133 100644 --- a/gsk/gskrenderer.h +++ b/gsk/gskrenderer.h @@ -39,13 +39,10 @@ GDK_AVAILABLE_IN_ALL GType gsk_renderer_get_type (void) G_GNUC_CONST; GDK_AVAILABLE_IN_ALL -GskRenderer * gsk_renderer_new_for_surface (GdkSurface *surface); +GskRenderer * gsk_renderer_new_for_surface (GdkSurface *surface); GDK_AVAILABLE_IN_ALL -GdkSurface * gsk_renderer_get_surface (GskRenderer *renderer); - -GDK_AVAILABLE_IN_ALL -GdkDisplay * gsk_renderer_get_display (GskRenderer *renderer); +GdkSurface * gsk_renderer_get_surface (GskRenderer *renderer); GDK_AVAILABLE_IN_ALL gboolean gsk_renderer_realize (GskRenderer *renderer, |