summaryrefslogtreecommitdiffhomepage
path: root/src/Xmobar.hs
AgeCommit message (Collapse)Author
2018-11-21Split Modules into Library & Executable StructurePavan Rikhi
Move the Main module to a new `app` directory. All other modules have been nested under the `Xmobar` name. Lots of module headers & imports were updated.
2018-10-06Signal termination to plugin threads and wait for them upon program exitDaniel Schüssler
This is necessary to allow the plugin threads to run their cleanup actions.
2018-07-10New configuration parameter `textOffsets` (fixes #311)jao
2018-06-24hlintingjao
2017-04-29hlint configurationjao
2016-09-14tell the user what went wrong in the event of a failuremichael bishop
2015-04-21Same vertical alignment for multiple fontsjao
2015-04-13A bit more experimentation with alignmentjao
2015-03-20Fixes for vertical alignment and border drawingjao
2015-03-19More alignment fixesjao
2015-03-18Fix for background's vertical aligmentjao
2015-03-17Trying a better vertical alignmnet (issue #221)jao
2015-03-11Fix for default icon vertical alignment (#216)jao
2015-02-02Real fix: Xrender only available if with_xftjao
2015-01-08Support for multiple fontsMarkus Scherer
2015-01-07Whitespacejao
2015-01-07Honoring background color when alpha=255 (issue #209)jao
2014-12-30Linting and defaultsjao
2014-12-30Fix: use the right background area in transparencyjao
2014-12-30Merge branch 'transparency' of https://github.com/ezyang/xmobarjao
Conflicts: src/Config.hs src/Main.hs src/Parsers.hs src/XUtil.hsc src/Xmobar.hs
2014-12-02New textOffset and iconOffset configuration parametersjao
2014-12-02Merge branch 'master' of https://github.com/ryantm/xmobar into ryantm-masterjao
Conflicts: src/Xmobar.hs
2014-09-24Add iconRoot config optionAlexander Shabalin
For all <icon=path/> if path does not start with "/", "./", "../" it will have iconRoot ++ "/" prepended to it.
2014-09-16Add ability to set border widthTravis Staton
2014-08-09hlint refactoringsReto Hablützel
2014-06-01fix vertical text alignment calculationRyan Mulligan
the baseline (valign) is now set so the font will render with equal vertical margin above and below the font extents
2014-03-13Back to picking first screen by default (#158)0.20.1Jose Antonio Ortega Ruiz
2014-02-20Change actions syntaxMarcin Mikołajczyk
2014-02-18Add support for multiple actions per item, activated depending on mouse ↵Marcin Mikołajczyk
button clicked
2013-07-07Transparency and tint support.Edward Z. Yang
New configuration option 'alpha' which adjusts alpha transparency (0 is transparent, 255 is opaque). Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
2013-03-13Help type inferencer a bit, kills warningAlexander Polakov
2013-03-13Fix actions for right side of the barAlexander Polakov
totSLen was wrong
2013-03-13Use fmap instead of >>=Alexander Polakov
2013-03-13Introduce ActionsAlexander Polakov
Actions are event re-actions. Currently only ButtonPress event is handled by Actions and only one action is defined, which is called Spawn (run external command). Type (and parser) can be extended to EWMH actions (switch to desktop, close window, whatever).
2013-02-04Better icon alignmentAlexander Polakov
2013-02-04Use real icon widthAlexander Polakov
2013-02-03Fixes for previousAlexander Polakov
2013-02-03Implement icon cachingAlexander Polakov
2013-01-27XBM icon supportEdward O'Callaghan
<icon=/path/to/icon>
2012-10-08Fixes for warnings reported in github issue #71Jose Antonio Ortega Ruiz
2012-09-11Avoiding X server leaks with XftColor cacheJose Antonio Ortega Ruiz
This patch is a first complete solution to the long-standing memory leak (on the X server side) caused by repeteadly asking the server to allocate XftColor instances. Despite the fact that we were freeing them, the server didn't seem to care... this was also happening for non-Xft Colors, and solved in the same way we'd done here, i.e., by caching XftColor instances. And additional complication has been that Graphics.X11.Xft doesn't export any function to create and retain an XftColor, nor the necessary datatype constructors to write a compatible version outside the module (there's no way to construct an XftColor instance to pass to the other functions in the library). So, i've created my own lite version of the whole module, until the day it supports XftColor creation.
2012-09-10New module ColorCacheJose Antonio Ortega Ruiz
2012-09-09Missing Window module in cabal fileJose Antonio Ortega Ruiz
2012-09-09Correct vertical alignment for XFT fontsJose Antonio Ortega Ruiz
2012-09-01Some cosmetic fixes.Jochen Keil
I tried to scrap the hide/reveal boilerplate, but that didn't work out due different functions ({show,hide}Window) and signaltypes. Got almost as ugly. Maybe a pattern matching function instead of the "case typ of" would be nicer. But that's just code golfing.
2012-09-01Set StrutValues from showWindowJochen Keil
This is superior to calling the repositionWin function. It will only set the StrutValues and avoid additional work. This means, that extra parameters need to be passed down to showWindow. However, that is not a problem here.
2012-09-01Pass the timeout value unchanged to the toggle functionJochen Keil
Since the timeout is passed on as hide or reveal signal, it must not be changed or the multiplications will pile up.
2012-09-01Send hide or reveal signal for togglingJochen Keil
This is a more abstract way of implementing the Toggle operation.
2012-08-22Make it possible to delay Hide, Reveal and Toggle signalsJochen Keil
Previously Hide, Reveal and Toggle were immediate actions. This is the same behaviour as if called now with 0 as parameter. If the parameter is a positive non zero value it is taken as a delay for the requested action. After the delay (implemented using threadDelay) a new signal is sent with zero with no timeout being effective immediately. This is necessary to evaluate the persistency flag after the delay because it might have changed in the meantime. Effectively this means that it is possible to cancel the delayed operation by calling TogglePersistent.
2012-08-22Refactor MVar SignalType to TMVar SignalTypeJochen Keil
Replace MVar with TMVar from the STM package. This is common for ghc now. Since STM is used everywhere else in the src it also adds no additional dependencies. The main reason for this switch is, that readMVar, swapMVar, etc. are only atomically if there is no other producer for this MVar i.e. putMVar. For example readMVar is a combination of putMVar and takeMVar. Due to scheduling and readMVar's non-atomicity it is possible that values written to the MVar appear in the wrong order. Using TMVar fixes this problem, since it allows really atomical read/swap operations.