From e6127d9fa169dc55ce03c71dc76722aae1ac9d28 Mon Sep 17 00:00:00 2001 From: Nicola Fontana Date: Tue, 18 Nov 2014 17:36:01 +0100 Subject: [PATCH] adg: correct adg_canvas_autoscale() bug The above method manually call the arrange() virtual method instead of emitting the "arrange" signal (it cannot, because it must skip the paper entities). As a consecuence, the global matrix was not picked up. Forced a global-changed signal before the arrange() calls. --- src/adg/adg-canvas.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/adg/adg-canvas.c b/src/adg/adg-canvas.c index b0d04db3..ee0f05fa 100644 --- a/src/adg/adg-canvas.c +++ b/src/adg/adg-canvas.c @@ -642,6 +642,10 @@ adg_canvas_autoscale(AdgCanvas *canvas) entity = (AdgEntity *) canvas; title_block = data->title_block; + /* Manually calling the arrange() method instead of emitting the "arrange" + * signal does not invalidate the global matrix: let's do it right now */ + adg_entity_global_changed(entity); + for (p_scale = data->scales; p_scale != NULL && *p_scale != NULL; ++p_scale) { const gchar *scale = *p_scale; gdouble factor = adg_scale_factor(scale); -- 2.11.4.GIT