steam-for-linux icon indicating copy to clipboard operation
steam-for-linux copied to clipboard

after update steam client to version 1676680477 scaling being broken on pages (game library and chat)

Open NTMan opened this issue 1 year ago • 106 comments

Your system information

  • Steam client version (build number or date): 1676680477
  • Distribution (e.g. Ubuntu): Fedora Rawhide
  • Opted into Steam client beta?: Yes
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

after update steam client to version 1676680477 scaling being broken on pages (game library and chat) Screenshot from 2023-02-18 12-25-49 Screenshot from 2023-02-18 12-26-06 Screenshot from 2023-02-22 12-07-26

last good version for me is 1675997500 Screenshot from 2023-02-18 12-34-08

Steps for reproducing this issue:

NTMan avatar Feb 18 '23 07:02 NTMan

An Off-topic question: How do you downgrade steam to the previous beta version?

CoelacanthusHex avatar Feb 19 '23 14:02 CoelacanthusHex

Same issue on up-to-date Manjaro with updated Steam client and beta opt-in (NVIDIA proprietary driver). Can't read game titles in 4K without scaling and with Deck UI running at about 3fps it's very cumbersome to start a game.

Workarounds:

  1. opting out of beta fixes the main window scaling (Deck UI is still a slideshow)
  2. alt+enter starts a good-old Big Picture mode that works flawlessly (for now)

cprn avatar Feb 19 '23 18:02 cprn

I just upgraded to 1676836260, and HiDPI scaling is indeed now broken.

Opting out of the beta participation fixes the problem, as expected.

Please add an automated regression test for HiDPI.

hoxu avatar Feb 20 '23 16:02 hoxu

Chiming in to say I have the same issue. The window is fine, but the content within the viewport no longer scales properly. In addition, I have this issue that happens whenever I view a non-Library page: image It seems to resolve itself when I close the window and re-open from the system tray. However, when freshly started, the issue comes back.

TheGhostHybrid avatar Feb 24 '23 23:02 TheGhostHybrid

Chiming in to say I have the same issue. The window is fine, but the content within the viewport no longer scales properly. In addition, I have this issue that happens whenever I view a non-Library page: (...) It seems to resolve itself when I close the window and re-open from the system tray. However, when freshly started, the issue comes back.

I have this issue too, I don't need to close the window and re-open from the tray icon, changing the page to Library, then back to the previous one makes it render properly. This is much quicker than re-opening

Anarch157a avatar Mar 06 '23 10:03 Anarch157a

In the version 1678845529 fixed scaling in library, but scaling still not working in "game properties" and "steam library folders"

Screenshot from 2023-03-15 10-21-22

Also scaling didn't work in windows "big picture configuration", "desktop configuration" and "guide button chord configuration"

Screenshot from 2023-03-15 10-42-06

NTMan avatar Mar 15 '23 05:03 NTMan

Is it just me, or does the newly enabled scaling look like actual high DPI rendering instead of simple 2x scaling? It looks very crisp now, where it was a bit blurry before, IIRC.

Thanks to whoever was involved! :)

frikisama avatar Mar 16 '23 06:03 frikisama

@kisak-valve Is there a workaround? The game properties window is barely readable.

Lastique avatar Mar 16 '23 23:03 Lastique

For me, the scaling issue is fixed on the Library with 1679024366, but still present in the properties window.

Seegras avatar Mar 17 '23 12:03 Seegras

scaling still not working in "game properties" and "steam library folders"

Also scaling didn't work in windows "big picture configuration", "desktop configuration" and "guide button chord configuration"

I can confirm that for me the mentioned windows are also too small (not scaled to 2x size). I do not participate in the Beta.

About Steam

Steam client application:
Built: Mar 24 2023, at 17:20:43
Steam API: v020
Steam package versions: 1679680416

friedc avatar Mar 24 '23 21:03 friedc

And again scaling is broken since 1679950905 version. Is it really is no one developer at Valve having 4K monitor with scaling?

Screenshot from 2023-03-28 12-07-16

