From fa6ce67fba77a3fbe3be90d592e9119b8231e3e5 Mon Sep 17 00:00:00 2001 From: Ilya Portnov Date: Sat, 14 May 2011 13:25:49 +0000 Subject: [PATCH] Generalize X.L.AutoMaster modifier Enable it to work not only with Windows, but with any (Eq) type. --- XMonad/Layout/AutoMaster.hs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/XMonad/Layout/AutoMaster.hs b/XMonad/Layout/AutoMaster.hs index 7a912c8f..c393bd0a 100644 --- a/XMonad/Layout/AutoMaster.hs +++ b/XMonad/Layout/AutoMaster.hs @@ -48,7 +48,7 @@ import XMonad.Layout.LayoutModifier data AutoMaster a = AutoMaster Int Float Float deriving (Read,Show) -instance LayoutModifier AutoMaster Window where +instance (Eq w) => LayoutModifier AutoMaster w where modifyLayout (AutoMaster k bias _) = autoLayout k bias pureMess = autoMess @@ -61,12 +61,12 @@ autoMess (AutoMaster k bias delta) m = msum [fmap resize (fromMessage m), resize Shrink = AutoMaster k (max (-0.4) $ bias-delta) delta -- | Main layout function -autoLayout :: (LayoutClass l Window) => +autoLayout :: (Eq w, LayoutClass l w) => Int -> Float -> - W.Workspace WorkspaceId (l Window) Window + W.Workspace WorkspaceId (l w) w -> Rectangle - -> X ([(Window, Rectangle)], Maybe (l Window)) + -> X ([(w, Rectangle)], Maybe (l w)) autoLayout k bias wksp rect = do let stack = W.stack wksp let ws = W.integrate' stack