[gtk/wip/baedert/for-master] window: Create constraint solver on demand



commit ddaf50dfccf9193d8dbeb4448f1a2f508dc90fed
Author: Timm Bäder <mail baedert org>
Date:   Wed May 13 09:21:01 2020 +0200

    window: Create constraint solver on demand

 gtk/gtkwindow.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
---
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index 5a755ef450..266aeda851 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -1602,9 +1602,6 @@ gtk_window_init (GtkWindow *window)
                             G_CALLBACK (gtk_window_handle_focus), window);
   gtk_widget_add_controller (widget, controller);
 
-  /* Shared constraint solver */
-  priv->constraint_solver = gtk_constraint_solver_new ();
-
   controller = gtk_shortcut_controller_new ();
   gtk_event_controller_set_propagation_phase (controller, GTK_PHASE_CAPTURE);
 
@@ -1875,6 +1872,12 @@ gtk_window_root_get_constraint_solver (GtkRoot *root)
   GtkWindow *self = GTK_WINDOW (root);
   GtkWindowPrivate *priv = gtk_window_get_instance_private (self);
 
+  if (!priv->constraint_solver)
+    {
+      /* Shared constraint solver */
+      priv->constraint_solver = gtk_constraint_solver_new ();
+    }
+
   return priv->constraint_solver;
 }
 


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