Add layout diagnosis: font metrics in the log, --snapshot option
On the Steam Frame, the fixed 1200x800 QML layout overflows: about the bottom quarter is cut off and the navigation icons overlap their text. Forcing 96 DPI and switching the Quick Controls style didn't help, so the cause has to be measured rather than guessed. - SetWidget() logs the application font (family, pt, px), what 20 pt (MyText) is in px, the screen's DPI and the device pixel ratio. - --snapshot <file> writes the rendered overlay (RenderBackend::readback) as PNG at most once per second while it is visible. A time interval, because OVRAS only renders when the scene changes. Written to a temporary file and renamed, so readers never see a partial file. - run.sh passes arguments after the graphics API to the program. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -266,6 +266,28 @@ URL: "steam://launch/1009850/openvroverlay" auto-launch: true`.
|
||||
- **Open for R6/T10:** each tick makes three synchronous PulseAudio queries (server info,
|
||||
all sinks, all sources) for the mute state. Not changed now.
|
||||
|
||||
### Layout cut off on the Frame; diagnosis tools (2026-10-08)
|
||||
|
||||
- **Observed (headset photo):** the dashboard tab appears, navigation and laser work. The
|
||||
fixed 1200×800 layout overflows: about the bottom quarter is cut off (left: Statistics,
|
||||
Bindings, Settings; right: Microphone half, Push-to-Talk). Navigation icons overlap their
|
||||
text. The right edge is complete.
|
||||
- **Ruled out by experiment on the Frame:** `QT_FONT_DPI=96` (verified in the process
|
||||
environment): no change. `QT_QUICK_CONTROLS_STYLE=Basic` (Qt 5's "Default" style; `qt6`
|
||||
sets no style, so Qt 6 uses Fusion on Linux; only `mainwidget.qml` imports Material): no
|
||||
visible change. `QT_QUICK_CONTROLS_MATERIAL_VARIANT=Dense`: slightly better, still cut
|
||||
off.
|
||||
- **Facts:** Frame X screen 1920×1080, `Xft.dpi: 144`; default font Noto Sans
|
||||
(`fc-match sans-serif`). Template renders 1600×1000.
|
||||
- **Also seen:** after removing the Steam license, Steam's `steamapps.vrmanifest` still
|
||||
lists `steam.overlay.1009850` (not yet regenerated); the debug-output fix works (0 `[D]`
|
||||
lines).
|
||||
- **Diagnosis tools (DESIGN.md section 10):** font/screen metrics in the log, option
|
||||
`--snapshot <file>`, `run.sh` passes further options.
|
||||
- **Result:** cross build and package succeed, `Qt_6_PRIVATE_API` without `QVulkan*`: 0,
|
||||
generated `run.sh` checked with `sh -n`. No new warnings in the changed lines.
|
||||
- **Not tested yet:** on the Frame (log line "Font: …", PNG written).
|
||||
|
||||
### Test checklist on the Frame (step 5)
|
||||
|
||||
Deploy: `build_scripts/steamframe/deploy-to-frame.sh <user>@<frame>` (SteamVR running).
|
||||
|
||||
Reference in New Issue
Block a user