Avoid overlapping layers when grouping

Offen
#4,833 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
52/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
rust
Bereich
design, frontend

Rechercherichtung

Start by reading ModifyInputsContext::create_layer and NodeGraphMessage::MoveLayerToStack, which the issue identifies as relevant to grouping and layer movement. Reproduce the overlap by grouping the top of two rectangles and inspecting the node graph. Add tests for the reported behavior and the related group-dragging cases; done means grouping no longer produces overlapping layers and the tests cover those interactions.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

As reported by Aubéron on discord.

Reproduction
  • New document
  • Draw two rectangles
  • With the top rectangle selected, create a group (Ctrl+G)
  • Open node graph
  • Observe overlapping layers
Video

https://github.com/user-attachments/assets/0390cf28-d79a-4959-9e9f-c2cde04a0e98

Relevant code

See ModifyInputsContext::create_layer and NodeGraphMessage::MoveLayerToStack.

There are probably lots of edge cases that should also be covered such as dragging layers between groups and things.

Please also add tests.

Vorherrschende Sprache
Rust
Sterne
27.8k
Forks
1.3k
Ø Merge
16 Std. 1 Min.
Gemergte PRs (30 T.)
180

Entwicklungsumgebung

In Codespaces öffnen

Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.

  • Kein Dockerfile und keine Docker-Compose-Datei
  • Hat eine Pull-Request-Vorlage
  • Kein Beitragsleitfaden

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus GraphiteEditor/Graphite

Alle Issues in GraphiteEditor/Graphite

Ähnliche Issues

Weitere Issues zu Rust

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.