From 0d61ab7372d1f6a4e5d8107f6537e734fff8570c Mon Sep 17 00:00:00 2001 From: portnov84 Date: Sat, 21 Feb 2009 15:23:00 +0100 Subject: OneBig_resize.dpatch Ignore-this: c02b25bd370ee449aab28005eb4418cf Add Shrink/Expand messages handling for OneBig layout. darcs-hash:20090221142300-94bf2-b2d0ac6f1a7603321c122e1b755ab0baffbb7032.gz --- XMonad/Layout/OneBig.hs | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'XMonad/Layout/OneBig.hs') diff --git a/XMonad/Layout/OneBig.hs b/XMonad/Layout/OneBig.hs index 2b80088..365dfb4 100644 --- a/XMonad/Layout/OneBig.hs +++ b/XMonad/Layout/OneBig.hs @@ -43,6 +43,14 @@ data OneBig a = OneBig Float Float deriving (Read,Show) instance LayoutClass OneBig a where pureLayout = oneBigLayout + pureMessage = oneBigMessage + +-- | Processes Shrink/Expand messages +oneBigMessage :: OneBig a -> SomeMessage -> Maybe (OneBig a) +oneBigMessage (OneBig cx cy) m = fmap resize (fromMessage m) + where resize Shrink = OneBig (cx-delta) (cy-delta) + resize Expand = OneBig (cx+delta) (cy+delta) + delta = 3/100 -- | Main layout function oneBigLayout :: OneBig a -> Rectangle -> W.Stack a -> [(a, Rectangle)] -- cgit v1.2.3