just wanted to share this with the community, since it bothered me for
quite a while and took another while to figure it out. I always wanted my
licq floaties to stay on top, actually it was very inconvinient for me
without that ability. It turns out that with Qt2 (not sure about 3)
WStyle_NoBorder for floaty widget makes qt ask window manager to not
manage that window. And I guess most (if not all) wouldn't. It means that
the window doesn't have any decorations (good), is sticky (good), does not
stay on top (bad), since it is window manager's work.
There is also WStyle_NoBorderEx that makes widget managable by window
manager, but asks it  (through MWM hints) to not decorate it. Some window
managers do not properly handle it (most do), but user always has an
option of setting desired window properties by means of window manager. I
use afterstep-1.0 and I had to create Style line in .steprc asking for
NoHandles, NoTitle, StaysOnTop, WindowSkipList, NoFocus. I think the
latter three always have to be set explicitely.
The place in code I changed is this:

//-----UserList::constructor----------------------------------------------------
-------------------
CUserView::CUserView(QPopupMenu *m, QWidget *parent, const char *name)
#if QT_VERSION >= 220
  : QListView(parent, name, parent == NULL ? WStyle_Customize |
WStyle_NoBorder
| WRepaintNoErase /*| WStyle_StaysOnTop*/
              : WRepaintNoErase),


in file userbox.cpp.

I'm not sure if this is worth asking to be included into the offcial licq
source, since it would make lazy user have to change floaty window style,
but it can be very useful for people dying to put floaties on top.

-- 
Andriy Gapon



_______________________________________________
Licq-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/licq-devel

Reply via email to