feat: compact inspector tab bar, renderer readout, and demo inspector button (#101)

* feat: compact inspector tab bar, renderer readout, and demo inspector button

- In a window narrower than 480 points, the inspector reserves a tab bar at
  the top of the window to switch between the app and the inspector, instead
  of squeezing both side by side. Picking a node switches to the app and back.
- The inspector's Perf tab shows the renderer the host reports: backend,
  adapter, device type, driver, driver info, vendor/device ids and surface
  format. beui::run reports it; other hosts can call Context::set_renderer_info.
- Document::open_inspector lets a document open its own inspector, and the
  demo uses it from a new header button so it can be reached on a touchscreen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E3sdiN2rPHo8aaGDexdF1y

* fix: switch the inspector to its tab bar before the app gets squeezed

The inspector now uses the tab bar whenever the window cannot fit a
default-width panel beside a 480 point app, and the panel can no longer be
dragged or sized so wide that the app drops below 480 points.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E3sdiN2rPHo8aaGDexdF1y

---------

Co-authored-by: Claude <noreply@anthropic.com>
08ff1037ffpfg committed on 9/23/2026, 4:52:36 AM· committed by GitHubparent03dd54a
22 files changedLine totals unavailable