{-# 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 = ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))))
Window
-> ZoomRow
GroupEQ
(Group
(ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))))
Window)
-> 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
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 ZoomRow
GroupEQ
(Group
(ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))))
Window)
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 = [Rename a] -> Tall a -> ModifiedLayout Rename Tall a
forall a (l :: * -> *).
[Rename a] -> l a -> ModifiedLayout Rename l a
renamed [String -> Rename a
forall a. String -> Rename a
Replace String
"Column"] (Tall a -> ModifiedLayout Rename Tall a)
-> Tall a -> ModifiedLayout Rename Tall a
forall a b. (a -> b) -> a -> b
$ Int -> Rational -> Rational -> Tall a
forall a. Int -> Rational -> Rational -> Tall a
Tall Int
0 (Rational
3Rational -> Rational -> Rational
forall a. Fractional a => a -> a -> a
/Rational
100) (Rational
1Rational -> Rational -> Rational
forall a. Fractional a => a -> a -> a
/Rational
2)
tabs :: ModifiedLayout Rename Simplest a
tabs = [Rename a] -> Simplest a -> ModifiedLayout Rename Simplest a
forall a (l :: * -> *).
[Rename a] -> l a -> ModifiedLayout Rename l a
renamed [String -> Rename a
forall a. String -> Rename a
Replace String
"Tabs"] Simplest a
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 = [Rename Window]
-> ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))
Window
-> ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))))
Window
forall a (l :: * -> *).
[Rename a] -> l a -> ModifiedLayout Rename l a
renamed [Int -> Rename Window
forall a. Int -> Rename a
CutWordsLeft Int
3]
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))
Window
-> ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))))
Window)
-> ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))
Window
-> ModifiedLayout
Rename
(ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))))
Window
forall a b. (a -> b) -> a -> b
$ p
-> Theme
-> Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))
Window
-> ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))
Window
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
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))
Window
-> ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))
Window)
-> Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))
Window
-> ModifiedLayout
(Decoration TabbedDecoration p)
(Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))))
Window
forall a b. (a -> b) -> a -> b
$ ChangeLayout
-> Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))
Window
-> Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))
Window
forall m (l :: * -> *) w.
(Message m, LayoutClass l w) =>
m -> l w -> Ignore m l w
ignore ChangeLayout
NextLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))
Window
-> Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))
Window)
-> Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))
Window
-> Ignore
ChangeLayout
(Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))))
Window
forall a b. (a -> b) -> a -> b
$ JumpToLayout
-> ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))
Window
-> Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))
Window
forall m (l :: * -> *) w.
(Message m, LayoutClass l w) =>
m -> l w -> Ignore m l w
ignore (String -> JumpToLayout
JumpToLayout String
"") (ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))
Window
-> Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))
Window)
-> ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))
Window
-> Ignore
JumpToLayout
(ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)))
Window
forall a b. (a -> b) -> a -> b
$ Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)
Window
-> ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))
Window
forall (l :: * -> *) w.
LayoutClass l w =>
l w -> ModifiedLayout UnEscape l w
unEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)
Window
-> ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))
Window)
-> Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)
Window
-> ModifiedLayout
UnEscape
(Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full))
Window
forall a b. (a -> b) -> a -> b
$ ModifiedLayout Rename Tall Window
forall {a}. ModifiedLayout Rename Tall a
column ModifiedLayout Rename Tall Window
-> Choose (ModifiedLayout Rename Simplest) Full Window
-> Choose
(ModifiedLayout Rename Tall)
(Choose (ModifiedLayout Rename Simplest) Full)
Window
forall (l :: * -> *) a (r :: * -> *). l a -> r a -> Choose l r a
||| ModifiedLayout Rename Simplest Window
forall {a}. ModifiedLayout Rename Simplest a
tabs ModifiedLayout Rename Simplest Window
-> Full Window
-> Choose (ModifiedLayout Rename Simplest) Full Window
forall (l :: * -> *) a (r :: * -> *). l a -> r a -> Choose l r a
||| Full Window
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 = EscapedMessage -> X ()
forall a. Message a => a -> X ()
sendMessage (EscapedMessage -> X ()) -> EscapedMessage -> X ()
forall a b. (a -> b) -> a -> b
$ ChangeLayout -> EscapedMessage
forall m. Message m => m -> EscapedMessage
escape ChangeLayout
NextLayout
groupToFullLayout :: X ()
groupToFullLayout :: X ()
groupToFullLayout = EscapedMessage -> X ()
forall a. Message a => a -> X ()
sendMessage (EscapedMessage -> X ()) -> EscapedMessage -> X ()
forall a b. (a -> b) -> a -> b
$ JumpToLayout -> EscapedMessage
forall m. Message m => m -> EscapedMessage
escape (JumpToLayout -> EscapedMessage) -> JumpToLayout -> EscapedMessage
forall a b. (a -> b) -> a -> b
$ String -> JumpToLayout
JumpToLayout String
"Full"
groupToTabbedLayout :: X ()
groupToTabbedLayout :: X ()
groupToTabbedLayout = EscapedMessage -> X ()
forall a. Message a => a -> X ()
sendMessage (EscapedMessage -> X ()) -> EscapedMessage -> X ()
forall a b. (a -> b) -> a -> b
$ JumpToLayout -> EscapedMessage
forall m. Message m => m -> EscapedMessage
escape (JumpToLayout -> EscapedMessage) -> JumpToLayout -> EscapedMessage
forall a b. (a -> b) -> a -> b
$ String -> JumpToLayout
JumpToLayout String
"Tabs"
groupToVerticalLayout :: X ()
groupToVerticalLayout :: X ()
groupToVerticalLayout = EscapedMessage -> X ()
forall a. Message a => a -> X ()
sendMessage (EscapedMessage -> X ()) -> EscapedMessage -> X ()
forall a b. (a -> b) -> a -> b
$ JumpToLayout -> EscapedMessage
forall m. Message m => m -> EscapedMessage
escape (JumpToLayout -> EscapedMessage) -> JumpToLayout -> EscapedMessage
forall a b. (a -> b) -> a -> b
$ String -> JumpToLayout
JumpToLayout String
"Column"