Warning, /plasma/plasma-workspace/xembed-sni-proxy/Readme.md is written in an unsupported language. File is not indexed.

0001 ##XEmbed SNI Proxy
0002 
0003 The goal of this project is to make xembed system trays available in Plasma.
0004 
0005 This is to allow legacy apps (xchat, pidgin, tuxguitar) etc. system trays[1] available in Plasma which only supports StatusNotifierItem [2].
0006 
0007 Ideally we also want this to work in an xwayland session, making X system tray icons available even when plasmashell only has a wayland connection.
0008 
0009 This project should be portable onto all other DEs that speak SNI.
0010 
0011 ##How it works (in theory)
0012 
0013 * We register a window as a system tray container
0014 * We render embedded windows composited offscreen
0015 * We render contents into an image and send this over DBus via the SNI protocol
0016 * XDamage events trigger a repaint
0017 * Activate and context menu events are replyed via X send event into the embedded container as left and right clicks
0018 
0019 There are a few extra hacks in the real code to deal with some toolkits being awkward.
0020 
0021 ##Build instructions
0022 
0023     cmake .
0024     make
0025     sudo make install
0026 
0027 After building, run `xembedsniproxy`.
0028 
0029 [1] http://standards.freedesktop.org/systemtray-spec/systemtray-spec-latest.html
0030 [2] http://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/