0HyperCube
## Reproduction 1. New document 2. Draw rectangle 3. Use the gradient tool to draw a gradient 4. Press <kbd>Ctrl</kbd> or <kbd>Shift</kbd> to lock the angle 5. 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