Copyright | (c) Ivan A. Malison |
---|---|
License | BSD3-style (see LICENSE) |
Maintainer | Ivan A. Malison |
Stability | unstable |
Portability | unportable |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- logIO :: Priority -> String -> IO ()
- logC :: MonadIO m => Priority -> String -> m ()
- type Taffy m v = MonadIO m => ReaderT Context m v
- type TaffyIO v = ReaderT Context IO v
- type Listener = Event -> Taffy IO ()
- type SubscriptionList = [(Unique, Listener)]
- data Value = Typeable t => Value t
- fromValue :: forall t. Typeable t => Value -> Maybe t
- data BarConfig = BarConfig {
- strutConfig :: StrutConfig
- widgetSpacing :: Int32
- startWidgets :: [TaffyIO Widget]
- centerWidgets :: [TaffyIO Widget]
- endWidgets :: [TaffyIO Widget]
- barId :: Unique
- type BarConfigGetter = TaffyIO [BarConfig]
- data TaffybarConfig = TaffybarConfig {}
- appendHook :: TaffyIO () -> TaffybarConfig -> TaffybarConfig
- defaultTaffybarConfig :: TaffybarConfig
- data Context = Context {}
- buildContext :: TaffybarConfig -> IO Context
- buildEmptyContext :: IO Context
- buildBarWindow :: Context -> BarConfig -> IO Window
- refreshTaffyWindows :: TaffyIO ()
- forceRefreshTaffyWindows :: TaffyIO ()
- asksContextVar :: (r -> MVar b) -> ReaderT r IO b
- runX11 :: X11Property a -> TaffyIO a
- runX11Def :: a -> X11Property a -> TaffyIO a
- runX11Context :: MonadIO m => Context -> a -> X11Property a -> m a
- getState :: forall t. Typeable t => Taffy IO (Maybe t)
- getStateDefault :: Typeable t => Taffy IO t -> Taffy IO t
- putState :: forall t. Typeable t => Taffy IO t -> Taffy IO t
- taffyFork :: ReaderT r IO () -> ReaderT r IO ()
- startX11EventHandler :: Taffy IO ()
- unsubscribe :: Unique -> Taffy IO ()
- subscribeToAll :: Listener -> Taffy IO Unique
- subscribeToPropertyEvents :: [String] -> Listener -> Taffy IO Unique
- handleX11Event :: Event -> Taffy IO ()
Documentation
type SubscriptionList = [(Unique, Listener)] Source #
BarConfig | |
|
type BarConfigGetter = TaffyIO [BarConfig] Source #
data TaffybarConfig Source #
appendHook :: TaffyIO () -> TaffybarConfig -> TaffybarConfig Source #
A Context value holds all of the state associated with a single running instance of taffybar. It is typically accessed from a widget constructor through the TaffyIO monad transformer stack.
Context | |
|
buildContext :: TaffybarConfig -> IO Context Source #
Build the Context for a taffybar process.
refreshTaffyWindows :: TaffyIO () Source #
runX11 :: X11Property a -> TaffyIO a Source #
runX11Def :: a -> X11Property a -> TaffyIO a Source #
runX11Context :: MonadIO m => Context -> a -> X11Property a -> m a Source #
getStateDefault :: Typeable t => Taffy IO t -> Taffy IO t Source #
Like "putState", but avoids aquiring a lock if the value is already in the map.
putState :: forall t. Typeable t => Taffy IO t -> Taffy IO t Source #
Get a value of the type returned by the provided action from the the current taffybar state, unless the state does not exist, in which case the action will be called to populate the state map.
startX11EventHandler :: Taffy IO () Source #
unsubscribe :: Unique -> Taffy IO () Source #
Remove the listener associated with the provided Unique from the collection of listeners.
subscribeToAll :: Listener -> Taffy IO Unique Source #
Subscribe to all incoming events on the X11 event loop. The returned Unique value can be used to unregister the listener using "unsuscribe".
subscribeToPropertyEvents :: [String] -> Listener -> Taffy IO Unique Source #
Subscribe to X11 PropertyEvents where the property changed is in the provided list.