(3.4.115 through 3.4.117 were unpublished release candidates of this change;
3.4.118 is the released version.)
Added
-
Tap a plane on the display board for its details — and its trail.
Touch (or click) any aircraft on the board's radar layouts and a panel
slides out from the scope's right edge — the board's version of the Live
map's overlay: photo, callsign with its MIL/WL badge, aircraft type,
registered operator, route with the airport names spelled out, and a live
telemetry grid (altitude with climb/descend arrow, speed, heading,
vertical rate, distance, squawk). The tapped aircraft gets a dashed halo
on the scope, and its recent flight path draws on the map —
altitude-coloured like the Live radar's, showing the current pass and
growing at the nose as new fixes arrive. Everything in the panel
refreshes with each poll while it's open. Close it with the ✕, a tap on
the map background, or just walk away — trail and panel dismiss
themselves after about ninety seconds without a touch, keeping the kiosk
self-tending. -
The display board is now interactive — and it got photos. The radar
layouts (radar wall and hybrid) accept touch and mouse input: drag to pan,
pinch or scroll to zoom, double-tap to zoom in — a TV with a touchscreen
works out of the box. The Live map's control set comes along for the ride:
zoom buttons, a light/dark map theme toggle, the altitude legend, the
max-range coverage outline, aircraft trails, and the animated weather
overlay with its opacity slider. There's one addition the Live map doesn't
need: a recenter button under the zoom controls that snaps the view back
to its home framing — and if someone zooms in for a closer look and walks
away, the board recenters itself after three minutes of no interaction, so
a wandering zoom never strands the kiosk. Every control follows the same
reveal as the corner gear: invisible until the screen is touched or the
mouse moves, fading away a few seconds later, so the wall display stays as
clean as before. Labels also declutter: an on-map "Aa" button cycles
between callsign + altitude, callsign only (the new default — the full
two-line label buried the planes on a busy sky), and pills-only — no
callsigns, but military and watchlist aircraft keep their pill (AF1 stays
AF1), matching the Live radar's always-visible badges. Remembered per
screen. The flight board gains a photo column — a cached
thumbnail of each aircraft on its row — and the hybrid layout's right side
is now a photo rail: cards of the closest aircraft, nearest first, each
with photo, callsign, altitude trend, type, and route or registered owner.
When more aircraft are overhead than fit on screen, the rail scrolls
slowly and loops through the closest fifteen.Behind the scenes
The board's Leaflet maps simply stop force-disabling input handlers, and
the controls are a direct port of the Live radar's — same/api/coverage
polygon, same/api/live/trailsseed-then-grow trail model, same
RainViewer preloaded-frame animation — rebound to whichever layout's map
is active. Board-scoped localStorage keys keep a wall screen's setup
independent of any operator browser. Programmatic framing (fitBounds and
friends) is fenced off from the idle-recenter's "user moved" tracking so
the snap-back only ever answers a real hand on the screen. The hybrid
rail snapshots its card order once per scroll loop — data inside the
cards refreshes every poll, but nothing reshuffles mid-view — and the
flight board drops from 12 rows per page to 9 to make room for the taller
photo rows. The spotlight card the rail replaces is retired; docs
screenshots re-rendered with generated placeholder photos (nothing real
to attribute), the radar shot captured in the awake state so the new
control set is visible.
Fixed
- Board map controls on real kiosk hardware. The zoom buttons rendered
malformed on the wall screen — Leaflet's own zoom control styling (corner
radii, touch-mode borders) fought the board's restyle — so the board now
draws its own zoom buttons, matching the rest of the control stack. And
the radar-wall layout sized its map one header-height too tall (a CSS
over-constraint: an explicit map height overriding the layout's bottom
edge), which hung the bottom-left tool stack, the altitude legend, and
the map attribution partly or fully below the screen on every display.
The flight-board and hybrid layouts were unaffected. The map now sizes to
the space the layout actually gives it, so every control sits on screen.