forked from 1b-agent/opencadstudio-upstream
feat(ui): refine drawing tabs
Use theme-driven active and hover states, integrate close controls, and keep tab spacing stable across drawing states. Refs #481
This commit is contained in:
1 parent
9cf0c9f945
commit
7c893d8f5f
3 files changed
+109
-28
No files matched your search
+10
-1
@@ -1333,6 +1333,11 @@ impl OpenCADStudio {
|
||||
Task::none()
|
||||
}
|
||||
|
||||
Message::DocTabHover(index) => {
|
||||
self.hovered_doc_tab = index.filter(|&idx| idx < self.tabs.len());
|
||||
Task::none()
|
||||
}
|
||||
|
||||
Message::TabReorder { from, to, after } => {
|
||||
let Some(insertion) =
|
||||
reorder_insertion_index(from, to, after, self.tabs.len())
|
||||
@@ -1351,10 +1356,14 @@ impl OpenCADStudio {
|
||||
if let Some(index) = self.tabs.iter().position(|tab| tab.id == active_id) {
|
||||
self.active_tab = index;
|
||||
}
|
||||
self.hovered_doc_tab = None;
|
||||
Task::none()
|
||||
}
|
||||
|
||||
Message::TabClose(idx) => self.on_tab_close(idx),
|
||||
Message::TabClose(idx) => {
|
||||
self.hovered_doc_tab = None;
|
||||
self.on_tab_close(idx)
|
||||
}
|
||||
|
||||
Message::DocTabSaveAll => self.dispatch_command("SAVEALL"),
|
||||
|
||||
|
||||
Reference in new issue
Block a user