fix: build puppet warp mesh before clearing pins - #16
Merged
Conversation
ProdigyRahul
marked this pull request as ready for review
August 24, 2026 22:00
Contributor
Author
|
@IAmJSD please review. thank you in advance! |
ProdigyRahul
force-pushed
the
fix/puppet-warp-commit
branch
from
August 24, 2026 22:06
676d317 to
c7da01b
Compare
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.
fixes #15
take the pins instead of clearing them, so the mesh is still solved from a populated pin set. clearing first yielded an empty set, which
mls_inversetreats as the identity, so every commit wrote back an unchanged copy.adds
plugins/tools-warp/tests/puppet_commit.rs, which drives the tool through real pointer events: four anchor pins, a centre pin dragged down, then commit. it fails on main withcommit discarded the warp: only 0 pixels differ from the original.two of the four tests cover the other direction and pass either way, so the fix cannot overshoot: undo still restores the original, and a pin set that was never dragged still commits nothing.
before
after
the same pin drag, committed with enter.
before: flat grid, round circles, deformation gone.
after: the bend survives.