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
fix(ui): font consistency, button sizing, menu positioning, user count
Bundled UI polish pass addressing several visual issues reported in
Bitwig on Windows.
Fonts:
- ConnectionBar status label ("Connected"/"Disconnected") and BeatBar
BPM/BPI numbers were using FontOptions(13.0f).withStyle("Bold"). On
Windows without a typeface name, JUCE falls back to a serif face for
the bold variant, which looked mismatched against the sans-serif
button text. Both now use a plain 15pt / 13pt font matching the
TextButton font (LookAndFeel_V4 uses 15pt plain for h=28 buttons).
- The normal Connected/Disconnected status text is now suppressed
entirely — the colored dot is the sole indicator. "Connecting..." and
error messages still render.
Button sizing:
- Connect/Disconnect button: 90 → 105px so "Disconnect" no longer
clips at the default plugin size.
- Video button: 44 → 54px so "Video" no longer horizontally squashes.
- Default plugin width (kBaseWidth): 1000 → 1030 to accommodate both
widened buttons without crowding the right-side cluster.
Menus:
- UI Scale right-click menu now uses .withParentComponent(this)
instead of .withTargetComponent(this), so the popup (a) inherits
JamWideLookAndFeel for consistent typography/colours and (b) opens
at the mouse position rather than being anchored to the editor's
bounds. Applied to both the editor-level and ConnectionBar-level
handlers.
Session info:
- SessionInfoStrip now renders "Users: N/M" when the connected
server's max slot count is known from the cached public server
list. The NINJAM protocol itself does not expose max-slots, so the
editor looks up the current server address in
processor.cachedServerList by parsing "host:port" out of
lastServerAddress. When unknown (user never browsed), falls back to
"Users: N".
OSC dot:
- OscStatusDot diameter: 10 → 8px to match the server-connection dot
drawn in ConnectionBar::paint.
BPM/BPI suppression refactor (NinjamRunThread):
- Replaced the iteration-count connectGrace_ int counter with a
time-based suppressBpmBpiUntilMs_ int64. After a fresh OK status
transition we silently track BPM/BPI for 2.5 seconds, during which
the NJClient defaults (120/32) are replaced by the server's real
config without emitting a bogus "BPM changed from 120 to N" chat
message. Prior implementation assumed a fixed number of run-loop
iterations, which could fire or mis-fire depending on actual
iteration cadence.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0 commit comments