It would be nice to have two (three, four, five...?) instances of tray plugin. Why? I would like to have one tray instance per every panel and one panel per every monitor when I use xinerama.
Not possible. The system tray has to register with X to handle tray events and only one application can handle this at a time.
Isn't that possible to draw two "trays" using same application or split tray plugin to tray event handler that acts as "proxy" and "clients" that operate on tray events through "proxy" ?
That will make the plugin very complicated and buggy. Tray 'icons' are actually remote windows embedded in the systemtray. So to allow multiple trays, we should make screenshots of the remote window, send that to the 2nd systemtray and pass events back from the 2nd tray to the embedded window. This will be very resource consuming since the shots should be made at an interval of 1 second (for example), because we can't monitor the remote window for changes. The event part will also be hackish...
Resource consumption may be decreased using something like XDamage, but I agree that plugin will become much more complicated.