forked from 1b-agent/opencadstudio-upstream
Dock: hover-only title buttons, tilted pin, mirrored float grip
- Docked title bars show the pin and close only while the pointer is over the bar; the bar keeps a fixed height so nothing jumps. - Auto-hide on is drawn as a 30° tilted pin (new pin_active.svg) instead of a coloured button background, on docked and floating bars. - A floating panel's resize grip sits in the bottom corner away from its title bar. With the bar on the right it is bottom-left (new mirrored resize_left.svg) and resizing from there keeps the right edge fixed. The bar stays on its side while resizing. - While a floating panel is dragged, only the drop preview shows it; the panel no longer stays drawn at its old place. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013RyGiMXcsf9HTKfqDxaQGt
This commit is contained in:
7 files changed
+147
-99
No files matched your search
+6
-2
@@ -863,8 +863,11 @@ pub(super) struct OpenCADStudio {
|
||||
pub(crate) dock_grab_offset: iced::Vector,
|
||||
/// Splitter being dragged between two slots on a side (upper, lower).
|
||||
pub(crate) dock_split_drag: Option<(crate::app::config::DockSide, usize, usize)>,
|
||||
/// Floating panel being resized from its corner grip.
|
||||
pub(crate) dock_float_resizing: Option<crate::ui::dock::PanelId>,
|
||||
/// Floating panel being resized from its corner grip, and whether from
|
||||
/// the bottom-left corner.
|
||||
pub(crate) dock_float_resizing: Option<(crate::ui::dock::PanelId, bool)>,
|
||||
/// Docked panel whose title bar the pointer is over (shows pin / close).
|
||||
pub(crate) dock_title_hover: Option<crate::ui::dock::PanelId>,
|
||||
/// Reference-table column currently being width-resized (column index),
|
||||
/// with the last pointer position. Mirrors the Layers Name-column drag.
|
||||
pub(crate) xref_col_drag: Option<usize>,
|
||||
@@ -4304,6 +4307,7 @@ impl OpenCADStudio {
|
||||
dock_grab_offset: iced::Vector::new(0.0, 0.0),
|
||||
dock_split_drag: None,
|
||||
dock_float_resizing: None,
|
||||
dock_title_hover: None,
|
||||
xref_col_drag: None,
|
||||
xref_col_last: None,
|
||||
xref_split_drag: false,
|
||||
|
||||
Reference in new issue
Block a user