Default Floating Window Criteria (rdesktop)

I'm trying to figure out why XMonad isn't tiling rdesktop by default (and hopefully change it). Whenever I launch rdesktop, the window gets floated. I'm using the default manageHook which, looking at the source, looks like it should only float two programs by default (MPlayer, and mplayer2). The command I'm using to launch rdesktop is 'rdesktop -K -a 32 -x lan -g 1920x1080 $host$'. My xmonad.hs is posted on github if anyone wants to look at it (https://github.com/uxcn/dot-files/blob/master/.xmonad/xmonad.hs). I'm currently using version 0.12. Any help is much appreciated. Thanks in advance. -Jason

On Sat, Mar 5, 2016 at 8:12 PM, Jason Schulz
I'm trying to figure out why XMonad isn't tiling rdesktop by default (and hopefully change it). Whenever I launch rdesktop, the window gets floated. I'm
There is also a built-in criterion: if a window declares its default size, minimum size, and maximum size the same (see WM_NORMAL_HINTS in xprop) then xmonad floats it because it cannot satisfy a fixed window size with a tile whose size depends on the tiling algorithm as modified by tabs, struts, etc. You should be able to override this in the manageHook. If rdesktop is applying the -geometry option to all three of those sizes then rdesktop would need to be modified to do something more sensible (but note that it may be doing that to work around other window managers' behavior!). -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net

There is also a built-in criterion: if a window declares its default size, minimum size, and maximum size the same (see WM_NORMAL_HINTS in xprop) then xmonad floats it because it cannot satisfy a fixed window size with a tile whose size depends on the tiling algorithm as modified by tabs, struts, etc.
Thanks Brandon. I thought that might be what's happening. I checked with xprop and rdesktop does set WM_NORMAL_HINTS. Is there a simple way to sink a window through manageHook? XMonad.ManageHook has a doFloat, but no corresponding doSink. -Jason

On Sun, Mar 6, 2016 at 4:05 PM, Jason Schulz
Is there a simple way to sink a window through manageHook? XMonad.ManageHook has a doFloat, but no corresponding doSink.
import qualified XMonad.StackSet as W then in the manageHook you can use doF W.sink (Things like doFloat are just convenience wrappers for this mechanism; doFloat is doF W.float.) -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net

Thanks again. For posterity, here's what I added to my config. doSink :: ManageHook doSink = ask >>= doF . sink -Jason
participants (2)
-
Brandon Allbery
-
Jason Schulz