On Sep 12, 2009, at 13:03, Eeri Kask wrote:
Oh thanks for the offer... if you spot any bugs please let me know! :-) (To be serious, I would be glad to exactly understand these inner_? and outer_? parameters; as well as the AppleWMFrameClass??? intended purpose, at least to confirm this parameter is irrelevant to that small program.)
The inner/outer is really simple once you understand how X11 builds its windows. It took me a while to get to that point, though... so hopefully I can spare you the trouble. Basically, X11 windows with the borders on them are hierarchical. You have one window (outer) which has some pretty widgets, title bar, etc (what the window manager says to draw). This window has a subwindow (inner) which contains all the contents (what the app itself says to draw). As for all the classes, those just correspond to the XP_FRAME_CLASS variables in /usr/include/Xplugin.h. libXplugin uses those to determine how to draw the window, how to tag it with metadata, etc. It looks to me like XP_FRAME_CLASS_SPLASH XP_FRAME_CLASS_BORDERLESS are identical as far as Xplugin is concerned... the distinction is just in quartz-wm... similarly XP_FRAME_CLASS_UTILITY XP_FRAME_CLASS_TOOLBAR XP_FRAME_CLASS_MENU seem to be identical as well. The difference between those is all in the frame size (none, small, large).