fix(section): preserve selected slice depth

This commit is contained in:
Hakan Seven committed 2026-09-10 17:00:16 +03:00
1 parent 0ad31ece6f
commit 035d31e201
2 files changed
+57 -18

No files matched your search

+19 -18
View File
@@ -1443,24 +1443,25 @@ pub(super) fn on_tab_close(&mut self, idx: usize) -> Task<Message> {
}
}
// One-shot action — apply immediately.
let unchanged = self.tabs[i]
.scene
.document
.get_entity(popup.handle)
.is_some_and(|entity| match (item.action, entity) {
(GripMenuAction::ShowFit, acadrust::EntityType::Spline(spline)) => {
!spline.cv_frame_visible
&& crate::entities::spline::uses_fit_method(spline)
}
(
GripMenuAction::ShowControlVertices,
acadrust::EntityType::Spline(spline),
) => {
spline.cv_frame_visible
|| !crate::entities::spline::uses_fit_method(spline)
}
_ => false,
});
let unchanged = item.label.starts_with('✓')
|| self.tabs[i]
.scene
.document
.get_entity(popup.handle)
.is_some_and(|entity| match (item.action, entity) {
(GripMenuAction::ShowFit, acadrust::EntityType::Spline(spline)) => {
!spline.cv_frame_visible
&& crate::entities::spline::uses_fit_method(spline)
}
(
GripMenuAction::ShowControlVertices,
acadrust::EntityType::Spline(spline),
) => {
spline.cv_frame_visible
|| !crate::entities::spline::uses_fit_method(spline)
}
_ => false,
});
if unchanged {
return Task::none();
}