mirror of
https://github.com/xmonad/xmonad-contrib.git
synced 2025-07-28 18:51:51 -07:00
make Circle work with Layout class.
This commit is contained in:
14
Circle.hs
14
Circle.hs
@@ -15,7 +15,7 @@
|
||||
module XMonadContrib.Circle (
|
||||
-- * Usage
|
||||
-- $usage
|
||||
circle
|
||||
Circle
|
||||
) where -- actually it's an ellipse
|
||||
|
||||
import Data.List
|
||||
@@ -23,8 +23,6 @@ import Graphics.X11.Xlib
|
||||
import XMonad
|
||||
import StackSet (integrate, peek)
|
||||
|
||||
import XMonadContrib.LayoutHelpers ( idModify )
|
||||
|
||||
-- $usage
|
||||
-- You can use this module with the following in your Config.hs file:
|
||||
--
|
||||
@@ -32,10 +30,12 @@ import XMonadContrib.LayoutHelpers ( idModify )
|
||||
|
||||
-- %import XMonadContrib.Circle
|
||||
|
||||
circle :: Layout Window
|
||||
circle = Layout { doLayout = \r s -> do { layout <- raiseFocus $ circleLayout r $ integrate s
|
||||
; return (layout, Nothing) }
|
||||
, modifyLayout = idModify }
|
||||
data Circle a = Circle deriving ( Read, Show )
|
||||
|
||||
instance Layout Circle Window where
|
||||
doLayout Circle r s = do layout <- raiseFocus $ circleLayout r $ integrate s
|
||||
return (layout, Nothing)
|
||||
modifyLayout Circle _ = return Nothing
|
||||
|
||||
circleLayout :: Rectangle -> [a] -> [(a, Rectangle)]
|
||||
circleLayout _ [] = []
|
||||
|
Reference in New Issue
Block a user