Repository navigation
M8.17: Edit envelopes on the canvas (M8 done) - #203
Merged
Merged
Conversation
…andles, Control bar - Edit Contents: while an envelope's contents are edited, clicks hit the content where it sits undistorted and the Selection tool selects it; the menu item reads Edit Envelope then. No default shortcut: the reference app's (Shift+Cmd+V) is Paste in Place here. - A selected envelope shows its mesh (a warp's surface grid, a mesh's own, a top object's outline) instead of its content's outlines. - Mesh envelope points get bezier handles (append-only; none stored is the smooth Catmull-Rom mesh, which the first handle edit fills in exactly along the grid lines). setMeshPoint takes `handle`; object.mesh.movePoint, addLine and deletePoint edit mesh envelopes too. The Mesh tool and Direct Selection drag points and the clicked point's handles (shared MeshEdit); the Mesh tool adds rows and columns inside mesh envelopes. Reset with Mesh keeps the shape along the grid with handles; Release returns the exact mesh. - Control bar: Edit Envelope / Edit Contents, warp style, orientation, bend and distortions or mesh rows and columns, Reset, Envelope Options. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The M8 row is done with what the fidelity pass delivered and what is left; the Symbols/blends/envelopes/perspective parity row moves from 75% to 88%; feature parity ~75%; Shipped so far and the README status follow. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Envelopes can now be edited on the canvas: Edit Contents, mesh points and handles, and Control bar controls. With this, all 20 M8 tasks have landed, and the ROADMAP marks M8 done.
M8.17: editing envelopes on the canvas
Hit.contents_of), and the menu label toggles to Edit Envelope.EnvelopeKind::Mesh.handles.setMeshPointtakeshandle.object.mesh.movePoint,addLineanddeletePointalso edit mesh envelopes.tools::meshedit::MeshEditlets the Mesh tool and Direct Selection drag points and the clicked point's handles. The Mesh tool also adds rows and columns inside mesh envelopes.ROADMAP and README (M8 is complete)
Checks
mainafter M8.11: Perspective grid widgets: ground-level points move the grid, separate extents, cell size widget, screen-fixed Plane Switching Widget with 1-4 keys #201. The one conflict, indocs/control-protocol.md, was merged keeping both sides.cargo xtask ci: all 7 steps pass (fmt, clippy, tests, assets, brands, layers, wasm), 3,276 tests.main, the branch keeps every command, UI command, menu item, MCP tool and test, and adds 9 tests.EnvelopeKind::Meshliterals intests_envelopegainhandles: vec![];object.mesh.movePointnow rejects ahandlethat isn't an integer or is out of range, instead of ignoring it.docs/mcp.mdcode fences are balanced.🤖 Generated with Claude Code