* Connectivity tab order: Add peer by IP now sits right after Rename peer (before the Discovered
list), grouped with the connected-peer actions, per Ed's requested order. Dropped the second
section header (only the lock toggle was under it).
* Audio I/O labels: "Set volume for all received audio" → "Master volume for received audio" (the
code never got this rename, only the manual had). Device lists now say "audio": "...for received
audio" and "WASAPI/ASIO audio inputs/outputs to send". Labels + AccessibleNames updated together.
* Add EQ band dialog: the spin/edit boxes now select-all on focus, so a typed value REPLACES what's
there instead of being inserted next to it and reverting (typing 2.5 over 4.0 now works).
* Parametric bands list: Left/Right arrow nudge the selected band's gain by half a dB, live —
up/down still move between bands. NVDA re-reads the band's new dB.
* Recording settings: source list reordered to Both (top, now the default) / Received / Sent;
display order decoupled from the RecordingSource enum. Default RecordingSettings.Source = Both.
* Preferences: Colour theme is now first in the General tab order.
Manual updated. Build clean; --selftest passes; deployed to both test folders. Held for next release.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add band dialog (from testing feedback):
* Tab order is now Start, End, Gain, OK, Cancel (OK was after Cancel).
* Gain box takes decimals like 1.5 (half-dB steps); parametric list shows one decimal.
* The two frequency boxes start empty — nothing prepopulated to mislead; both required on OK.
New Connectivity-tab feature (held for next release):
* Rename peer (Alt+M) opens a dialog to give a peer a friendly name, with a Clear custom name
button. Names are keyed by the peer's MACHINE NAME (stable across restarts, IP changes and
networks), stored machine-wide in AppConfig.PeerFriendlyNames, and resolved everywhere a peer
shows: both peer lists (via PeerListItem.DisplayNameProvider), the volume/pan/EQ list, the
status line and split-recording filenames. Manual-by-IP peers with no announced name fall back
to keying by address.
* Peer details (Alt+E): a read-only box for the highlighted connected peer showing name, machine
name, IP, connected-for, link health + ping, what they're sending, and whether they're
receiving our audio. "Sending: 2 devices on ASIO at 48 kHz, Opus" is derived from the live
receive streams — each stream is one device and its lane gives WASAPI vs ASIO — so NO protocol
change and no new privacy exposure. AudioReceiver.ActiveFormatsFromAddress added for this.
Manual updated (readme.html + MANUAL.md). Build clean; --selftest passes; deployed to both test
folders. Held for next release.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>