[xmonad] insertPosition and floating windows

Brandon Allbery allbery.b at gmail.com
Wed Mar 19 23:28:48 UTC 2014


On Wed, Mar 19, 2014 at 6:29 PM, Eyal Erez <oneself at gmail.com> wrote:

> I would like to have new windows leave the current window in place.  I can
> achieve this with:
>
> manageHook = insertPosition Below Newer <+> composeAll myManageHook
>
> However, this causes some floating windows (e.g. vlc open file dialog) to
> flicker like crazy.  I found the following post which claims this is an
> issue with composeAll, but I am a Haskell newb and don't know enough to
> figure out what this means.
>
> https://bbs.archlinux.org/viewtopic.php?id=94060
>

That is in fact a different issue, although it might still be helpful in
working around it by making those windows not get inserted below others.
The "flickering" is probably that vlc expects the window to be on top and
focused, and withdraws and recreates it if it isn't; you could probably use
something like xscope / xmon / xtrace (seems like every Linux distribution
has only one of the three, and probably there are others out there that
something has decided is the right one to the exclusion of the others...)
to verify, if you're somewhat familiar with the X11 wire protocol.

ComposeOne is from
http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Hooks-ManageHelpers.html#v:composeOneand
allows you to specify that only one hook out of a group should run; so
you can match the vlc dialog (use xprop to determine how to recognize it)
and handle it normally to avoid vlc's misbehavior, and push other windows
down.

-- 
brandon s allbery kf8nh                               sine nomine associates
allbery.b at gmail.com                                  ballbery at sinenomine.net
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/xmonad/attachments/20140319/23b8ade7/attachment.html>


More information about the xmonad mailing list