Gradient tool snapping with locked angle
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 78/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- rust
- Domaine
- computer-graphics
Piste de recherche
Reproduce the issue with a rectangle and constrained gradient drag, then inspect the gradient tool code around lines 599-610 and 631. Compare its constrained-angle handling with SnapConstraint::Line in editor/src/messages/tool/common_functionality/shapes/line_shape.rs around lines 157-164. Done means angle-locked gradients still snap to the rectangle and previous overlays do not remain stuck during the drag.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Reproduction
- New document
- Draw rectangle
- Use the gradient tool to draw a gradient
- Press Ctrl or Shift to lock the angle
- Observe how the snapping to the rectangle no longer occurs and any old overlays get stuck until finishing the drag
Video
https://github.com/user-attachments/assets/de604938-8d10-46bd-917b-4ac8a09dde3a
Relevant code
The line tool uses SnapConstraint::Line to snap when constrained to an angle:
https://github.com/GraphiteEditor/Graphite/blob/f7562b6fd7428f887ba8ed833692535ad9b94ec4/editor/src/messages/tool/common_functionality/shapes/line_shape.rs#L157-L164
The gradient tool completely ignores snapping when an angle constraint exists:
https://github.com/GraphiteEditor/Graphite/blob/f7562b6fd7428f887ba8ed833692535ad9b94ec4/editor/src/messages/tool/tool_messages/gradient_tool.rs#L599-L610
https://github.com/GraphiteEditor/Graphite/blob/f7562b6fd7428f887ba8ed833692535ad9b94ec4/editor/src/messages/tool/tool_messages/gradient_tool.rs#L631
- Langage dominant
- Rust
- Étoiles
- 27.3k
- Forks
- 1.3k
- Merge moyen
- 16 h 57 min
- PR mergées (30 j)
- 87
Préparer son environnement
Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de GraphiteEditor/Graphite
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
GraphiteEditor/Graphite#4601 · 5 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
GraphiteEditor/Graphite#4396 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
GraphiteEditor/Graphite#4311 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
GraphiteEditor/Graphite#3939 · 2 commentaires · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 76/100
GraphiteEditor/Graphite#4619 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de GraphiteEditor/Graphite
Issues similaires
-
type/bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
stackabletech/kafka-operator#1033 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
bug good first issue needs testing
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 3 jours
-
docs: release notes v3.7.0–v3.8.0 footer links to README/CHANGELOG are broken after docs reorgOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 90/100
farion1231/cc-switch#7744 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
datafusion
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
apache/iceberg-rust#3297 ·
Les mainteneurs répondent en général sous 1 jour