Better living through software

Ben Hutchings's diary of life and technology

Email: ben@decadent.org.uk • Twitter: @benhutchingsuk • Debian: benh • Gitweb: git.decadent.org.uk • Github: github.com/bwhacks

Wed, 04 Jul 2007

How to use a "system tray" in Ion3

Ion3 supports docked applications and is compatible with the docking protocols used by WindowMaker and KDE. Normally you would use:

dopath("mod_dock")

to load mod_dock, which provides a standard corner dock, toggled using MOD1+D.

However, recent versions also support docking applications in the status bar, in "system tray" style:

-- In cfg_ion.lua:
defwinprop {
   class = "foo-window-class",
   statusbar = "foo"
}

-- In cfg_statusbar.lua:
mod_statusbar.create {
   ...
   template="... %systray_foo"
}

GNOME unfortunately uses a different dock protocol. However, the docker program can adapt from this to the WindowMaker protocol. So you can include a GNOME system tray in your status bar by including docker in your X session and this in your Ion3 configuration:

-- In cfg_ion.lua:
defwinprop {
   class = "Docker",
   statusbar = "dock"
}

-- In cfg_statusbar.lua:
mod_statusbar.create {
   ...
   template="... %systray_dock"
}

posted at: 23:39 | path: / | permanent link to this entry