Output of awesome --version:
awesome v4.2 (Human after all)
• Compiled against Lua 5.3.5 (running with Lua 5.3)
• D-Bus support: ✔
• execinfo support: ✔
• xcb-randr version: 1.6
• LGI version: 0.9.2
How to reproduce the issue:
awesome-client 'awful=require("awful"); awful.util.spawn(terminal.." -e sleep 10", { minimized=true, hidden=true })'
Actual result:
A terminal that runs sleep spawns that is not minimized nor hidden.
Expected result:
The terminal window should be minimized and hidden from task bar.
Tried updating to git version of awesome as mentioned in #1937 . Didn't work.
awesome v4.2-525-g7d097691 (Human after all)
• Compiled against Lua 5.3.5 (running with Lua 5.3)
• D-Bus support: ✔
• execinfo support: ✔
• xcb-randr version: 1.6
• LGI version: 0.9.2
Which terminal are you using? Does it support startup-notification (e.g. does it depend on libstartup-notification?) E.g., xterm does not support startup-notification and thus awesome can by default not figure out which new window belongs to which command that was started.
I'm using lxterminal.
Per https://github.com/awesomeWM/awesome/issues/2491#issuecomment-449576509, that does not support startup-notification.
(Some more detail on what SN is: When awesome starts something, it sets some environment variable. The value of that variable is saved as a property on the window that shows up. That way awesome can now where the new window belongs to, even when multiple new windows show up at the same time.)
Hmm. What terminal should I switch to to get support for that?
Ah, nvm. Seems that xfce4-terminal works through the notification test.
Confirmed that xfce4-terminal works for this purpose. Thanks!
Is there a work around for this? I am switching from urxvt to st (Simple Terminal). However a keybinding to launch a floating, centered terminal window does not work with st due to the reason mentioned here.
P.S. After applying the hack in https://awesomewm.org/doc/api/classes/client.html#client.startup_id, the following command still starts a tiling window:
awesome-client 'require("awful.spawn")("st", {floating = true})'
$ awesome -v
awesome v4.3 (Too long)
• Compiled against Lua 5.3.5 (running with Lua 5.3)
• D-Bus support: ✔
• execinfo support: ✔
• xcb-randr version: 1.6
• LGI version: 0.9.2
@OliverLew another workaround would be to run st as st -c st_float
and in awful.rules to make a rule for st_float class to be floating = true
@actionless it works perfectly. Haven't thought of this before. Thx!
Edit: not quite perfect actually. The downside is that the floating state will be persistent after awesome restart even if I have changed it to tiling (because the window class won't change accordingly). Can't think of a hack for this yet.
Most helpful comment
Created https://github.com/lxde/lxterminal/issues/62