feat(statusbar): transparency-display toggle (TPY pill)

Add a transparency_enable uniform read by the wire shader: when the new
TPY pill is off, every line is forced opaque; when on, baked entity
transparency shows through. Toggling is a uniform write, no retessellate
(same mechanism as the lineweight-display toggle). Pill is toggleable
from the status-bar customization menu.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Hakan Seven 2026-06-04 23:25:09 +03:00
commit 66f7d24bc9
9 changed files with 48 additions and 3 deletions

View file

@ -61,6 +61,8 @@ impl StatusBar {
units_popup_open: bool,
// True when objects are hidden by Isolate / Hide.
isolation_active: bool,
// Whether entity transparency is shown (Transparency pill state).
transparency_display: bool,
// Which pills the user has chosen to show on the bar.
config: &'a StatusBarConfig,
) -> Element<'a, Message> {
@ -175,6 +177,16 @@ impl StatusBar {
"Drawing Units (INSUNITS)\nClick to change",
));
}
if vis(StatusPill::Transparency) {
right_status = right_status.push(tip(
toggle_pill(
"TPY",
transparency_display,
Message::ToggleTransparencyDisplay,
),
"Show Transparency\nForce opaque when off",
));
}
if vis(StatusPill::Isolate) {
right_status = right_status.push(tip(
toggle_pill("ISO", isolation_active, Message::ToggleIsolatePopup),