Mouse cursor misaligned and unusable in Steam client UI on Wayland with AMD GPU

System Specifications

  • Operating System: Zorin OS 18 (based on Ubuntu 24.04)
  • Graphics Card: AMD RX 7900 XTX
  • Display Server: Wayland (X11 works fine with the same settings and setup)
  • Display Scaling: Confirmed to be at 100% native scaling (no fractional scaling or large text enabled).

Problem Description

When running the native Steam for Linux client on a Wayland session, the mouse cursor is severely misaligned with the actual UI elements. This makes it impossible to interact with menus, buttons, or any part of the Steam store, library, or settings. For example, right-clicking on an item might show a context menu far away from the cursor, and moving the cursor over the menu items does not highlight them, preventing clicks. Furthermore, when trying to click on a menu item, the mouse cursor often disappears and the click action does not register. The client is effectively unusable.


Attempted Troubleshooting Steps

The following steps have been attempted and have failed to resolve the issue:

  1. Restarting Steam: The issue is persistent across multiple launches.
  2. Using -vgui flag: Launching Steam with steam -vgui did not fix the mouse alignment problem.
  3. Using -no-cef-sandbox flag: Launching with steam -no-cef-sandbox did not fix the problem.
  4. Resetting Steam Configuration: Running steam --reset and logging in again did not resolve the issue.
  5. Checking Display Scaling: Confirmed via gsettings that all display and text scaling is set to the default 100% (1.0). The issue is not related to fractional scaling.

Conclusion

This appears to be a software bug specific to the interaction between the Steam client, the Wayland compositor on Zorin OS 18, and the AMD graphics driver, rather than a user configuration issue.

Steam Wayland Mouse Bug - Solved with X11 4K@120Hz Workaround

Overview

This report documents a critical Steam client bug on Wayland and provides a complete workaround by enabling 4K@120Hz on X11 with AMD GPUs using HDMI 2.1 adapters.


System Specifications

Component Details
OS Zorin OS 18 (Ubuntu 24.04 based)
Kernel 6.14.0-35-generic
GPU AMD Radeon RX 7900 XTX
Display Samsung QC90 4K 120Hz
Connection DisplayPort 1.4 → HDMI 2.1 (Cable Matters adapter)
RAM 62 GB

The Problem: Steam Mouse Alignment Bug on Wayland

Bug Description

When running the native Steam for Linux client on a Wayland session, the mouse cursor is severely misaligned with UI elements. This makes the client effectively unusable:

  • Right-clicking shows context menus far from the cursor
  • Hovering over menu items doesn't highlight them
  • Clicks don't register on the intended elements
  • Mouse cursor frequently disappears during interactions

Failed Troubleshooting Attempts

The following did not resolve the issue:

  1. Restarting Steam - issue persists across launches
  2. steam -vgui flag - no effect
  3. steam -no-cef-sandbox flag - no effect
  4. steam --reset - no effect
  5. Verified display scaling at 100% (no fractional scaling)

Root Cause

This appears to be a software bug in the Steam client's interaction with Wayland compositors on AMD GPUs - not a user configuration issue.


The Solution: X11 with 4K@120Hz

Why X11 Was Previously Not Viable

X11 didn't expose HDMI 2.1 FRL (Fixed Rate Link) modes through xrandr, limiting displays to 4K@60Hz. Since Wayland handled 4K@120Hz correctly, it seemed like the only option despite the Steam bug.

The Discovery

While Wayland's DRM/KMS layer automatically handles HDMI 2.1 FRL modes, X11/xrandr requires manual modeline configuration. The kernel successfully detects FRL PCON support:

[drm] DP-HDMI FRL PCON supported

But xrandr doesn't expose these modes automatically.


X11 4K@120Hz Configuration

Manual Mode Setup

Add the 4K@120Hz mode manually:

xrandr --newmode "3840x2160_120" 1188.000 3840 4016 4104 4400 2160 2168 2178 2250 +hsync +vsync
xrandr --addmode DisplayPort-0 "3840x2160_120"
xrandr --output DisplayPort-0 --mode "3840x2160_120"

Persistent Configuration

Create ~/.config/autostart/set-120hz.desktop:

