I would like to make an addition to my previous proposal.

With the above patch applied, the only annoying behaviour left under
WindowMaker is the presence of the (albeit off-screen) dock window.
That window shows up in the list while tabbing between windows on a
workspace, for example.
Attached is a patch which tries to circumvent this.

QT only updates a window if it is not hidden. After showing the dock
window in the ordinary fashion, it is now immediately withdrawn with
the Xlib-native XWithdrawWindow(). This tricks QT into thinking that
the window is still shown, while at the same hiding it from the
window manager.
diff -u plugins/qt-gui/src/wharf.cpp plugins/qt-gui/src/wharf.cpp
--- plugins/qt-gui/src/wharf.cpp        2 Apr 2006 13:23:04 -0000
+++ plugins/qt-gui/src/wharf.cpp        3 Apr 2006 07:31:04 -0000
@@ -115,6 +115,9 @@
   setMask(*wharfIcon->vis->mask());
   move(-100,-100);
   show();
+#ifndef USE_KDE
+  XWithdrawWindow(dsp, win, 
XScreenNumberOfScreen(DefaultScreenOfDisplay(dsp)));
+#endif
 }
 
 

Reply via email to