[xmonad] doFullFloat keybinding?

1126 mailinglists at elfsechsundzwanzig.de
Tue Jul 10 11:27:47 CEST 2012


On Tue, 10. Jul 05:00, wagnerdm at seas.upenn.edu wrote:
> Quoting 1126 <mailinglists at elfsechsundzwanzig.de>:
> 
> >Hello List!
> >
> >I have a WS devoted to reading PDFs and alike and in my manageHook
> >config stands
> >the following:
> >
> >               , className =? "Evince" --> doFullFloat
> >
> >This is, because I like my two xmobars (top and bottom) to disappear, when
> >reading a paper such things. But: When evince is FullFloating I got problems
> >when opening more than one instance of it, like a second paper. It
> >just lets the
> >first one disappear under the freshly opened one.
> 
> Probably the cleanest fix is to let that workspace run a
> non-avoidStruts layout, since avoidStruts is the thing making your
> windows avoid covering xmobar. (And then completely delete the hook
> that floats evince windows.) For example, a smallish starting config
> might look something like this:
> 
>     main = xmonad defaultConfig { layoutHook = avoidStruts (Full |||
> Tall 1 0.5 0.03) }
> 
> If you wanted to throw on another layout like Tall that covered up
> xmobar's, you'd do something like this:
> 
>     main = xmonad defaultConfig { layoutHook = avoidStruts (Full |||
> Tall 1 0.5 0.03) ||| Tall 1 0.5 0.03 }
> 
> Because of the parentheses, avoidStruts only applies to the first
> two layouts. Then, I'd switch my "PDF" workspace to the third layout
> by whacking mod+space a few times. (This can be automated, too, with
> a bit of effort. See PerWorkspaceLayouts in the xmonad-contrib
> documentation.)
> 
> Good luck,
> ~d

Well, thank you. I already got an (more or less) complex perWorkspace layout and 
I'm not entirely sure how to add a non-avoidStruts layout for the workspace for 
evince (this would be (workspace !! 5) in my case). Here's what I have now:

myLayoutHook = avoidStruts . smartBorders
             . onWorkspace (myWorkspaces !! 0) (tiled ||| simpleTabbed ||| Full)
             . onWorkspace (myWorkspaces !! 2) (tiled ||| Full ||| simpleTabbed)
             . onWorkspace (myWorkspaces !! 3) (tiled2 ||| simpleTabbed ||| Full)
             . onWorkspace (myWorkspaces !! 8) (tiled3 ||| Full ||| simpleTabbed)
             $ (Full ||| simpleTabbed ||| Grid)
    where
      tiled = ResizableTall 1 (5/100) (40/100) []
      tiled2 = Mirror (Tall 1 (5/100) (30/100))
      tiled3 = withIM (11/64) (Role "gimp-toolbox") $ ResizableTall 2 (1/118) (11/20) [1] ||| Full


The weird thing is, the workspace VLC has no problem with the fullscreen-mode. 
When I hit F11 in VLC it fills up the fullscreen, just like Evince should. And 
it resides on an avoidStruts workspace, too. 

I hope you can give me a hint :)

Thank you very much in advance!


> 
> _______________________________________________
> xmonad mailing list
> xmonad at haskell.org
> http://www.haskell.org/mailman/listinfo/xmonad



More information about the xmonad mailing list