[Desktop Entry]
Type=Application
Name=Set 120Hz Display
Exec=/bin/bash -c 'sleep 2 && xrandr --newmode "3840x2160_120" 1188.000 3840 4016 4104 4400 2160 2168 2178 2250 +hsync +vsync 2>/dev/null; xrandr --addmode DisplayPort-0 "3840x2160_120" 2>/dev/null; xrandr --output DisplayPort-0 --mode "3840x2160_120"'
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true

This automatically applies 4K@120Hz when logging into X11.


Additional Optimizations

CPU Performance Mode (Persistent)

Create /etc/systemd/system/cpu-performance.service:

[Unit]
Description=Set CPU Governor to Performance
After=multi-user.target

[Service]
Type=oneshot
ExecStart=/bin/bash -c 'echo performance | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor'
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Enable with:

sudo systemctl daemon-reload
sudo systemctl enable --now cpu-performance.service

GPU Performance Mode

Already configured via udev rule at /etc/udev/rules.d/99-amdgpu-performance.rules to set power_dpm_force_performance_level=high.

vkBasalt Sharpening

For enhanced image quality in Vulkan games:

~/.config/vkBasalt/vkBasalt.conf:

effects = cas
casSharpness = 1.0
toggleKey = F12

Launch games with:

ENABLE_VKBASALT=1 /path/to/game

Verification Commands

Check Display Mode

xrandr --verbose | grep "3840x2160_120"
# Should show: *current

Check CPU Governor

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# Should output: performance

Check GPU Performance

cat /sys/class/drm/card*/device/power_dpm_force_performance_level
# Should output: high

Results

Metric Before After
Display Server Wayland X11
Resolution 3840x2160 3840x2160
Refresh Rate 120Hz 120Hz
Steam Usable No Yes
Mouse Alignment Broken Working

Hardware Requirements

For this solution to work, you need:

  1. GPU with DisplayPort 1.4 - AMD RX 6000/7000 series or equivalent
  2. HDMI 2.1 FRL adapter - Must support 48Gbps for 4K@120Hz
    • Confirmed working: Cable Matters 8K DP to HDMI (B08XFSLWQF)
    • Also works: Club3D CAC-1085
  3. Display with HDMI 2.1 - Ensure correct port and settings enabled
    • Samsung TVs: Enable "Input Signal Plus" for the HDMI port

Why This Matters

Linux lacks HDMI 2.1 licensing, so the open-source drivers can't officially implement HDMI 2.1. However, with FRL-capable DP-to-HDMI adapters and manual xrandr configuration, 4K@120Hz is achievable on X11.

This provides a viable workaround for users affected by Wayland-specific bugs (like the Steam mouse issue) while maintaining high refresh rate gaming.


Conclusion

The Steam Wayland mouse bug remains unresolved in the Steam client. However, by manually configuring X11 to support 4K@120Hz through custom xrandr modelines, users can:

  • Avoid the Steam Wayland mouse alignment bug
  • Maintain full 4K@120Hz gaming capability
  • Benefit from X11's mature gaming ecosystem

This solution is confirmed working on AMD RX 7900 XTX with kernel 6.14 and Cable Matters DP-to-HDMI 2.1 adapter.


Files & Resources

  • Autostart script: ~/.config/autostart/set-120hz.desktop
  • CPU service: /etc/systemd/system/cpu-performance.service
  • GPU udev rule: /etc/udev/rules.d/99-amdgpu-performance.rules
  • vkBasalt config: ~/.config/vkBasalt/vkBasalt.conf

Contributing

If you've found additional solutions or have similar hardware configurations, please share your findings to help the Linux gaming community.

How do You have installed Steam? As Flatpak or .deb? If Flatpak, I would suggest to try the .deb File because Flatpaks are only run with limited Permissions (what is intended) and that can cuse Issues. You can download it directly from Steam:

Sorry for the late reply. Yeah, Steam is installed from .deb from the Steam website. It's all fine in X11 it's just Wayland. So I'm sticking to X11 for now.

1 Like

Wayland is not ready for prime time, its been a mess, especially for Nvidia users. We always recommend using X11.