Re: _NET_WM_WINDOW_TYPE_MENU



On Thursday 02 May 2002 23:39, Owen Taylor wrote:
> Sawfish and Metacity decorate windows with the _NET_WM_WINDOW_TYPE_MENU
> hint.
>
> kwin doesn't.
>
> Right now, I have a problem since GTK+-2.0 sets this hint on tearoff
> menus, which makes the tearoff menus unusuable under KDE.
>
> My opinion is that the decorations are correct since:
>
>  - Tearoff menus should have some sort of menu bar for moving around
>
>  - If this menu bar is to be consistent with with the window manager theme,
>    then it needs to be drawn by the window manager.
>
>    (GTK+-2.0 also allows it's tearoff menus to be resized vertically and
>    get a scrollbar.)
>
> Opinions? Is KDE using this hint for anything currently?

 I recently noticed this too, when I did some bugfixing of the mac style 
menubar, and I think KDE's handling of _NET_WM_WINDOW_TYPE* is ... well, at 
least not compliant with the spec.

 TYPE_MENU is used for the mac style menubar, not for tear-off menus, the 
tear-off menus (created by Qt) are normal TYPE_NORMAL windows (and spec says 
that TYPE_MENU is for tear-offs). The correct way would be to make KWin treat 
TYPE_MENU the same way as TYPE_NORMAL (i.e. tear-offs are not handled 
specially in KWin right now AFAIK), and I guess we need also 
TYPE_GLOBAL_MENUBAR for the mac style menubar (either in the spec or a KDE 
extension).

 The hard part is making Qt use TYPE_MENU and TYPE_TOOLBAR, as this will need 
some special handling, otherwise this would break with old KWin versions 
(most probably checking the value of the KWIN_RUNNING atom). And I'm afraid 
this means writing the patch and sending it to TT, and insisting on applying 
it(Qt doesn't try that hard to use the spec, it e.g. still doesn't set 
_NET_WM_PID :( - and actually I just noticed it doesn't even use TYPE_DIALOG, 
as there's a commented out code that says it should be uncommented after 
KDE2.1 is released).
 
 Maybe I'm just too blind, but where can one see the up to date version of the 
spec? I remember e.g. discussion about TYPE_FULLSCREEN (which KDE doesn't 
support either), but the version of the spec at www.freedesktop.org doesn't 
list it. It would be probably good to first find out all cases where KDE/Qt 
doesn't comply with the spec, or where the spec is too unclear and the 
implementations differ. Also, which WMs use the spec, only 
KWin,Sawfish,Metacity?
  
-- 
 Lubos Lunak
 llunak suse cz ; l lunak kde org
 http://dforce.sh.cvut.cz/~seli




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]