We support EWMH's method for setting a window icon (_NET_WM_ICON containing
ARGB data), but at the moment ignore the classic ICCCM methods -- see
section 4.1.9. There are three parts to this:
* set WM_ICON_SIZE on the root window to a list of allowable icon sizes
* the client might set the icon_pixmap (and optionally icon_mask) in
WM_HINTS to an X pixmap (or two)
* the client might set the icon_window field of WM_HINTS to an X pixmap
(or two)
These are mostly annoying because client-allocated pixmaps and windows
might disappear at any time, so we have to handle them with kid gloves.
(For the window case the best thing to do would probably even be to use
compositing -- NameWindowPixmap? or the wrapper window trick. Pixmaps are
easier, because the client cannot expect us to notice when they change,
ergo they must be static, ergo we can just copy the suckers out into our
own (ARGB!) pixmap, thanks.)
Waiting for someone to find an app they care about where this actually
matters...
Original issue reported on code.google.com by njsmith@ucsd.edu on 7 Nov 2009 at 5:09
Original issue reported on code.google.com by
njsmith@ucsd.edu
on 7 Nov 2009 at 5:09