Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor internal display scaling for embedded steam client within gamescope-session into a user-facing option #10968

Open
matte-schwartz opened this issue Jun 11, 2024 · 0 comments

Comments

@matte-schwartz
Copy link

Your system information

  • Steam client version (build number or date): 1717792772

  • Distribution (e.g. Ubuntu): N/A - universal Deck client feature request

  • Opted into Steam client beta?: Yes

  • Have you checked for system updates?: Yes

  • Steam Logs: including from my ROG Ally running Fedora 40 linux using upstream gamescope with gamescope-session in case any of my Steam logs help with implementation of this feature request
    steam-logs.tar.gz

  • GPU: AMD Z1 Extreme APU

Please describe your issue in as much detail as possible:

Transferring from ValveSoftware/gamescope#1344
I wasn't able to find an existing issue that matched this feature request - sorry if I overlooked one

With more customization options in the pipeline for Steam Deck and Linux users of gamescope and embedded steam within gamescope-session, I wanted to raise a suggestion of refactoring the internal display scaling option for the Steam Deck client into Steam client userspace for customization.

Handheld devices with high internal display resolutions - such as the ROG Ally at 1920x1080p or the even more egregious Legion Go at 2560x1600 - are very hard to use with the default scaling that ships in gamescope-session provided from the in-client source package mirror: https://steamdeck-packages.steamos.cloud/archlinux-mirror/

I don't have a Legion Go anymore (it's a bit more of a stark comparison as well...) but here are the Steam Deck and ROG Ally side-by-side showcasing the scaling differences

IMG_1622


If users want to scale the UI to be more legible right now, they have two options:

1: make gamescope think your panel is external with a forked version of gamescope and forked gamescope-session... perhaps the most common method and a very "hacky" workaround
2: rely on third-party extensions to access "hidden" dev options within the steam client itself

Method 1 is difficult for many users who are new to the linux ecosystem unless a distro provides a modified package for them, while Method 2 lead to people using third-party extensions to fill the gap - which are liable to break between steam updates that ultimately end up being filed as erroneous steam client bug reports. Method 2 also involves menus that no end user should ever need to be seeing.

Imo, refactoring internal display scaling into a user-facing portion of the client is starting to make sense given the heading of a few different Valve projects. If it's just internal UI scaling it can probably be done by dressing up the existing method and unhiding it? bringing this in-line with the proposed Gamescope PR gives a wider range of users the ability Valve's own provided packages. just my two cents on it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants