Your system information
- Steam client version: beta build
1782517397
- SteamOS version: SteamOS
3.8.11, build 20260620.1
- Steam Runtime Version: Steam Runtime 3c / sniper, as launched by
steamwebhelper
- Distribution: SteamOS Holo
- Opted into Steam client beta?: Yes,
steamdeck_publicbeta
- GPU: Intel Lunar Lake iGPU, Mesa
25.3.0
- Hardware: MSI Claw 8 AI+ A2VM
- Display: internal
eDP-1, EDID vendor/model/product CSW / PN8007QB1-2 / 0x0801, native 1920x1200
Please describe your issue in as much detail as possible:
On Steam beta build 1782517397, opening the SteamOS Big Picture Settings > Display page crashes the page with:
TypeError: Cannot read properties of undefined (reading 'width')
The visible error page reports:
Error Reference: Shared SteamUI_10780134_89606695adcf6ee7
Using the Steam WebHelper CDP console, SteamClient.System.DisplayManager.GetState() succeeds, but its protobuf reply omits game_resolution_override_default:
field 4 game_resolution_override_native = 1920x1200
field 5 game_resolution_override_default = <missing>
The beta Steam UI bundle then reads the missing field without a guard in the Display settings component:
TypeError: Cannot read properties of undefined (reading 'width')
at j (https://steamloopback.host/chunk~2dcc5aaf7.js?...:1:8081620)
From the minified bundle, the crashing j() function reads l.data.width, where l is the selector for game_resolution_override_default.
The expected default value on this device is 1920x1200. Steam's native systemdisplaymanager.txt log shows the native path can compute it:
GetGameResolutionOverride: override: 'Default'
Using maximum game resolution: screen resolution: 1920x1200
Steam stable build 1782533657 on the same device also omits game_resolution_override_default from DisplayManager.GetState(), but the stable Display settings UI does not unconditionally read the missing field and renders successfully. The regression appears to be that the beta UI now assumes game_resolution_override_default is always present, while the native DisplayManager reply can still omit it.
While testing, I also added a gamescope known-display profile for this MSI Claw 8 AI+ panel. That fixes gamescope's panel identification and refresh-rate list, and is being proposed separately in ValveSoftware/gamescope#2236. It does not fix this Steam beta UI crash because the beta crash is caused by the missing DisplayManager.GetState() field described above.
Steps for reproducing this issue:
- Use a SteamOS gamescope session on a non-Deck handheld where
DisplayManager.GetState() does not include game_resolution_override_default.
- Opt into Steam beta build
1782517397.
- Restart Steam.
- Open Big Picture
Settings > Display.
- Observe the Display page error:
TypeError: Cannot read properties of undefined (reading 'width')
Expected result
The Display settings page should render even when game_resolution_override_default is absent. Either:
DisplayManager.GetState() should populate game_resolution_override_default with the screen-resolution default when gamescope_game_resolution_global is Default, or
- the Display settings UI should fall back to the current/native display resolution when this field is absent.
Your system information
17825173973.8.11, build20260620.1steamwebhelpersteamdeck_publicbeta25.3.0eDP-1, EDID vendor/model/productCSW/PN8007QB1-2/0x0801, native1920x1200Please describe your issue in as much detail as possible:
On Steam beta build
1782517397, opening the SteamOS Big PictureSettings > Displaypage crashes the page with:The visible error page reports:
Using the Steam WebHelper CDP console,
SteamClient.System.DisplayManager.GetState()succeeds, but its protobuf reply omitsgame_resolution_override_default:The beta Steam UI bundle then reads the missing field without a guard in the Display settings component:
From the minified bundle, the crashing
j()function readsl.data.width, wherelis the selector forgame_resolution_override_default.The expected default value on this device is
1920x1200. Steam's nativesystemdisplaymanager.txtlog shows the native path can compute it:Steam stable build
1782533657on the same device also omitsgame_resolution_override_defaultfromDisplayManager.GetState(), but the stable Display settings UI does not unconditionally read the missing field and renders successfully. The regression appears to be that the beta UI now assumesgame_resolution_override_defaultis always present, while the native DisplayManager reply can still omit it.While testing, I also added a gamescope known-display profile for this MSI Claw 8 AI+ panel. That fixes gamescope's panel identification and refresh-rate list, and is being proposed separately in ValveSoftware/gamescope#2236. It does not fix this Steam beta UI crash because the beta crash is caused by the missing
DisplayManager.GetState()field described above.Steps for reproducing this issue:
DisplayManager.GetState()does not includegame_resolution_override_default.1782517397.Settings > Display.Expected result
The Display settings page should render even when
game_resolution_override_defaultis absent. Either:DisplayManager.GetState()should populategame_resolution_override_defaultwith the screen-resolution default whengamescope_game_resolution_globalisDefault, or