| Copyright | (c) Ivan A. Malison | 
|---|---|
| License | BSD3-style (see LICENSE) | 
| Maintainer | Ivan A. Malison | 
| Stability | unstable | 
| Portability | unportable | 
| Safe Haskell | None | 
| Language | Haskell2010 | 
System.Taffybar.Widget.Workspaces
Description
Documentation
data WorkspaceState Source #
Instances
| Eq WorkspaceState Source # | |
| Defined in System.Taffybar.Widget.Workspaces Methods (==) :: WorkspaceState -> WorkspaceState -> Bool # (/=) :: WorkspaceState -> WorkspaceState -> Bool # | |
| Show WorkspaceState Source # | |
| Defined in System.Taffybar.Widget.Workspaces Methods showsPrec :: Int -> WorkspaceState -> ShowS # show :: WorkspaceState -> String # showList :: [WorkspaceState] -> ShowS # | |
getCSSClass :: Show s => s -> String Source #
cssWorkspaceStates :: [String] Source #
data WindowData Source #
Constructors
| WindowData | |
| Fields 
 | |
Instances
| Eq WindowData Source # | |
| Defined in System.Taffybar.Widget.Workspaces | |
| Show WindowData Source # | |
| Defined in System.Taffybar.Widget.Workspaces Methods showsPrec :: Int -> WindowData -> ShowS # show :: WindowData -> String # showList :: [WindowData] -> ShowS # | |
data WidgetUpdate Source #
Constructors
| WorkspaceUpdate Workspace | |
| IconUpdate [X11Window] | 
data WorkspacesContext Source #
Constructors
| WorkspacesContext | |
| Fields 
 | |
type WorkspacesIO a = ReaderT WorkspacesContext IO a Source #
liftContext :: TaffyIO a -> WorkspacesIO a Source #
liftX11Def :: a -> X11Property a -> WorkspacesIO a Source #
setWorkspaceWidgetStatusClass :: WidgetClass widget => Workspace -> widget -> IO () Source #
class WorkspaceWidgetController wc where Source #
Minimal complete definition
Methods
getWidget :: wc -> Widget Source #
updateWidget :: wc -> WidgetUpdate -> WorkspacesIO wc Source #
updateWidgetX11 :: wc -> WidgetUpdate -> WorkspacesIO wc Source #
Instances
Constructors
| WorkspaceWidgetController a => WWC a | 
Instances
| WorkspaceWidgetController WWC Source # | |
| Defined in System.Taffybar.Widget.Workspaces Methods getWidget :: WWC -> Widget Source # updateWidget :: WWC -> WidgetUpdate -> WorkspacesIO WWC Source # updateWidgetX11 :: WWC -> WidgetUpdate -> WorkspacesIO WWC Source # | |
type ControllerConstructor = Workspace -> WorkspacesIO WWC Source #
type WindowIconPixbufGetter = Int32 -> WindowData -> TaffyIO (Maybe Pixbuf) Source #
data WorkspacesConfig Source #
Constructors
| WorkspacesConfig | |
| Fields 
 | |
updateVar :: MVar a -> (a -> WorkspacesIO a) -> WorkspacesIO a Source #
getWorkspaceToWindows :: [X11Window] -> X11Property (MultiMap WorkspaceIdx X11Window) Source #
getWindowData :: [X11Window] -> [X11Window] -> X11Window -> X11Property WindowData Source #
buildWorkspaceData :: Map WorkspaceIdx Workspace -> WorkspacesIO (Map WorkspaceIdx Workspace) Source #
addWidget :: WWC -> WorkspacesIO () Source #
workspacesNew :: WorkspacesConfig -> TaffyIO Widget Source #
doWidgetUpdate :: (WorkspaceIdx -> WWC -> WorkspacesIO WWC) -> WorkspacesIO () Source #
rateLimitFn :: forall req resp. WorkspacesContext -> (req -> IO resp) -> ResultsCombiner req resp -> IO (req -> IO resp) Source #
onWorkspaceUpdate :: WorkspacesContext -> IO (Event -> IO ()) Source #
onIconsChanged :: WorkspacesContext -> IO (Set X11Window -> IO ()) Source #
data WorkspaceContentsController Source #
Constructors
| WorkspaceContentsController | |
| Fields 
 | |
Instances
| WorkspaceWidgetController WorkspaceContentsController Source # | |
| Defined in System.Taffybar.Widget.Workspaces | |
newtype LabelController Source #
Constructors
| LabelController | |
| Fields 
 | |
Instances
| WorkspaceWidgetController LabelController Source # | |
| Defined in System.Taffybar.Widget.Workspaces Methods getWidget :: LabelController -> Widget Source # updateWidget :: LabelController -> WidgetUpdate -> WorkspacesIO LabelController Source # updateWidgetX11 :: LabelController -> WidgetUpdate -> WorkspacesIO LabelController Source # | |
data IconWidget Source #
Constructors
| IconWidget | |
| Fields 
 | |
getPixbufForIconWidget :: Bool -> MVar (Maybe WindowData) -> Int32 -> WorkspacesIO (Maybe Pixbuf) Source #
buildIconWidget :: Bool -> Workspace -> WorkspacesIO IconWidget Source #
data IconController Source #
Constructors
| IconController | |
| Fields 
 | |
Instances
| WorkspaceWidgetController IconController Source # | |
| Defined in System.Taffybar.Widget.Workspaces Methods getWidget :: IconController -> Widget Source # updateWidget :: IconController -> WidgetUpdate -> WorkspacesIO IconController Source # updateWidgetX11 :: IconController -> WidgetUpdate -> WorkspacesIO IconController Source # | |
updateWindowIconsById :: IconController -> [X11Window] -> WorkspacesIO () Source #
updateMinSize :: Widget -> Int -> IO () Source #
constantScaleWindowIconPixbufGetter :: Int32 -> WindowIconPixbufGetter -> WindowIconPixbufGetter Source #
addCustomIconsToDefaultWithFallbackByPath :: (WindowData -> Maybe FilePath) -> FilePath -> WindowIconPixbufGetter Source #
addCustomIconsAndFallback :: (WindowData -> Maybe FilePath) -> (Int32 -> TaffyIO (Maybe Pixbuf)) -> WindowIconPixbufGetter -> WindowIconPixbufGetter Source #
sortWindowsByPosition :: [WindowData] -> WorkspacesIO [WindowData] Source #
updateImages :: IconController -> Workspace -> WorkspacesIO [IconWidget] Source #
updateIconWidget :: IconController -> IconWidget -> Maybe WindowData -> WorkspacesIO () Source #
data WorkspaceButtonController Source #
Constructors
| WorkspaceButtonController | |
| Fields 
 | |
Instances
| WorkspaceWidgetController WorkspaceButtonController Source # | |
| Defined in System.Taffybar.Widget.Workspaces | |
switch :: MonadIO m => WorkspacesContext -> WorkspaceIdx -> m Bool Source #
data WorkspaceUnderlineController Source #
Constructors
| WorkspaceUnderlineController | |
| Fields 
 | |
Instances
| WorkspaceWidgetController WorkspaceUnderlineController Source # | |
| Defined in System.Taffybar.Widget.Workspaces | |
updateUnderline :: WorkspaceUnderlineController -> WidgetUpdate -> WorkspacesIO WorkspaceUnderlineController Source #
data WorkspaceBorderController Source #
Constructors
| WorkspaceBorderController | |
| Fields 
 | |
Instances
| WorkspaceWidgetController WorkspaceBorderController Source # | |
| Defined in System.Taffybar.Widget.Workspaces | |