xmonad-contrib-0.18.0: Community-maintained extensions for xmonad
Copyright(c) 2010 Audun Skaugen
LicenseBSD-style (see xmonad/LICENSE)
Maintaineraudunskaugen@gmail.com
Stabilityunstable
Portabilityunportable
Safe HaskellNone
LanguageHaskell2010

XMonad.Layout.Fullscreen

Description

Hooks for sending messages about fullscreen windows to layouts, and a few example layout modifier that implement fullscreen windows.

Synopsis

Usage:

Provides a ManageHook and an EventHook that sends layout messages with information about fullscreening windows. This allows layouts to make their own decisions about what they should to with a window that requests fullscreen.

The module also includes a few layout modifiers as an illustration of how such layouts should behave.

To use this module, add fullscreenEventHook and fullscreenManageHook to your config, i.e.

xmonad def { handleEventHook = fullscreenEventHook,
             manageHook = fullscreenManageHook,
             layoutHook = myLayouts }

Now you can use layouts that respect fullscreen, for example the provided fullscreenFull:

myLayouts = fullscreenFull someLayout

fullscreenSupport :: forall (l :: Type -> Type). LayoutClass l Window => XConfig l -> XConfig (ModifiedLayout FullscreenFull l) Source #

Modifies your config to apply basic fullscreen support -- fullscreen windows when they request it. Example usage:

main = xmonad
     $ fullscreenSupport
     $ def { ... }

fullscreenSupportBorder :: forall (l :: Type -> Type). LayoutClass l Window => XConfig l -> XConfig (ModifiedLayout FullscreenFull (ModifiedLayout SmartBorder (ModifiedLayout FullscreenFull l))) Source #

fullscreenSupport with smartBorders support so the border doesn't show when the window is fullscreen

main = xmonad
     $ fullscreenSupportBorder
     $ def { ... }

fullscreenFull :: LayoutClass l a => l a -> ModifiedLayout FullscreenFull l a Source #

Layout modifier that makes fullscreened window fill the entire screen.

fullscreenFocus :: LayoutClass l a => l a -> ModifiedLayout FullscreenFocus l a Source #

Layout modifier that makes the fullscreened window fill the entire screen only if it is currently focused.

fullscreenFullRect :: LayoutClass l a => RationalRect -> l a -> ModifiedLayout FullscreenFull l a Source #

As above, but the fullscreened window will fill the specified rectangle instead of the entire screen.

fullscreenFocusRect :: LayoutClass l a => RationalRect -> l a -> ModifiedLayout FullscreenFocus l a Source #

As above, but the fullscreened window will fill the specified rectangle instead of the entire screen.

fullscreenFloat :: LayoutClass l a => l a -> ModifiedLayout FullscreenFloat l a Source #

Hackish layout modifier that makes floating fullscreened windows fill the entire screen.

fullscreenFloatRect :: LayoutClass l a => RationalRect -> l a -> ModifiedLayout FullscreenFloat l a Source #

As above, but the fullscreened window will fill the specified rectangle instead of the entire screen.

fullscreenEventHook :: Event -> X All Source #

The event hook required for the layout modifiers to work

fullscreenManageHook :: ManageHook Source #

Manage hook that sets the fullscreen property for windows that are initially fullscreen

fullscreenManageHookWith :: Query Bool -> ManageHook Source #

A version of fullscreenManageHook that lets you specify your own query to decide whether a window should be fullscreen.

data FullscreenMessage Source #

Messages that control the fullscreen state of the window. AddFullscreen and RemoveFullscreen are sent to all layouts when a window wants or no longer wants to be fullscreen. FullscreenChanged is sent to the current layout after one of the above have been sent.

Instances

Instances details
Message FullscreenMessage Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

Types for reference

data FullscreenFloat a Source #

Instances

Instances details
LayoutModifier FullscreenFloat Window Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

(Ord a, Read a) => Read (FullscreenFloat a) Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

Show a => Show (FullscreenFloat a) Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

data FullscreenFocus a Source #

Instances

Instances details
LayoutModifier FullscreenFocus Window Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

Read a => Read (FullscreenFocus a) Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

Show a => Show (FullscreenFocus a) Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

data FullscreenFull a Source #

Instances

Instances details
LayoutModifier FullscreenFull Window Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

Read a => Read (FullscreenFull a) Source # 
Instance details

Defined in XMonad.Layout.Fullscreen

Show a => Show (FullscreenFull a) Source # 
Instance details

Defined in XMonad.Layout.Fullscreen