Re: Does MWM_DECOR_BORDER really cause window to have caption?
"Kirill K. Smirnov" <lich(a)math.spbu.ru> wrote:
I'm trying to get winamp playlist window to be painted correctly (bug #8300). The problem is: 0) wine version is git-current. 1) winamp playlist window style is WS_CLIPSIBLINGS 2) winex11 driver converts it to MWM_DECOR_BORDER hint. (window.c:599) 3) This hint behaviour is WM-dependent: a) KDE - caption is painted; b) XFCE - ditto; c) fluxbox - correct (no caption).
This situation confuses a little. I believe DECOR_BORDER does not add a caption to window, but it does under great WM such as KDE. Is this behaviour correct? If KDE/XFCE is a culprit, should we add a workaround into wine?
There is a distinct MWM hint to add a caption to a window: MWM_DECOR_TITLE. If this is proved to be a KDE/XFCE bug it should be reported to an appropriate bug tracking system.
It's better to write pure X11 app to demonstate it, but I am not familiar with it :-( Anyway, what is the purpose of setting MWM_DECOR_BORDER to borderless window (style is WS_CLIPSIBLINGS only)? KDE, XFCE, fluxbox work OK without it. -- Kirill
"Kirill K. Smirnov" <lich(a)math.spbu.ru> wrote:
There is a distinct MWM hint to add a caption to a window: MWM_DECOR_TITLE. If this is proved to be a KDE/XFCE bug it should be reported to an appropriate bug tracking system.
It's better to write pure X11 app to demonstate it, but I am not familiar with it :-(
You can always take a simple X11 application as a base (I usually take xev.c from X11 sources :-) ) and add the code from winex11.drv.
Anyway, what is the purpose of setting MWM_DECOR_BORDER to borderless window (style is WS_CLIPSIBLINGS only)? KDE, XFCE, fluxbox work OK without it.
If you mean the following line in dlls/winex11.drv/window.c,X11DRV_set_wm_hints() else if (!(style & (WS_CHILD|WS_POPUP))) mwm_hints.decorations |= MWM_DECOR_BORDER; then you can always send a patch with an explanation why it's needed. -- Dmitry.
participants (2)
-
Dmitry Timoshkov -
Kirill K. Smirnov