NTMan avatar Mar 28 '23 07:03 NTMan

This problem has not been assigned to anyone for more than two months. Is there any news?, this problem also happens in the latest stable version 1679680416

yhojann-cl avatar Apr 22 '23 17:04 yhojann-cl

FYI for Valve:

GTK4 dropped usage of GDK_DPI_SCALE.

KDE Plasma followed this by dropping the use of GDK_SCALE / GDK_DPI_SCALE starting with Plasma version 5.27. KDE Plasma instead recommends using xsettingsd to communicate scaling settings to GTK applications in X11 sessions.

Grauiton avatar Apr 27 '23 20:04 Grauiton

Wayland DPI scaling is completely broken as of the "big" Steam beta update released on 2023-04-27. Everything appears very tiny on a 4K screen and it is extremely difficult to use.

Example screenshot from the 2023-04-27 update:

image

arazilsongweaver avatar Apr 27 '23 22:04 arazilsongweaver

With update 1682634349 in addition to library broken scaling on store pages.

image

NTMan avatar Apr 27 '23 23:04 NTMan

The Steam window over top of a properly-scaled window (Quod Libet) to show the stark scaling difference. image

TheGhostHybrid avatar Apr 28 '23 00:04 TheGhostHybrid

Same issue here on Manjaro KDE, it has been a problem for months now, as a comment stated earlier, kde changed the way scaling works and now it doesn't use GDK scale anymore. This has been true since kde 5.27

anyoneyun avatar Apr 28 '23 04:04 anyoneyun

The solution for Valve is really simple:

If the GDK_SCALE environment variable is zero-length or not set, then instead use the value for Gdk/WindowScalingFactor in ~/.config/xsettingsd/xsettingsd.conf.

That's it.

Grauiton avatar Apr 28 '23 11:04 Grauiton

Why not use the same window to render all the others instead of doing it separately? In this way the scaling would depend on a single window instead of fighting with the rest. For example, I use two monitors and when a window opens like the update window, news, launcher, etc., they open on a different monitor than the one where steam is running. They could solve all those problems including the scaling thing if they integrated all the other windows inside of steam and not outside of it.

yhojann-cl avatar Apr 28 '23 16:04 yhojann-cl

What is this? A GUI for ANTS?!

:ant:

Tried the latest beta today. Totally unusable. Switched back immediately.

Arcitec avatar May 04 '23 23:05 Arcitec

I just install update 1683314987 which promised in change logs:

  • Steam will now use the system's global scale factor as configured in KDE/Gnome settings. Specifically org.gnome.desktop.interface/text-scaling-factor.
  • Re-introduced GDK_SCALE as a fallback mechanism to compute the window scaling factor.
  • Added a commandline switch to override the window scaling factor: "-forcedesktopscaling ".

But the miracle didn't happen. End result you can see on screen below: Screenshot from 2023-05-06 03-00-54

NTMan avatar May 05 '23 22:05 NTMan

The scaling is working again, however newer desktop environments no longer set GDK_SCALE.

You need to launch steam with something like this GDK_SCALE=2 /usr/bin/steam

dafzor avatar May 05 '23 22:05 dafzor

Please, for the love of God, stop implementing command line switches and and requiring users pollute thier app shortcuts menus and environments with debug variables for toolkits you don't even use, and give us a simple slider inside the app to change the scaling. This is all we need.

oldkentuckymark avatar May 05 '23 22:05 oldkentuckymark

When using GTK_SCALE=2 the window can only be dragged by using the top left of the window.

Right side and bottom of the window will not allow dragging. In the areas dragging still works it's inconsistent not working 100% of the time.

dafzor avatar May 05 '23 23:05 dafzor

But the miracle didn't happen. End result you can see on screen below:

Because they're using the wrong variable.

Here's a ticket about it:

https://github.com/ValveSoftware/steam-for-linux/issues/9466

Arcitec avatar May 05 '23 23:05 Arcitec

