[xmonad] exiting: asking for confirmation (or a four-key combination)

wagnerdm at seas.upenn.edu wagnerdm at seas.upenn.edu
Sun Nov 13 23:33:17 CET 2011

Quoting wagnerdm at seas.upenn.edu:

> Quoting Brandon Allbery <allbery.b at gmail.com>:
>> Meh, right problem, wrong specifics.  xmonad's main loop isn't running, so
>> the problem manifests when another program opens a non-override_redirect
>> window.
>> - the program may block waiting on xmonad to respond to ConfigureRequest-s,
>> while xmonad is blocked on its output;
>> - a badly behaved program may map its window anyway, and you won't be able
>> to do anything about it if it pops over the dmenu.
>> (I am a little surprised *dmenu* doesn't trigger #1, which makes me think
>> it's either using override_redirect or it's case #2.)

After talking to Brandon on IRC, I can now summarize what this means  
for you if you use the code I suggested (which spawns dmenu): xmonad  
will not respond to X events until you respond to the dmenu prompt one  
way or another. In particular, this means:

1. You can't change workspace, modify the input focus with the mouse, etc.
2. If a program tries to open a new window while the prompt is still  
up, the appearance and handling of that new window will be delayed  
(but, again, only until the dmenu prompt is dismissed).
3. The failure mode described in the putSelection bug (where xmonad  
hard locks and must be killed outright) will *not* happen.

I will update the XMonad.Util.Dmenu documentation shortly to reflect this.


More information about the xmonad mailing list