From d8db962995434bf68e296578fbde85d6f568b676 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 26 Jun 2019 20:08:46 +0000 Subject: [PATCH] constraint layout: Freeze solver for grids While inserting a possibly big grid layout, freeze the solver. It does not end up helping too much, since there are code paths in the solver the end up optimizing for each addition anyway :( --- gtk/gtkconstraintlayout.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gtk/gtkconstraintlayout.c b/gtk/gtkconstraintlayout.c index 4181564862..f9cb726b8e 100644 --- a/gtk/gtkconstraintlayout.c +++ b/gtk/gtkconstraintlayout.c @@ -1294,6 +1294,8 @@ layout_add_grid_constraint (GtkConstraintLayout *manager, if (solver == NULL) return; + gtk_constraint_solver_freeze (solver); + refs = g_ptr_array_new (); n_rows = n_cols = 0; @@ -1332,4 +1334,6 @@ layout_add_grid_constraint (GtkConstraintLayout *manager, g_free (rows); g_free (cols); g_ptr_array_unref (refs); + + gtk_constraint_solver_thaw (solver); }