ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.25k stars 175 forks source link

Context menus may not get shown on Steam Friends & Chat windows if xwayland-native-scaling is enabled on GNOME 47 #11356

Open RattletraPM opened 4 weeks ago

RattletraPM commented 4 weeks ago

Your system information

Please describe your issue in as much detail as possible:

On GNOME 47, with xwayland-native-scaling enabled: Expected behavior: Context menus should appear in the Steam Friends and Chat windows when doing certain actions (for example, when right-clicking on a friend or clicking the ⌄ next to their profile name in the Friends window, clicking on the Emoji button in a Chat window, etc) Observed behavior: Said context menus do not appear if display scaling is set to a value above 100%. The issue only seems to affect the Friends and Chat windows, as context menus appear normally everywhere else in the client (main window, settings, etc)

Steps for reproducing this issue:

  1. Enable xwayland-native-scaling and scale-monitor-framebuffer (the latter is required by xwayland-native-scaling to take effect): gsettings set org.gnome.mutter experimental-features "['xwayland-native-scaling','scale-monitor-framebuffer']"
  2. In GNOME Settings, go to Displays and set your display scale factor to a value above 100%.
  3. The described issue should now affect the abovementioned Steam windows.

NOTE: This issue appears to be unrelated to fractional scaling, as it still seems to happen if the display scale factor is set to an integer value (for example, 200%) I've been able to reproduce the issue in both stable and beta Steam release channels. I've also tried launching the client with some command line arguments (mainly -forcedesktopscaling) as well as toggling context menu focus compatibility mode in Settings, but nothing was helpful towards solving it.

RattletraPM commented 2 weeks ago

The latest Steam Beta build at the time of writing (1730253536) fixes this issue!

RattletraPM commented 2 weeks ago

(FWIW I've just double checked and, sure enough, Steam's current stable client does still have this issue, while it's no longer present in the latest Beta build - so I can confirm the fix wasn't due to some other external factor on my system)