Xpra: Ticket #77: missing tray icons - forward notification area
XPRA does not display the tray icons of attached applications such as xchat.
Tue, 07 Feb 2012 12:26:36 GMT - Antoine Martin: owner, status, milestone changed
changed from Antoine Martin to Antoine Martin
changed from new to accepted
changed from current to future
and it may never do
Tue, 07 Feb 2012 12:37:28 GMT - Antoine Martin:
This is a very difficult problem to solve - I am not even sure it can be solved:
- there are at least two main implementations of "tray icons" on *nix: gtk's "
StatusIcon" and Ubuntu's "
appindicator" (see #43 for an example of how much of a mess it is to try to support them all)
- none of these support overriding at present (and afaik none use dbus..), so the code would have duplicated in each case
Fri, 10 Feb 2012 08:29:52 GMT - Antoine Martin:
Looks like I was wrong about them not using dbus, so we may be able to do something after all (as was done for #22), some more pointers:
Wed, 16 May 2012 13:59:17 GMT - Antoine Martin:
Or even by implementing the raw X11 specification: XEmbed).
Fri, 13 Jul 2012 12:47:29 GMT - Antoine Martin: type, summary changed
changed from defect to enhancement
changed from Missing Tray Icons to missing tray icons - forward notification area
Thu, 08 Nov 2012 06:44:59 GMT - Antoine Martin:
comment:3 is wrong about being wrong about dbus (..): the spec does not use dbus, and most apps will not use a dbus interface either, so we must implement the docking tray icon spec directly.
Found pypanel which may serve as a good base for implementing our own tray icon forwarding code.
Thu, 08 Nov 2012 15:20:18 GMT - Antoine Martin: attachment set
set to tray-area.patch
adds a hardcoded area for tray icons to dock into - ugly hack for now
Thu, 08 Nov 2012 17:41:48 GMT - Antoine Martin: attachment set
set to tray-area-v2.patch
much more complete implementation
Fri, 09 Nov 2012 17:16:50 GMT - Antoine Martin: attachment set
set to tray-area-v3.patch
we can almost click on the forwarded icon too
Sat, 10 Nov 2012 13:01:13 GMT - Antoine Martin: attachment set
set to tray-area-v4.patch
updated patch for r2088
Sun, 11 Nov 2012 10:49:03 GMT - Antoine Martin: attachment set
set to tray-area-v5.patch
updated patch with cleanups
Sun, 11 Nov 2012 12:53:15 GMT - Antoine Martin: attachment set
set to tray-area-v6.patch
work on transparency
Sun, 11 Nov 2012 18:17:12 GMT - Antoine Martin:
- r2094 adds the server-side part
- r2097 adds the client-side part
It is mostly working as it is, but with some limitations we should address:
- missing transparency: we set
_NET_SYSTEM_TRAY_VISUAL to the 32-bit visual - but somehow the docking requests we receive are for 24-bit visual windows, not sure why.
- popup-menu so we end up simulating a button press and release on the remote tray area. By implementing the system tray using raw X11 calls we ought to be able to get more useful events to forward, the win32 implementation can probably supply the same too in
OnTaskbarNotify. We can then use the
StatusIcon version as fallback for platforms without native support (ie: osx or pure-python builds).
- we should avoid the round-trip via a pixmap backing to get the pixbuf
- detect when we lose the tray selection and cleanup
- support balloon messages
Sun, 11 Nov 2012 18:24:08 GMT - Antoine Martin: attachment set
set to window-backing-depth.patch
adds the ability to handle 32-bit window backing
Sun, 24 Feb 2013 15:30:10 GMT - Antoine Martin:
We probably also need to split this code into a separate executable so that we can exit/upgrade xpra without losing the trays.
Tue, 05 Mar 2013 10:01:02 GMT - Antoine Martin:
For transparency, see #279
Tue, 21 May 2013 09:11:04 GMT - Antoine Martin:
transparency fixed in r3475 for *nix
Tue, 16 Jul 2013 06:03:37 GMT - Antoine Martin: status changed
changed from accepted to new
Works well enough.
Tue, 16 Jul 2013 06:03:49 GMT - Antoine Martin: status changed; resolution set
changed from new to closed
set to fixed
Thu, 31 Oct 2013 12:28:12 GMT - Antoine Martin:
win32 native code in use as of r4640 - which allows us to do things other implementations cannot do: hovering events, etc
Mon, 19 May 2014 12:37:04 GMT - Antoine Martin: milestone changed; version deleted
changed from future to 0.8
(setting correct milestone the work was completed in)
Sat, 23 Jan 2021 04:44:53 GMT - migration script:
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/77