Steam really needs fractional scaling support and that wasn't working before the beta as well (I'm not talking about integer scaling, 1x, 2x etc, but about 150%)... It was maybe fine for people with 4k Monitors, but everyone that uses WQHD or has bad eyes (as me) never had a chance to use steam well under linux. On Gnome you had it scaling blurry, but on KDE with "Apps scale by themself" (which is the only great experience for linux scaling right now) it is not even possible to have a blurry UI, people streight up can't read it and can do nothing about it, because steam doesn't support fractional scaling. By that point steam should at least support X11 fractional scaling or add real wayland support.

Edit: I'm on KDE 5.27.4 under Wayland.

lionking102 avatar May 06 '23 09:05 lionking102

My text-scaling-factor is set but Steam seems to ignore it.

image

When I use either GDK_SCALE or -forcedesktopscaling, Steam core-dumps (crashes) with the following:

> GDK_SCALE=2 /usr/bin/steam
steam.sh[29015]: Running Steam on arch rolling 64-bit
steam.sh[29015]: STEAM_RUNTIME is enabled automatically
setup.sh[29089]: Steam runtime environment up-to-date!
steam.sh[29015]: Steam client's requirements are satisfied
[2023-05-07 07:43:17] Startup - updater built May  5 2023 18:02:32
[2023-05-07 07:43:17] Startup - Steam Client launched with: '/run/media/greg/games/Steam/ubuntu12_32/steam'
[2023-05-07 07:43:17] Opted in to client beta 'publicbeta' via beta file
You are in the 'publicbeta' client beta.
05/07 07:43:17 Init: Installing breakpad exception handler for appid(steam)/version(1683314987)/tid(29146)
Looks like steam didn't shutdown cleanly, scheduling immediate update check
[2023-05-07 07:43:17] Loading cached metrics from disk (/run/media/greg/games/Steam/package/steam_client_metrics.bin)
[2023-05-07 07:43:17] Using the following download hosts for Public, Realm steamglobal
[2023-05-07 07:43:17] 1. https://client-update.akamai.steamstatic.com, /, Realm 'steamglobal', weight was 1000, source = 'update_hosts_cached.vdf'
[2023-05-07 07:43:17] 2. https://cdn.cloudflare.steamstatic.com, /client/, Realm 'steamglobal', weight was 1, source = 'update_hosts_cached.vdf'
[2023-05-07 07:43:17] 3. http://media.steampowered.com, /client/, Realm 'steamglobal', weight was 1, source = 'baked in'
[2023-05-07 07:43:17] Checking for update on startup
[2023-05-07 07:43:17] Checking for available updates...
[2023-05-07 07:43:17] Downloading manifest: https://client-update.akamai.steamstatic.com/steam_client_publicbeta_ubuntu12
[2023-05-07 07:43:17] Manifest download: send request
[2023-05-07 07:43:17] Manifest download: waiting for download to finish
[2023-05-07 07:43:18] Manifest download: finished
[2023-05-07 07:43:18] Download skipped: /steam_client_publicbeta_ubuntu12 version 1683314987, installed version 1683314987, existing pending version 0
[2023-05-07 07:43:18] Nothing to do
[2023-05-07 07:43:18] Verifying installation...
[2023-05-07 07:43:18] Performing checksum verification of executable files
[2023-05-07 07:43:18] Verification complete
Loaded SDL version 3.0.0-1471-gb6ca36022
XRRGetOutputInfo Workaround: initialized with override: 0 real: 0xf29d6db0
XRRGetCrtcInfo Workaround: initialized with override: 0 real: 0xf29d5500
GetWin32Stats: display was not open yet, good
steamwebhelper.sh[29284]: Runtime for steamwebhelper: defaulting to /run/media/greg/games/Steam/ubuntu12_64/steam-runtime-heavy
steamwebhelper.sh[29284]: glibc >= 2.34, partially disabling sandbox until CEF supports clone3()
Could not connect to X session manager: None of the authentication protocols specified are supported
CAppInfoCacheReadFromDiskThread took 63 milliseconds to initialize
Failed to init SteamVR because it isn't installed

