When the Steam window is minimized where does it go? Does your window manager not support some form of display of minimized windows? The thinking behind the Steam UI is that there's an expectation minimized windows are tracked and available to the user in some way, plus then there's the app indicator icon.
It goes to my panel.
The issue is that I don't want it taking up space there when I hit the close button. I want the window itself to be closed (while leaving the systray icon in my notification area).
@gdrewb-valve: On Gnome Shell, the window minimizes (disappears), but it is still present in the overlay as an regularly opened window, same for alt+tabbing.
Ah, I see, you don't want even the minimized form of the window. We deliberately switched the close box to minimize because of the number of people where the app indicator didn't work. If the window actually closes and there is no app indicator there's no UI at all for Steam even though it's still running, so we switched to minimizing. Unfortunately there's no way to know if app indicators are working (presence/absence is not sufficient as even if they're present they do not always work). Our hope is that the problems there will get worked out and then we can remove our workarounds and rely on the app indicator, at which point closing the window will close it.
EDIT: Posted before I saw gdrewb-vavle's reply.
There are three states a window can be in open, minimized or shaded. Open, is as you would expect. The window is on the screen (but may be hidden below other windows). Minimized means the window exists but is not currently on the screen. And shaded is generally a window manager feature for just displaying a titlebar on the screen. All three window types are displayed in the "window buttons" type feature of a panel (a list of all windows).
What I am looking for is when I click the 'X' in the steam UI for the window actually close so that it doesn't appear in this panel.
I probably went more in depth then necessary but I was having trouble articulating.
I see. That makes perfect sense. Is there any way that you could provide an option to make close behave properly? Even if I had to edit a config file or set an environment variable.
OK, in the next client if you have STEAM_FRAME_FORCE_CLOSE=1 in your environment the close box will close the window instead of minimize. This is also hopefully temporary as we want to get rid of all of these oddities once we can rely on app inidicators.
Thanks, that is awesome. I already have it set in my shortcut :D I guess this is closed then unless it happens not to work.
I'm just confirming that this works! Thanks for all of the hard work.
Hmm where do i pop "STEAM_FRAME_FORCE_CLOSE=1" as adding it to the end of my shortcut so it reads:
/usr/bin/steam %U STEAM_FRAME_FORCE_CLOSE=1
Doesn't work for me.
It is an environment variable so you have to set it one of the following ways.
STEAM_FRAME_FORCE_CLOSE=1 steam
but this might not work for shortcuts. You can work around this by calling the shell directly.
sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam'
Or you can set it in your environment.
export STEAM_FRAME_FORCE_CLOSE=1
steam
Whatever works for you.
With the last update, in KDE, the systray icon are fully showing with image and all, but itself can't close to tray. If i opening Steam with STEAM_FRAME_FORCE_CLOSE=1 steam do it, but when i click (one, twice or all times i do) in the Steam tray icon it doesn't do anything, only do something if i open the menu with the secondary button and choose the option.
The questions:
STEAM_FRAME_FORCE_CLOSE=1 steam or a proper fix will be added to Steam automaticly?I could create a new issue, but i think to do the questions here first and do it later if it's needed
@LukasThyWalls:
The variant with env variable is temporary workaround, since they're now using minimizing instead of closing (due the absence of tray icon for some people). They will change (correct) it later.
Clicking on the icon doesn't do anything for me either.
The menu that pops up is extremely laggy and extremely ugly. I just hope that must be some kind of joke or something… :)
There's no firm timeframe for when STEAM_FRAME_FORCE_CLOSE will become the default behavior.
Steam doesn't define the behavior of the icon, what happens when it's clicked on is up to the window manager.
@kevincox I can't figure out where to put the command lines you've suggested. Does it go on the "Exec=" line of the .desktop?
Yes, but you might need to use the sh one. I'm not sure if the other one will work.
@kevincox If I'm editing the steam .desktop, would I erase the line that says "Exec=/usr/bin/Steam %U" ?
Changing that line to
Exec=sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam' %U
Should work.
If anyone is interested there is now an AUR package that you can install to make this the default.
You say "what happens when it's clicked on is up to the window manager". That is nonsense.
You found a way how to assign a context menu to right click, so there must be a way how to assign "open window" action to left click. All the other applications can do it - eg. dropbox opens the folder on left click and has a menu on right. Similarly works pidgin, all music players and all kinds of other dockable apps.
Also, there is no reason why it should take five seconds to open a simple text-only menu!
No, for some reason they are using libappindicator which only allows the application to show a menu and put an icon in the taskbar. These other applications are using things such as GtkStatusIcon that use the free desktop standard for placing menus.
@MightyPork please be respectful here.
The newer indicator protocols have limited features compared to the previous system most other apps still use.
I think the best option to fix the closing bug is to edit /usr/bin/steam, and add
export STEAM_FRAME_FORCE_CLOSE=1
right before "function show_message()".
Then it will use this option regardless of the launch method, that is, it will work both with auto-start and with manual start from desktop icon or main menu.
Yes, this works well. But you have to be careful as /usr/bin/steam will get overwritten during package updates. (not steam's own updates.)
Better is to use e.g. ~/.profile, which will be persistent.
This can be simply fixed by this command in a terminal (in Ubuntu at least)
echo 'STEAM_FRAME_FORCE_CLOSE DEFAULT=1' >> ~/.pam_environment
if you want it for all users (not just yourself), you can use:
echo 'STEAM_FRAME_FORCE_CLOSE=1' | sudo tee -a /etc/environment
This is persistent even after updates.
@kevincox (or someone from valve) reopen this issue, please.
I don't think such workaround is a proper reason for resolving the github issue, even though the workaround works.
Software should behave well by default, without any workarounds.
And looking at number of new duplicates of the issue on github, this issue is pretty popular.
So, please reopen it until it's really fixed.
@DarthGandalf +1
@gdrewb-valve You're right that Steam disappears for people where the app indicator doesn't work. But keep in mind that these people can just restart steam to get the window back. So STEAM_FRAME_FORCE_CLOSE=1 should really be the default.
I agree. STEAM_FRAME_FORCE_CLOSE=1 should be default. In Cinnamon DE this also appears. Pls refer to the referenced issue by @mtwebster
I'm running Arch Linux + Cinnamon as DE, I ran
set STEAM_FRAME_FORCE_CLOSE 1
and added the
STEAM_FRAME_FORCE_CLOSE=1
to the /etc/environment file, but Steam is stil not closing after I cleck the X
Try closing steam and opening a terminal. Then run STEAM_FRAME_FORCE_CLOSE=1 steam. If minimizing works then the variable is not getting to where you are launching steam from.
Also set doesn't export the variable unless you add the -a option.
Reopening as a feature request to eventually use more sensible behavior when all OS's and window managers work as expected.
@kevincox
I tried with -a (also -x and -l) and nothing worked, steam is still minimizing to the taskbar on close. The only thing missing is to resatrt the computer
Steam now displays a system tray icon when app indicator support is missing, so this workaround does not make much sense to me.
The latest version for Arch Linux is from feb 16th, 2014, and it was not showing the tray icon 2 weeks ago. I could make it work after restarting the computer, and I now get the tray icon, and I have not updated the client.
It may be working in other distros (probably ubuntu and/or debian)
I has worked fine for me in Arch Linux with i3 for ages. Perhaps you were in a window manager without a system tray before. I don't think Valve need to worry about supporting environments without a system tray or application indicators - it's a pretty basic requirement.
This could be as simple as hiding/showing the window when left clicking the tray icon. That is how VLC does it as well.
I agree with @thestinger and @cjwijtmans.
Now the close button should actually close the window (STEAM_FRAME_FORCE_CLOSE=1) by default, specifically)
BTW, KDE's system tray works with Steam.
note that the tray works perfectly fine with steam in wine. So i dont understand why they are having so much trouble.
Is this workaround still needed? Perhaps it's time to switch to STEAM_FRAME_FORCE_CLOSE=1 by default?
Linux Mint 17 user here. Still waiting guys..
The work around doesn't work anymore for me in linux mint 17 since one of the last updates, i have the environment variable set and it does nothing anymore, which is really annoying to have the steam window sit on unused while the program is idle.
I'm have the same issue on arch.
Actually never-mind my last post, it does still work but it has to be added to the /usr/bin/steam file, setting it as an user variable seems to do nothing.
The workaround where I edit the steam file works. But I was told that only lasts until steam updates.
Confirming, exported variable doesn't work on openSUSE 13.2 x64 Gnome with newest Steam.
I added a "STEAM_FRAME_FORCE_CLOSE=1" line to /usr/bin/steam, but it still doesn't work.
"Our hope is that the problems there will get worked out and then we can remove our workarounds and rely on the app indicator, at which point closing the window will close it."
--- gdrewb-valve Jan 29, 2013
Almost two years, and this still hasn't been fixed. I just got Steam, for the first time. I thought my install was effed up. I really don't like fighting my computer on things like this.
Try work around on /usr/bin/steam or as a environment variable, it may or may not work for you ( the usr/bin/steam does for me )
The workaround is still working fine for me btw. Even after steam updates :)
On Ubuntu I installed long time ago, environment variable still works even after Steam updates. On the other hand on recently installed openSUSE 13.2 x64 both /usr/bin/steam and environment variable do not work.
i fixed it this way:
https://wiki.archlinux.org/index.php/steam#The_close_button_only_minimizes_the_window
on ubuntu.
but please add this by default, because the windows version works the same way. also the autostart should be "-silent" like on windows.
@fishxz Thanks! That works under XFCE
Whisker menu right click, Edit Menu, Steam. sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam' %U
Why isn't this the default? Pretty simple and works great. Perhaps even doing what #2239 suggests would solve this.
Guys it's pointless, they won't fix this no matter how much we complain.
It's been open for TWO YEARS. Stupid decision, but all we can do is the workaround.
how the fuck is this still open? This is such an easy fix.
Valve devs seem to be really, really lazy.
I think they aren't: This is intentional as Steam wants to push Ubuntu and this is only a low priority bug when using Unity.
It's still ridiculous as having two buttons doing the same thing is stupid. So please Valve: Please fix this, even if it isn't much of an annoyance with Unity.
Valve doesn't pficcialy support xfce and mate
And what?
3 июня 2015 г. 14:24:48 EET, Yan Pashkovsky [email protected] пишет:
Valve doesn't pficcialy support xfce and mate
Reply to this email directly or view it on GitHub:
https://github.com/ValveSoftware/steam-for-linux/issues/1025#issuecomment-108311999
Простите за краткость, создано в K-9 Mail.
Isn't it DE specific?
Not really. It basically affects every desktop environment EXCEPT Gnome. This is because it's not honouring X standards (which exist specifically to avoid problems like this).
I am using gnome in fedora and i am fairly sure it also affects gnome, sure the window gets thrown into activities if you don't have a dock or window list, but if you have those it doesn't and you have the tray ( gnome has an icon tray again ) and the window icon in dock or window list.
basically this affects any desktop environment.
it also affects gnome for sure.
+1 for XFCE. I would love this feature
This shouldn't be specific to any WM or DE.
this has been open since Jan 2013
still not fixed
Ok, I get that it's not possible to autodetect whether "app indicators" actually work or not, but that doesn't excuse the lack of UI option to specify that "Yes, I'm one of the 90% of Linux users not using your specific target distro/DE and yes app indicators work on my particular DE"
could you please make this default behavior? It works on ubuntu right? And you are targeting ubuntu. For people where it DOESNT work they could do STEAM_FRAME_FORCE_CLOSE=0
++WORKAROUND/FIX FOR XFCE++
I've worked out a pretty simple fix for xfce, all it requires is installing a utility called devilspie. it's in the ubuntu (universe) repos for 14.04 through 16.04.
sudo apt-get install devilspie
create ~/.devilspie/steamfix.ds
mkdir ~/.devilspie
nano ~/.devilspie/steamfix.ds
and paste the following in the file
; generated_rule steam fix
( if
( begin
( is ( window_name ) "Steam" )
)
( begin
( skip_tasklist )
( println "match" )
)
)
Save the file (ctrl+o, enter ctrl+x)
In xfce open Settings Manager > Window Manager Tweaks > Cycling tab > make sure Skip windows that have "skip pager" or "skip taskbar" properties set is checked.
Launch devilspie (don't forget to add devilspie to your session autostart in xfce-settings)
problem solved!
Also don't bother with STEAM_FRAME_FORCE_CLOSE=1 (closing the window will close steam)
I think this is a simple enough fix for the time being for me, close just minimizes to tray, steam never shows in the taskbar.
Hopefully this helps till valve can get things sorted out with being able to rely on indicators.
Bump! So, @gdrewb-valve, has Unity resolved its problems yet? 3.5+ years later and Debian still works properly in this regard, but this issue remains, and the chatter is becoming nonsensical.
When can we expect things to work as they ought?
The Steam team will post here when they have an update. I have no idea when or if they'll have something.
Setting STEAM_FRAME_FORCE_CLOSE=1 in my /etc/environment is working well for gnome-shell on Fedora 24 and Arch. (I have steam autostarting with steam -silent on my Arch machine)
I appreciate you at least having the option available via an environment variable - so thanks!
I think it makes sense to have this option integrated into the Settings menu, many apps have a "Close to tray" checkbox. This also means users having issues can disable closing to systray, while the vast majority for whom it "just works" can have it set to their preference.
IMO this would mitigate most arguments for not closing to tray by default.
This is probably a desirable settings option for all platforms with a systray though, not just linux; perhaps I should make a separate issue? EDIT: See #4569
Why always everyone works so slow for Linux?
How many years should pass for fixing this small bug?
If you need money so say it...!
I think Valve has enough money, SteamOS just isn't their main product. They rather develop features which actually net them money and fixing minor issues doesn't. As much as I love Linux, it's still a pretty niche system to see on desktops and especially gaming PCs.
@elm0829 what? this issue?
close to tray sort of works in xubuntu 16.04. The window disappears and the tray icon is visible, however steam still shows in the tasklist/taskbar (as if it were minimized)
I think the issue is how the window manager is handling the window.
Valve settled on ubuntu as it is one of the more popular distros and generally compatible with most derivatives with minor issues, Unfortunately this issue i think will persist for anyone using a WM that doesn't handle windows like gnome/unity.
I rigged up a workaround to hide the steam window from the tasklist with devilspie when minimized.
@elm0829 there is no close to tray which one you are speacking about? unofficial STEAM_FRAME_FORCE_CLOSE variable?
and also there are libraries for this which support all distributions and desktop environments.
Anyway we have to wait an other 3 years for this small and important issue, I think.
Ty guys :|
Yes, I have said it, because this isn't for steamOS, We MUST wait an other 3 years...
I am not here for trolling, I am here JUST for reminding.
@elm0829 Time isn't the factor? lol, so I hope my grandsons can enjoy steam's close on tray feature :D
What is the wm?
This issue is essentially: The close button and the minimize button do the same thing. With every window manager.
This issue is essentially: The close button and the minimize button do the same thing. With every window manager.
No, that is not this issue. This is is this issue:
(gdrewb-valve's comment; https://github.com/ValveSoftware/steam-for-linux/issues/1025#issuecomment-12858338)
Ah, I see, you don't want even the minimized form of the window. We deliberately switched the close box to minimize because of the number of people where the app indicator didn't work. If the window actually closes and there is no app indicator there's no UI at all for Steam even though it's still running, so we switched to minimizing. Unfortunately there's no way to know if app indicators are working (presence/absence is not sufficient as even if they're present they do not always work). Our hope is that the problems there will get worked out and then we can remove our workarounds and rely on the app indicator, at which point closing the window will close it.
Valve has made "close" == "minimize," to "accommodate" a (very, very, long standing, apparently) bug in Unity, their "userbase of choice." I say apparently, because I just assume it hasn't actually been fixed, and Valve is holding on to their "fix" because of it.
So exactly as I said. Valve can't control it, the Wm does.
I guess we're talking about two different "Its" then. The "it" I'm referring to, and what this issue is about (as Valve has even clarified, as per my last reply), is that Steam treats "close" like "minimize." If it would just treat "close" like "close," those with software compliant to the spec would have the expected behavior. ("close" closes the window). (Which is everyone: everyone's WM knows how to "close" a window.)
Valve can't control defects in Unity/Metacity/Compiz/"app indicator"-thing/..., sure, but they can control whether or not they let those defects cripple the functionality for everyone. i3bar seems to work fine w/ tray apps. https://unity.ubuntu.com/projects/appindicators/ -- Unity concept, whatever it's used for (I guess it's like an enhanced tray area for Unity), apparently did not (and still does not, as this issue is open still) support some critical tray functionality.
I haven't launched Steam in a good while, but I guess the environment variable to enstill the correct behavior still works.
This issue is going to be turning four years old in January. :birthday:
@elm0829 I didn't thought you mean WM = Windows Manager!!! dude It is not cause of windows managers system tray is an special feature for desktop environments. WM is just an API for drawing not for controlling. for example all of the steam's tray icon's menu buttons are made with GTK2...
@elm0829 You are right, I confused with display servers...
This issue is going to be turning four years old in January.
@gdrewb-valve -- This issue has been rolling around for 4 years now; do the issues Valve/Steam was running up against w/ Ubuntu/Unity users and app indicators still apply, or can we remove the STEAM_FRAME_FORCE_CLOSE environment variable workaround and make it permanent/default?
That's up to the Steam team to decide, if they change anything they'll update this issue.
STEAM_FRAME_FORCE_CLOSE=1 env var does not fix it :
$ env|grep STEAM
STEAM_FRAME_FORCE_CLOSE=1
$ steam
wait for it ...
click the close (x) icon
wait ...
keep waiting ...
steam still running minimized...
(stdout|stderr did not even notice the click event or at least shows nothing)
hitting the close button does nothing but minimize the steam client.
@alemansec, It sounds like what you're running up against is a different issue, not this one. I tested this behavior, and it works as expected. I replied in your issue about this: https://github.com/ValveSoftware/steam-for-linux/issues/4772#issuecomment-268646734
steam still running minimized...
As in, Steam still shows in the task panel (list of minimzed windows, not the system tray)? If Steam stays in the tray, but the window closes, then the environment variable is working as intended. It's not supposed to exit Steam, just close the window.
I just want to clarify, as those details got lost along the way to now somehow (at least that's my understanding from grok'ing the thread).
Steam client minimizes when hitting the close icon, with the env var set, but this is ACTUALLY A PROBLEM to me, that's why i opened a issue related to this : issue #4772
in a few words : "close button" in title bar should actually close the dialog (and finally application if MainWindow was closed), not minimize its dialogs/windows ; the minimize icon was MADE FOR THIS SOLE PURPOSE.
Have a look at issue #4772 for details (marked as duplicate by error)
Someone marked it as a duplicate of this issue, hence my comment here (although it's clearly not a duplicate issue).
The latest Steam Beta Client has fixed this for me, great job Valve.
@LiamDawe Does closing from DesktopEnvironment also work?
Closing per "Unify close-to-tray behavior with other platforms. If using a distribution that doesn't have proper compatible tray support, use STEAM_FRAME_FORCE_CLOSE=0" in the 2017-01-05 steam beta client update.
Not sure if I should reopen this, but using the Latest KDE/Plasma release (including frameworks/etc), the latest beta still needs export STEAM_FRAME_FORCE_CLOSE=1 to close to tray, and, now neither right or left clicking on the icon after it minimizes does anything. Before, left clicking did nothing, but right clicking at least brought up the menu where I could open my library.
Hello @jchevarley, for the system tray menu, there is a new issue report at #4795.
How funny that I came here for quite the reverse problem. So, what option should I check to minimize steam into tray upon closing the window?
This doesn't work when you are closing steam from Gnome, you have to just click on X button.
@sharifzadesina wait, isn't this whole bugreport, that said to be fixed, was about exiting upon pressing "X button"?
@Hi-Angel I didn't reply to you, I have just reported a bug :D
Anyway, I have to say steam behavior seems to be broken, beacuse there's no way to minimize it to tray at all. Upon closing window it exits. Upon pressing the tray icon it shows a menu. The menu have also no an option to minimize to tray.
@Hi-Angel It should close to tray when you click the main window's "x" button. If that doesn't work then something is wrong. Is your steam fully updated? What DE are you using?
@tengwar I have neither DE nor a bar with "x" button upon windows — I'm using a tiling WM, i3. To close steam I simply press the closing hotkey.
@Hi-Angel, using i3's kill command and the latest Steam beta, Steam "closes" to the tray (in i3bar) (as does clicking the "X" button). Left or right clicking on the tray icon opens the menu. Choosing "exit" from that menu or Steam's main menu exists steam.
@nmschulte weird, for me i3's kill command closes steam completely. Upon opening from terminal, last steam words after I pressed the hotkey:
Refresh rate: 1
Refresh rate: 1
Refresh rate: 1
Refresh rate: 1
Refresh rate: 1
Refresh rate: 1
Refresh rate: 1
Refresh rate: 1
[2017-01-28 20:55:12] Startup - updater built Jan 19 2017 01:22:13
[2017-01-28 20:55:13] Проверка установки...
[2017-01-28 20:55:13] Verification complete
Unable to remove /home/constantine/.local/share/Steam/CONFIG/SteamAppData.vdf!
[2017-01-28 20:55:28] Shutdown
i3 version 4.13 here.
I would open a new bug report w/ your details, then. I am running on Debian (unstable) with a build of the latest next of i3.
@nmschulte nah, I can't. I'm on Archlinux, it's unsupported.
@nmschulte anyway, could you post output of i3 --version, please?
@Hi-Angel oh, I didn't realize that mattered. :neutral_face: You could try reproducing it on Debian or Ubuntu. ArchLinux is fairly similar, anyway.
$ i3 --version
i3 version 4.13-35-gd4066a6c (2017-01-10, branch "next") © 2009 Michael Stapelberg and contributors```
@nmschulte well, having another distro doesn't mean I can't make a generic feature request ;)
@Hi-Angel, brilliant!
This is still an issue on Linux Mint 22.3 - Cinnamon 64-bit
Steam is one of the most user-respecting platforms in the industry and generous refunds, Proton, the Deck, all of it. Which makes this one missing toggle so much more glaring. Every other application on my Linux desktop closes when I click the close button, because that's what the close button means Those that dont I dont use... Steam is the lone exception, and there isn't even a setting to opt out of it.
Instead of closing, X minimizes to the tray, and to actually quit I have to dig into a menu or right-click the tray icon. That's an extra deliberate step, every single time, to do the one thing the button I just pressed is universally understood to do. STEAM_FRAME_FORCE_CLOSE=1 is unreliable on the current client, so there is currently no dependable way to get this behavior.
This isn't a feature request for something complex. It's a single checkbox: "Close button exits Steam." Default it to the current behavior if you must, just give those of us who don't want a background process the choice. Respecting the user means respecting the close button.
There have been similar reports (#11 and #270) but they have been closed because they were talking about adding a system tray icon which already exists. So to everyone who is reading this without a tray icon don't comment as it will get closed for the same reason.
Currently, when pressing the close or minimize buttons in the main steam window it causes steam to minimize. It would be nice if the minimize button retained it's current behavior while the close button closed the main window but kept it running in the tray.
Currently the only way to have steam running in the tray is by launching it as
steam --applaunch $idbecause the window is never opened. Of course, once you open the window you have no way to close it.I understand if this is a low priority enhancement request because it does not affect Unity but it would be a nice feature to eventually have implemented for traditional desktops. It is really annoying to have the steam window taking up space in my panel when I am not actively using it and am just keeping it open to receive notifications.