GraphiteEditor/Graphite

Edge case where moving layers between groups changes the location, rotation or scale on the canvas

Open

#3195 opened on Sep 19, 2025

View on GitHub
 (12 comments) (0 reactions) (0 assignees)Rust (25,662 stars) (1,176 forks)batch import
Good First Issue

Description

Recently I've spent more time working in Graphite and I want to make a point about one of the current design decisions.

Individual layers have their transforms set relative to parent node transforms. When such layer is moved outside of the parent into a different location in the nodegraph it changes its position on the canvas. It is really frustrating to work around this mechanic, and I believe many people will have similar opinion, especially those that come from other 2D apps.

Two solutions that might work here:

  • make every layer have its transforms as absolute values relative to canvas origin (0,0)
  • recalculate transforms when the layer is moved into a different place in the nodegraph so it's location, rotation and scale does not change

Contributor guide