diff options
| -rw-r--r-- | readme.md | 1 | ||||
| -rw-r--r-- | src/Config.hs | 1 | ||||
| -rw-r--r-- | src/Main.hs | 3 | ||||
| -rw-r--r-- | src/Window.hs | 2 | 
4 files changed, 7 insertions, 0 deletions
| @@ -299,6 +299,7 @@ xmobar --help):        -F fg color   --fgcolor=fg color     The foreground color. Default grey        -o            --top                  Place xmobar at the top of the screen        -b            --bottom               Place xmobar at the bottom of the screen +      -d            --dock                 Place xmobar in the dock        -a alignsep   --alignsep=alignsep    Separators for left, center and right text                                             alignment. Default: '}{'        -s char       --sepchar=char         The character used to separate commands in diff --git a/src/Config.hs b/src/Config.hs index a6ad3e2..97040f1 100644 --- a/src/Config.hs +++ b/src/Config.hs @@ -77,6 +77,7 @@ data XPosition = Top                 | BottomSize Align Int Int                 | Static {xpos, ypos, width, height :: Int}                 | OnScreen Int XPosition +               | Docked                   deriving ( Read, Eq )  data Align = L | R | C deriving ( Read, Eq ) diff --git a/src/Main.hs b/src/Main.hs index 5ef5db6..aa6ac1d 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -100,6 +100,7 @@ data Opts = Help            | FgColor    String            | T            | B +          | D            | AlignSep   String            | Commands   String            | AddCommand String @@ -117,6 +118,7 @@ options =      , Option ['F'     ] ["fgcolor"     ] (ReqArg FgColor    "fg color" ) "The foreground color. Default grey"      , Option ['o'     ] ["top"         ] (NoArg  T                     ) "Place xmobar at the top of the screen"      , Option ['b'     ] ["bottom"      ] (NoArg  B                     ) "Place xmobar at the bottom of the screen" +    , Option ['d'     ] ["dock"        ] (NoArg  D                     ) "Place xmobar in the dock"      , Option ['a'     ] ["alignsep"    ] (ReqArg AlignSep   "alignsep" ) "Separators for left, center and right text\nalignment. Default: '}{'"      , Option ['s'     ] ["sepchar"     ] (ReqArg SepChar    "char"     ) "The character used to separate commands in\nthe output template. Default '%'"      , Option ['t'     ] ["template"    ] (ReqArg Template   "template" ) "The output template" @@ -162,6 +164,7 @@ doOpts conf (o:oo) =        FgColor  s   -> doOpts (conf {fgColor  = s     }) oo        T            -> doOpts (conf {position = Top   }) oo        B            -> doOpts (conf {position = Bottom}) oo +      D            -> doOpts (conf {position = Docked}) oo        AlignSep s   -> doOpts (conf {alignSep = s     }) oo        SepChar  s   -> doOpts (conf {sepChar  = s     }) oo        Template s   -> doOpts (conf {template = s     }) oo diff --git a/src/Window.hs b/src/Window.hs index 9b0c506..d08e445 100644 --- a/src/Window.hs +++ b/src/Window.hs @@ -66,6 +66,7 @@ setPosition p rs ht =      BottomSize a i ch  -> (Rectangle (ax a i) (ny' ch) (nw i) (mh ch), True)      Static cx cy cw ch -> (Rectangle (fi cx) (fi cy) (fi cw) (fi ch), True)      OnScreen _ p'' -> setPosition p'' [scr] ht +    Docked -> (Rectangle rx ry rw h, False)    where      (scr@(Rectangle rx ry rw rh), p') =        case p of OnScreen i x -> (fromMaybe (head rs) $ safeIndex i rs, x) @@ -118,6 +119,7 @@ getStrutValues r@(Rectangle x y w h) p rwh =      BottomW _ _     -> [0, 0,  0, sb, 0, 0, 0, 0,  0,  0, nx, nw]      BottomSize   {} -> [0, 0,  0, sb, 0, 0, 0, 0,  0,  0, nx, nw]      Static       {} -> getStaticStrutValues p rwh +    Docked          -> getStaticStrutValues p rwh      where st = fi y + fi h            sb = rwh - fi y            nx = fi x | 
