xmonad: Manage fullscreen games correctly
This commit is contained in:
parent
f414e47b26
commit
8bbebbac64
1 changed files with 12 additions and 5 deletions
|
|
@ -3,11 +3,14 @@ import XMonad.Actions.CycleWS qualified as WS
|
|||
import XMonad.Actions.Navigation2D (navigation2DP, windowGo, windowSwap)
|
||||
import XMonad.Hooks.EwmhDesktops
|
||||
import XMonad.Hooks.ManageDocks qualified as Docks
|
||||
import XMonad.Hooks.ManageHelpers (doFullFloat, isDialog, isFullscreen)
|
||||
import XMonad.Hooks.SetWMName
|
||||
import XMonad.Layout.BinarySpacePartition
|
||||
import XMonad.Layout.BorderResize (borderResize)
|
||||
import XMonad.Layout.NoBorders (smartBorders)
|
||||
import XMonad.Layout.ThreeColumns
|
||||
import XMonad.Layout.ToggleLayouts (ToggleLayout (..), toggleLayouts)
|
||||
import XMonad.ManageHook (doFloat)
|
||||
import XMonad.Util.EZConfig qualified as EZ
|
||||
import XMonad.Util.Ungrab (unGrab)
|
||||
|
||||
|
|
@ -31,9 +34,7 @@ compileRestart resume = do
|
|||
executeFile (cacheDir dirs </> compiledConfig) False args Nothing
|
||||
)
|
||||
|
||||
myLayout = borderResize $ Docks.avoidStruts layout
|
||||
where
|
||||
layout = emptyBSP ||| Full
|
||||
myLayout = smartBorders . borderResize . Docks.avoidStruts $ toggleLayouts emptyBSP Full
|
||||
|
||||
main :: IO ()
|
||||
main = getDirectories >>= launch myConfig
|
||||
|
|
@ -60,16 +61,22 @@ changeVolume :: VolumeCommand -> X ()
|
|||
changeVolume = spawn . interpretVolumeCommand
|
||||
|
||||
myConfig =
|
||||
Docks.docks
|
||||
ewmhFullscreen
|
||||
. ewmh
|
||||
. ewmhFullscreen
|
||||
. Docks.docks
|
||||
. nav
|
||||
$ def
|
||||
{ modMask = mod4Mask -- Use Super instead of Alt
|
||||
, terminal = "alacritty"
|
||||
, layoutHook = myLayout
|
||||
, handleEventHook = handleEventHook def <+> fullscreenEventHook
|
||||
, -- this seems to be necessary to make java gui applications work :(
|
||||
startupHook = ewmhDesktopsStartup >> setWMName "LG3D"
|
||||
, manageHook =
|
||||
mconcat
|
||||
[ isDialog --> doFloat
|
||||
, isFullscreen --> doFullFloat
|
||||
]
|
||||
}
|
||||
`EZ.additionalKeysP` [ ("M-S-z", spawn "xscreensaver-command -lock")
|
||||
, ("M-S-r", compileRestart True)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue