{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
{-# LANGUAGE MultiParamTypeClasses, Rank2Types #-}
module XMonad.Layout.Groups.Wmii (
wmii
, zoomGroupIn
, zoomGroupOut
, zoomGroupReset
, toggleGroupFull
, groupToNextLayout
, groupToFullLayout
, groupToTabbedLayout
, groupToVerticalLayout
, shrinkText
, def
, module XMonad.Layout.Groups.Helpers ) where
import XMonad
import qualified XMonad.Layout.Groups as G
import XMonad.Layout.Groups.Examples
import XMonad.Layout.Groups.Helpers
import XMonad.Layout.Tabbed
import XMonad.Layout.Renamed
import XMonad.Layout.MessageControl
import XMonad.Layout.Simplest
wmii :: p
-> Theme
-> Groups
(ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))))
(ZoomRow GroupEQ)
Window
wmii p
s Theme
t = forall (l :: * -> *) (l2 :: * -> *).
l Window -> l2 (Group l Window) -> Groups l l2 Window
G.group ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))))
Window
innerLayout forall a (l :: * -> *).
(Eq a, Show a, Read a, Show (l a), Read (l a)) =>
ZoomRow GroupEQ (Group l a)
zoomRowG
where column :: ModifiedLayout Rename Tall a
column = forall a (l :: * -> *).
[Rename a] -> l a -> ModifiedLayout Rename l a
renamed [forall a. String -> Rename a
Replace String
"Column"] forall a b. (a -> b) -> a -> b
$ forall a. Int -> Rational -> Rational -> Tall a
Tall Int
0 (Rational
3forall a. Fractional a => a -> a -> a
/Rational
100) (Rational
1forall a. Fractional a => a -> a -> a
/Rational
2)
tabs :: ModifiedLayout Rename Simplest a
tabs = forall a (l :: * -> *).
[Rename a] -> l a -> ModifiedLayout Rename l a
renamed [forall a. String -> Rename a
Replace String
"Tabs"] forall a. Simplest a
Simplest
innerLayout :: ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))))
Window
innerLayout = forall a (l :: * -> *).
[Rename a] -> l a -> ModifiedLayout Rename l a
renamed [forall a. Int -> Rename a
CutWordsLeft Int
3]
forall a b. (a -> b) -> a -> b
$ forall a (l :: * -> *) s.
(Eq a, LayoutClass l a, Shrinker s) =>
s
-> Theme
-> l a
-> ModifiedLayout (Decoration TabbedDecoration s) l a
addTabs p
s Theme
t
forall a b. (a -> b) -> a -> b
$ forall m (l :: * -> *) w.
(Message m, LayoutClass l w) =>
m -> l w -> Ignore m l w
ignore ChangeLayout
NextLayout
forall a b. (a -> b) -> a -> b
$ forall m (l :: * -> *) w.
(Message m, LayoutClass l w) =>
m -> l w -> Ignore m l w
ignore (String -> JumpToLayout
JumpToLayout String
"") forall a b. (a -> b) -> a -> b
$ forall (l :: * -> *) w.
LayoutClass l w =>
l w -> ModifiedLayout UnEscape l w
unEscape
forall a b. (a -> b) -> a -> b
$ forall {a}. ModifiedLayout Rename Tall a
column forall (l :: * -> *) a (r :: * -> *). l a -> r a -> Choose l r a
||| forall {a}. ModifiedLayout Rename Simplest a
tabs forall (l :: * -> *) a (r :: * -> *). l a -> r a -> Choose l r a
||| forall a. Full a
Full
zoomGroupIn :: X ()
zoomGroupIn :: X ()
zoomGroupIn = X ()
zoomColumnIn
zoomGroupOut :: X ()
zoomGroupOut :: X ()
zoomGroupOut = X ()
zoomColumnOut
zoomGroupReset :: X ()
zoomGroupReset :: X ()
zoomGroupReset = X ()
zoomColumnReset
toggleGroupFull :: X ()
toggleGroupFull :: X ()
toggleGroupFull = X ()
toggleColumnFull
groupToNextLayout :: X ()
groupToNextLayout :: X ()
groupToNextLayout = forall a. Message a => a -> X ()
sendMessage forall a b. (a -> b) -> a -> b
$ forall m. Message m => m -> EscapedMessage
escape ChangeLayout
NextLayout
groupToFullLayout :: X ()
groupToFullLayout :: X ()
groupToFullLayout = forall a. Message a => a -> X ()
sendMessage forall a b. (a -> b) -> a -> b
$ forall m. Message m => m -> EscapedMessage
escape forall a b. (a -> b) -> a -> b
$ String -> JumpToLayout
JumpToLayout String
"Full"
groupToTabbedLayout :: X ()
groupToTabbedLayout :: X ()
groupToTabbedLayout = forall a. Message a => a -> X ()
sendMessage forall a b. (a -> b) -> a -> b
$ forall m. Message m => m -> EscapedMessage
escape forall a b. (a -> b) -> a -> b
$ String -> JumpToLayout
JumpToLayout String
"Tabs"
groupToVerticalLayout :: X ()
groupToVerticalLayout :: X ()
groupToVerticalLayout = forall a. Message a => a -> X ()
sendMessage forall a b. (a -> b) -> a -> b
$ forall m. Message m => m -> EscapedMessage
escape forall a b. (a -> b) -> a -> b
$ String -> JumpToLayout
JumpToLayout String
"Column"