DISCLAIMER: Use at your own risk! This is in no way endorsed by VALVE.
These files are mirrored on both GitHub and Gist - use whichever you prefer.
Feature request for these changes to be implemented in Steam: issue #1040
The window management fixes:
- Force borders on non-menu windows.
- Let the WM position non-menu/tooltip windows.
- Group all steam windows. This helps WMs with their focus stealing preventions, and also prevents all Steam windows from being dimmed (by KWin) if any Steam window has focus (is a KWin setting).
- Tell the WM which Steam windows are dialogs. This lets the window manager place them more intelligently. For example, the WM might center dialogs.
- Steam sets error dialogs as unmanaged windows - fix that.
Obsolete fixes (now disabled by default):
- Set
_NET_WM_NAME
to theWM_NAME
value to get better window titles. - Set fixed size hints for windows with a fixed layout.
Fixes can be individually enabled or disabled - for details see the comments in the source file.
This file compiles to a library that can be LD_PRELOAD
ed into the Steam process. For your convenience it is also its own build and wrapper script.
Requires: g++
with support for x86 targets, Xlib
+ headers
Use:
$ chmod +x steamwm.cpp
$ ./steamwm.cpp steam
This is a Steam skin that complements steamwm.cpp
: It is exactly the same as the default skin, but with the window borders and controls removed.
To install it use:
$ chmod +x noframe.patch
$ ./noframe.patch
and then select the noframe
skin in the Steam settings.