Xfce Forum

Sub domains
 

You are not logged in.

#1 2016-12-03 20:32:50

jrv
Member
Registered: 2015-01-05
Posts: 12

[SOLVED] Launch application without a task list button?

When one starts a new application in xfce, a corresponding button appears in the task list (I believe this is the right name for the area) in the panel. I have one application (wmmoonclock) which I start at startup (menu, settings, session and startup, application autostart, <newly added entry>). I would like for it to start without a button in the task list because I don't ever want to shut it down or minimize it, and having a button is distracting. Is that possible? Thanks for any help.

JR

Last edited by jrv (2016-12-04 02:20:21)

Offline

#2 2016-12-04 00:16:51

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,950

Re: [SOLVED] Launch application without a task list button?

You need to use a utility that allows you to set the skip_taskbar/skip_tasklist property of the window. You can do this manually using wmctrl, for example:

wmctrl -r :SELECT: -b toggle,skip_taskbar

...and click on the application that you want hidden, or use devilspie to automate it using a .ds file like:

(if (is (application_name) "Mousepad")
	(skip_tasklist))

...(which hides mousepad from the tasklist).

To get wmmoonclock's info, run:

devilspie -d

...and start the app. Into about it will display on the terminal window.


Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#3 2016-12-04 02:05:25

jrv
Member
Registered: 2015-01-05
Posts: 12

Re: [SOLVED] Launch application without a task list button?

Thanks. That got me going in the right direction.

For anyone interested it took me a while to get everything working. First neither wmctrl nor devilspie is installed by default on debian testing (my distro). From what I understand from above I could not automate wmctrl so I decided to concentrate on devilspie. It turns out that there is a devilspie & a devilspie2. Obviously devilspie2 is better because it has a "2" at the end (devilspie is also no longer being maintained https://wiki.gnome.org/action/show/Proj … DevilsPie). Unfortunately devilspie2 uses lua scripting, which means the above script won't work as written. The script should reside in ~/.config/devilspie2. This is my final script hide_wmmoonclock.lua, including some debugging code:

debug_print("Window Name: " .. get_window_name());
debug_print("Application name: " .. get_application_name())

if get_application_name() == "/usr/bin/wmmoonclock" then
    set_skip_tasklist(true)
end

One gotcha was that the application name needed to include the full path (or I needed to search for substrings using lua, and I didn't want to learn any more lua than necessary), which is why I had to debug_print the information. I wasn't getting a match on the application name until I used the full path.

I put both devilspie2 and wmmoonclock in the autostart. One thing that is of some concern is the start order of the programs in autostart. If devilspie2 starts after wmmoonclock, it won't retroactively remove the task list button. I believe the programs are started alphabetically. In this case that works out ok, but in other cases it might not. One way to dodge this is to create an autostart entry with a "low" name, e.g. 00_devilspie2. There are other ways to assure start order (e.g. https://forum.xfce.org/viewtopic.php?id=2733) but what I did is good enough.

Anyway, it seems to be working now. I was expecting to be told I couldn't have what I wanted. Thanks for the help.

JR

Last edited by jrv (2016-12-04 02:07:08)

Offline

Board footer

Powered by FluxBB