You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
System Default Output & Input Management:
• Interactive Default Toggle: Added "Make OS System Default Output / Input" switch in the Mix Edit popover with active
green badge indicators.
• Mutual Exclusivity: Enforced single-default constraints across mixes of the same type (toggling a new default
automatically demotes the previous default).
• WirePlumber Compatibility: Upgraded virtual input mix node class to Audio/Source to support OS-level default input
designation via wpctl set-default.
• Clean Teardown Fallback: When an active default mix is deleted, WaveController automatically falls back and designates
Personal Mix (or Chat Mix) as the active OS system default.
Device Settings & Dynamic UI Anchoring:
• Permanent Top Anchor: Pinned the Primary Default Device / Set as Default Device card at Position 1 on the Device Settings
page.
• In-Place UI Updates: Replaced destructive DOM re-attachment with non-destructive visibility toggling and inner row
updating to prevent the section from dropping to the bottom on runtime refreshes.
Port Sanitization & Group Channel Presentation:
• Numbered Port ID Filtering: Stripped raw PipeWire port numbers (121, 90) and numbered prefixes (121 Shortwave:output_FL →
Shortwave:output_FL) from Grouped Application lists.
• Deduplication & App Mapping: Unified multi-channel Left/Right stream links into single, clean application cards.
VU Metering Isolation & Zero-Bleed Invariants:
• Zero-Fallback Autoconnect Gating: Added -P node.autoconnect=false and -P stream.dont-remix=true to all pw-record meter
processes, preventing WirePlumber from re-linking orphaned meter taps to Discord when YouTube/Chrome stops playing.
• Strict Canonical Token Matching: Filtered container wrappers (chromium, webrtc voiceengine) and replaced fuzzy substring
matching with strict exact-token lookups so quiet channels strictly report 0.0.
Performance & DOM Caching:
• Matrix Cell State Caching: Prevented unnecessary GTK widget and slider recreation during matrix redraws and channel
reordering.
• Group Drawer Sub-Strip Caching: Cached member application lists to eliminate UI churn when expanding or collapsing group
drawers.