Dragging a crop handle past the image edge used to hand the raw rectangle to CropGeometry::constrained, which slid the whole frame toward the centre and moved the anchored corner. drag_crop owns the drag instead: the opposite edges stay put, a locked ratio holds on all eight handles (edges grow about their midline, sliding along a blocked side), the frame stops at the image edge and slides along it, and it keeps a minimum size. Hostile numbers return the start crop. Covered by Given/When/Then scenarios and property tests. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| catalog | ||
| codecs | ||
| color | ||
| develop | ||
| engine | ||
| fetch | ||
| geom | ||
| gpu | ||
| mcp | ||
| merge | ||
| meta | ||
| pipeline | ||
| preview | ||
| raster | ||
| raw | ||
| scenes | ||
| segment | ||
| sysmem | ||
| tiff | ||
| ui-egui | ||