(steam:29146): Gtk-WARNING **: 07:43:19.001: gtk_disable_setlocale() must be called before gtk_init()
local (potentially out of sync) copy of roaming config loaded - 1498 bytes.
src/vstdlib/coroutine.cpp (817) : GCoroutineMgr().IsValidCoroutine(hCoroutine)
src/vstdlib/coroutine.cpp (817) : GCoroutineMgr().IsValidCoroutine(hCoroutine)
05/07 07:43:28 Init: Installing breakpad exception handler for appid(steam)/version(1683314987)/tid(29146)
assert_20230507074328_28.dmp[29893]: Uploading dump (out-of-process)
/tmp/dumps/assert_20230507074328_28.dmp
crash_20230507074328_29.dmp[29897]: Uploading dump (out-of-process)
/tmp/dumps/crash_20230507074328_29.dmp
/run/media/greg/games/Steam/steam.sh: line 798: 29146 Segmentation fault      (core dumped) "$STEAMROOT/$STEAMEXEPATH" "$@"
assert_20230507074328_28.dmp[29893]: Finished uploading minidump (out-of-process): success = yes
assert_20230507074328_28.dmp[29893]: response: CrashID=bp-9594c616-305a-435d-9c99-114542230506
assert_20230507074328_28.dmp[29893]: file ''/tmp/dumps/assert_20230507074328_28.dmp'', upload yes: ''CrashID=bp-9594c616-305a-435d-9c99-114542230506''
crash_20230507074328_29.dmp[29897]: Finished uploading minidump (out-of-process): success = yes
crash_20230507074328_29.dmp[29897]: response: CrashID=bp-30c045e0-cf95-48f6-a06e-b53752230506
crash_20230507074328_29.dmp[29897]: file ''/tmp/dumps/crash_20230507074328_29.dmp'', upload yes: ''CrashID=bp-30c045e0-cf95-48f

I'm on Gnome 43 under Xorg.

GrzegorzKozub avatar May 07 '23 05:05 GrzegorzKozub

Just rechecked for my system (gnome 44.1 wayland session) only ~/.config/monitors.xml has matter.

❯ cat ~/.config/monitors.xml
<monitors version="2">
  <configuration>
    <logicalmonitor>
      <x>0</x>
      <y>0</y>
      <scale>2</scale>
      <primary>yes</primary>
      <monitor>
        <monitorspec>
          <connector>DP-3</connector>
          <vendor>PHL</vendor>
          <product>PHL 436M6VBP</product>
          <serial>0x000018d4</serial>
        </monitorspec>
        <mode>
          <width>3840</width>
          <height>2160</height>
          <rate>59.997</rate>
        </mode>
      </monitor>
    </logicalmonitor>
  </configuration>
</monitors>
❯ gsettings get org.gnome.desktop.interface text-scaling-factor
1.0
❯ gsettings get org.gnome.desktop.interface scaling-factor
uint32 0
❯ echo $GDK_SCALE

❯ echo $GDK_DPI_SCALE

https://stackoverflow.com/questions/67682348/what-exactly-is-modified-by-setting-the-gnome-display-scale-through-gui

NTMan avatar May 09 '23 08:05 NTMan

Steam beta update 1683859267:

Linux Dynamically update the UI's scaling factor when the system scaling setting changes.

  • Scaling is back to a broken state on X11 Gnome for me and GDK_SCALE=2 does not work any more.

puxplaying avatar May 12 '23 14:05 puxplaying

Yeah is this working for anyone now? It was working on Plasma 5.27 Wayland by using GDK_SCALE=2 but it was broken by the update that @puxplaying mentioned and hasn't worked since. I've tried removing the env variable in case it was conflicting somehow but removing it didn't help. -forcedesktopscaling=2.0 does work but that seems like a poor solution especially considering that I have a different scaling factor set when I'm connected to my big 4k screen vs when that display is off.

ReillyBrogan avatar May 25 '23 22:05 ReillyBrogan