Default Floating Window Criteria (rdesktop)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Default Floating Window Criteria (rdesktop)

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
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
_______________________________________________
xmonad mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad
Reply | Threaded
Open this post in threaded view
|

Re: Default Floating Window Criteria (rdesktop)

Brandon Allbery
On Sat, Mar 5, 2016 at 8:12 PM, Jason Schulz <[hidden email]> wrote:
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
[hidden email]                                  [hidden email]
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net

_______________________________________________
xmonad mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad
Reply | Threaded
Open this post in threaded view
|

Re: Default Floating Window Criteria (rdesktop)

Jason Schulz
> 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
_______________________________________________
xmonad mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad
Reply | Threaded
Open this post in threaded view
|

Re: Default Floating Window Criteria (rdesktop)

Brandon Allbery
On Sun, Mar 6, 2016 at 4:05 PM, Jason Schulz <[hidden email]> wrote:
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
[hidden email]                                  [hidden email]
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net

_______________________________________________
xmonad mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad
Reply | Threaded
Open this post in threaded view
|

Re: Default Floating Window Criteria (rdesktop)

Jason Schulz
Thanks again.

For posterity, here's what I added to my config.

doSink :: ManageHook
doSink = ask >>= doF . sink

-Jason
_______________________________________________
xmonad mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad