In the last times all my customizations to LXDE plugins (Keyboard Layout Handler and Application Launch Bar) were accepted and so are/will be in official lxpanel versions.In the last times I worked again on a new plugin that integrates together the Application Launch Bar and the Task Bar.
The Name of this new plugin is Application Launch and Task Bar.
Here’s the interaction that I added (visible in the screenshots below):

1) when right clicking on a task button you can see the new menu item “New Instance” if its desktop file is found in launcher or in the menu cache;

2) when right clicking on a task button you can see the new menu item”Add to Launcher”  if its desktop file is NOT found in launcher and is FOUND in the menu cache;

3) when right clicking on a task button you can see the new menu item”Remove from Launcher”  if its desktop file is FOUND in launcher;

4) when right clicking on a task button you will see NONE of the above if the funcion was not able to locate the desktop file at all.

The way that a desktop file is searched from a task button is simple and not perfect, in some cases it may fail and there’s a config key file to handle these special cases.

a) The desktop files have an Exec section, the  exec command is stripped from any argument and the location of the binary (e.g. /usr/bin) is also removed;

b) From the task buttons I retrieve the PID of the window and from the PID I retrieve the command, this command is also stripped from arguments and binary location;

c) the key file about special cases is created if not found in ~/.config/lxpanel/launchtaskbar.cfg and the content is at the moment:

[special_cases] synaptic=synaptic-pkexec

which means that for the task manager retrieved command in these 3 cases I search instead for the associated value

If you are on Lubuntu 12.04 or 13.04 you just download the debian package, otherwise download the source code archive and you need to compile it yourself (be careful, the --prefix depends from your distribution!):

terminal sudo apt-get build-dep lxpanel
terminal ./ --prefix=/usr
terminal ./configure --prefix=/usr --enable-man --enable-indicator-support
terminal make
terminal sudo make install

After the installation you call

terminal lxpanelctl restart

then add the applet ‘Application Launch and Task Bar’ to the panel and remove the ‘Application Launch Bar’ and the ‘Task Bar’.

NOTE1 about Keyboard Layout Handler: about the advanced setxkbmap options you can get a list of all options entering in a terminal man xkeyboard-config

NOTE2 about Keyboard Layout Handler: if you will create a folder in /usr/share/lxpanel/images/xkb-flags-cust (may vary according to the prefix) and put your custom country flags there, you will then have a third choice in “Show Layout as” named “Custom Image” (embedded flags are in /usr/share/lxpanel/images/xkb-flags).

download download
dev. versions plugins

launchtaskbar plugin

launchtaskbar plugin

launchtaskbar plugin

launchtaskbar plugin

launchtaskbar plugin

keyboard layouts handler

keyboard layouts handler

downloaddownload :

tar.xz archive source code : lxpanel-
deb package 64 bit debian/ubuntu package for 12.04 and 13.04: lxpanel_0.6.0.1-1~u1204_amd64.deb, lxpanel_0.6.0.1-1~u1304_amd64.deb
deb package 32 bit debian/ubuntu package for 12.04 and 13.04: lxpanel_0.6.0.1-1~u1204_i386.deb, lxpanel_0.6.0.1-1~u1304_i386.deb

plugins development versions :

the source code is hosted in the official lxde git repository on


2 thoughts to “customs”

  1. I have downloaded and began to use Cherrytree. 0.37.6-1.1
    Having made a few errors I deleted nodes affected and closed down.
    On reopening Cherrytree Low & Behold my deletions were still there.

    I uninstalled Cherrytree. Later I reinstalled from a fresh download. 0.30.8
    And to my surprise Low & Behold my old Cherrytree complete with delition was starring me in thw face.
    Not a very good introduction!

    What is wrong?

    Syd Martin

Leave a Reply

Your email address will not be published. Required fields are marked *


This site uses Akismet to reduce spam. Learn how your comment data is processed.