Direct Selection: keep the spine, mesh and frame overlays while a handle is dragged (#332 follow-up)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit 65a5c24081c733e70ad453318cedadf01ed6451a)
This commit is contained in:
Brandon Thomas 2026-10-07 16:54:51 -04:00
parent 1a5b3f00ba
commit 219c8d4ae3
1 changed files with 3 additions and 1 deletions

View File

@ -404,13 +404,15 @@ impl Tool for DirectSelectionTool {
match &self.state {
State::Marquee { start, cur, .. } => vec![Overlay::Marquee(Rect::from_points(*start, *cur))],
State::Corner(c) => c.overlays(cx),
State::Handle { .. } => self.guides.clone(),
_ => {
let mut out = self.spine_overlays(cx);
out.extend(self.mesh.overlays(cx));
if !self.group {
out.extend(frame_overlays(cx));
}
if matches!(self.state, State::Handle { .. }) {
out.extend(self.guides.iter().cloned());
}
out
}
}