This would be a good resource if you wanted to get into the code: https://wiki.ubuntu.com/Unity/LauncherAPI
Quicklists
There are two kinds of Quicklists: the static ones which are always
shown once on right-click from the launcher entry and dynamic ones
which are only displayed once the application is started.
Static Quicklist entries
Adding a Static Quicklist entry is very easy, all you need is to add
some support to the desktop file. This is based on the desktop file
formats Action Groups.
Here is what needs to be added to gnome-screenshot to support
Quicklist
[…] Actions=Screen;Window;
[Desktop Action Screen] Name=Take a Screenshot of the Whole Screen
Exec=gnome-screenshot OnlyShowIn=Unity;
[Desktop Action Window] Name=Take a Screenshot of the Current Window
Exec=gnome-screenshot -w OnlyShowIn=Unity;
Actions is referencing a Desktop Action. Each Desktop Action
references an item entry in the Quicklist. Here, we have the "Screen"
and "Window" entries, corresponding to :
[Desktop Action entry]
Then, each group have:
a Name=, which is the entry as it's displayed which should be in title case.
an Exec= referring a command line to execute once clicked. Details on additional syntax.
OnlyShowIn=Unity is recommended to tell "show that entry in the Unity Springboard Quicklist" so that the file can be given upstream
without the possibility of showing up in other untested desktop
environments. Please let upstream projects decide if they want to have
this action shown more widely.
In the desktop spec there is a full desktop file sample with actions.
Here is an example of a patch for gnome-utils using the old X-Ayatana
style, but shows how to format the patch, with links to ubuntu bug and
forwarded upstream.