Restore handle length when Shift is released while dragging opposite handle with Path tool (#1009)

* Restore path handle length to previous length when shift is released while dragging

* Reset previous opposing handle length on Delete and Abort messages

* Move the opposing handle length state to the path tool

* Use MoveManipulatorPoint messages instead of modifying MoveSelectedManipulatorPoints + break handle mirroring on dragging both handles without anchor

* Handle alt + improve reset logic + comments

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
This commit is contained in:
Shouvik Ghosh 2023-02-22 05:21:46 +05:30 committed by Keavon Chambers
parent 107e55e91d
commit 92cb553961
3 changed files with 126 additions and 0 deletions

View file

@ -146,6 +146,7 @@ impl ManipulatorGroup {
// If the anchor isn't selected, but both handles are, drag only handles
if self.both_handles_selected() {
self.editor_state.mirror_angle_between_handles = false;
for point in self.selected_handles_mut() {
move_point(point, delta);
}