[gtk/otte-main-patch-86462] Fix g_object_new(GTK_TYPE_SNAPSHOT)




commit 09f0c96b9b1b52103be19790aa117976047e6f3e
Author: Benjamin Otte <otte benjamin googlemail com>
Date:   Mon Aug 1 20:08:58 2022 +0000

    Fix g_object_new(GTK_TYPE_SNAPSHOT)
    
    GJS apparent likes g_object_new() over actual constructors, so make that work.

 gtk/gtksnapshot.c | 37 ++++++++++++++++---------------------
 1 file changed, 16 insertions(+), 21 deletions(-)
---
diff --git a/gtk/gtksnapshot.c b/gtk/gtksnapshot.c
index cdf61845d5..1896a207de 100644
--- a/gtk/gtksnapshot.c
+++ b/gtk/gtksnapshot.c
@@ -179,11 +179,6 @@ gtk_snapshot_class_init (GtkSnapshotClass *klass)
   gobject_class->dispose = gtk_snapshot_dispose;
 }
 
-static void
-gtk_snapshot_init (GtkSnapshot *self)
-{
-}
-
 static GskRenderNode *
 gtk_snapshot_collect_default (GtkSnapshot       *snapshot,
                               GtkSnapshotState  *state,
@@ -270,6 +265,18 @@ gtk_snapshot_state_clear (GtkSnapshotState *state)
   gsk_transform_unref (state->transform);
 }
 
+static void
+gtk_snapshot_init (GtkSnapshot *self)
+{
+  gtk_snapshot_states_init (&self->state_stack);
+  gtk_snapshot_nodes_init (&self->nodes);
+
+  gtk_snapshot_push_state (self,
+                           NULL,
+                           gtk_snapshot_collect_default,
+                           NULL);
+}
+
 /**
  * gtk_snapshot_new:
  *
@@ -280,19 +287,7 @@ gtk_snapshot_state_clear (GtkSnapshotState *state)
 GtkSnapshot *
 gtk_snapshot_new (void)
 {
-  GtkSnapshot *snapshot;
-
-  snapshot = g_object_new (GTK_TYPE_SNAPSHOT, NULL);
-
-  gtk_snapshot_states_init (&snapshot->state_stack);
-  gtk_snapshot_nodes_init (&snapshot->nodes);
-
-  gtk_snapshot_push_state (snapshot,
-                           NULL,
-                           gtk_snapshot_collect_default,
-                           NULL);
-
-  return snapshot;
+  return g_object_new (GTK_TYPE_SNAPSHOT, NULL);
 }
 
 /**
@@ -761,7 +756,7 @@ gtk_snapshot_ensure_translate (GtkSnapshot *snapshot,
       gtk_snapshot_autopush_transform (snapshot);
       state = gtk_snapshot_get_current_state (snapshot);
     }
-  
+
   gsk_transform_to_translate (state->transform, dx, dy);
 }
 
@@ -850,7 +845,7 @@ gtk_snapshot_push_clip (GtkSnapshot           *snapshot,
 {
   GtkSnapshotState *state;
   float scale_x, scale_y, dx, dy;
- 
+
   gtk_snapshot_ensure_affine (snapshot, &scale_x, &scale_y, &dx, &dy);
 
   state = gtk_snapshot_push_state (snapshot,
@@ -2517,7 +2512,7 @@ gtk_snapshot_append_border (GtkSnapshot          *snapshot,
   gsk_rounded_rect_scale_affine (&real_outline, outline, scale_x, scale_y, dx, dy);
 
   node = gsk_border_node_new (&real_outline,
-                              (float[4]) { 
+                              (float[4]) {
                                 border_width[0] * scale_y,
                                 border_width[1] * scale_x,
                                 border_width[2] * scale_y,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]