[gimp] app: update group-layer item offset after updating offset node



commit 35b0f6102e9c539fa0734abcad3800f558cd9e3d
Author: Ell <ell_se yahoo com>
Date:   Fri Nov 24 12:21:42 2017 -0500

    app: update group-layer item offset after updating offset node
    
    When the group's offset changes, update the item's offset *after*
    updating the group's offset node, so that the item's offset nodes
    and the group's offset node are in sync when the corresponding
    "notify" signals are emitted.

 app/core/gimpgrouplayer.c |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)
---
diff --git a/app/core/gimpgrouplayer.c b/app/core/gimpgrouplayer.c
index 872de61..a9259aa 100644
--- a/app/core/gimpgrouplayer.c
+++ b/app/core/gimpgrouplayer.c
@@ -1312,15 +1312,9 @@ gimp_group_layer_update_size (GimpGroupLayer *group)
       width  != old_width            ||
       height != old_height)
     {
-      /* update our offset *before* calling gimp_pickable_flush(), so
-       * that if our graph isn't constructed yet, the offset node picks
-       * up the right coordinates in gimp_group_layer_get_graph().
-       */
-      gimp_item_set_offset (item, x, y);
-
-      /* ... or, if the graph is already constructed, set the offset
-       * node's coordinates first, so the graph is in the right state
-       * when the projection is reallocated, see bug #730550.
+      /* if the graph is already constructed, set the offset node's
+       * coordinates first, so the graph is in the right state when
+       * the projection is reallocated, see bug #730550.
        */
       if (private->offset_node)
         gegl_node_set (private->offset_node,
@@ -1328,6 +1322,12 @@ gimp_group_layer_update_size (GimpGroupLayer *group)
                        "y", (gdouble) -y,
                        NULL);
 
+      /* update our offset *before* calling gimp_pickable_flush(), so
+       * that if our graph isn't constructed yet, the offset node picks
+       * up the right coordinates in gimp_group_layer_get_graph().
+       */
+      gimp_item_set_offset (item, x, y);
+
       if (private->reallocate_projection ||
           width  != old_width            ||
           height != old_height)


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