i3ipc-0.2.0.0: A type-safe wrapper around i3's IPC

Safe HaskellNone
LanguageHaskell2010

I3IPC.Reply

Synopsis

Documentation

data MsgReply Source #

Constructors

RunCommand !Success

Run the payload as an i3 command (like the commands you can bind to keys).

Workspaces !WorkspaceReply

Get the list of current workspaces.

Subscribe !Success

Subscribe this IPC connection to the event types specified in the message payload.

Outputs !OutputsReply

Get the list of current outputs.

Tree !Node

Get the i3 layout tree.

Marks !MarksReply

Gets the names of all currently set marks.

BarConfig !BarConfigReply

Gets the specified bar configuration or the names of all bar configurations if payload is empty.

Version !VersionReply

Gets the i3 version.

BindingModes !BindingModesReply

Gets the names of all currently configured binding modes.

Config !ConfigReply

Returns the last loaded i3 config.

Tick !Success

Sends a tick event with the specified payload.

Sync !Success

Sends an i3 sync event with the specified random value to the specified window.

Instances
Eq MsgReply Source # 
Instance details

Defined in I3IPC.Reply

Show MsgReply Source # 
Instance details

Defined in I3IPC.Reply

data Success Source #

Success Reply used for Sync, Subscribe, Command, Tick

Constructors

Success 

Fields

Instances
Eq Success Source # 
Instance details

Defined in I3IPC.Reply

Methods

(==) :: Success -> Success -> Bool #

(/=) :: Success -> Success -> Bool #

Show Success Source # 
Instance details

Defined in I3IPC.Reply

Generic Success Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep Success :: Type -> Type #

Methods

from :: Success -> Rep Success x #

to :: Rep Success x -> Success #

ToJSON Success Source # 
Instance details

Defined in I3IPC.Reply

FromJSON Success Source # 
Instance details

Defined in I3IPC.Reply

type Rep Success Source # 
Instance details

Defined in I3IPC.Reply

type Rep Success = D1 (MetaData "Success" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "Success" PrefixI True) (S1 (MetaSel (Just "success") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)))

data WorkspaceReply Source #

Workspaces Reply The reply consists of a serialized list of workspaces.

Instances
Eq WorkspaceReply Source # 
Instance details

Defined in I3IPC.Reply

Show WorkspaceReply Source # 
Instance details

Defined in I3IPC.Reply

Generic WorkspaceReply Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep WorkspaceReply :: Type -> Type #

ToJSON WorkspaceReply Source # 
Instance details

Defined in I3IPC.Reply

FromJSON WorkspaceReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep WorkspaceReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep WorkspaceReply = D1 (MetaData "WorkspaceReply" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "WorkspaceReply" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Workspace))))

data Workspace Source #

Constructors

Workspace 

Fields

  • ws_num :: !Int32

    The logical number of the workspace. Corresponds to the command to switch to this workspace. For named workspaces, this will be -1.

  • ws_name :: !Text

    The name of this workspace (by default num+1), as changed by the user. Encoded in UTF-8.

  • ws_visible :: !Bool

    Whether this workspace is currently visible on an output (multiple workspaces can be visible at the same time).

  • ws_focused :: !Bool

    Whether this workspace currently has the focus (only one workspace can have the focus at the same time).

  • ws_urgent :: !Bool

    Whether a window on this workspace has the "urgent" flag set.

  • ws_rect :: !Rect

    The rectangle of this workspace (equals the rect of the output it is on), consists of x, y, width, height.

  • ws_output :: !Text

    The video output this workspace is on (LVDS1, VGA1, …).

Instances
Eq Workspace Source # 
Instance details

Defined in I3IPC.Reply

Show Workspace Source # 
Instance details

Defined in I3IPC.Reply

Generic Workspace Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep Workspace :: Type -> Type #

ToJSON Workspace Source # 
Instance details

Defined in I3IPC.Reply

FromJSON Workspace Source # 
Instance details

Defined in I3IPC.Reply

type Rep Workspace Source # 
Instance details

Defined in I3IPC.Reply

data OutputsReply Source #

Outputs Reply The reply consists of a serialized list of outputs.

Constructors

OutputsReply !(Vector Output) 
Instances
Eq OutputsReply Source # 
Instance details

Defined in I3IPC.Reply

Show OutputsReply Source # 
Instance details

Defined in I3IPC.Reply

Generic OutputsReply Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep OutputsReply :: Type -> Type #

ToJSON OutputsReply Source # 
Instance details

Defined in I3IPC.Reply

FromJSON OutputsReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep OutputsReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep OutputsReply = D1 (MetaData "OutputsReply" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "OutputsReply" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Output))))

data Output Source #

Instances
Eq Output Source # 
Instance details

Defined in I3IPC.Reply

Methods

(==) :: Output -> Output -> Bool #

(/=) :: Output -> Output -> Bool #

Show Output Source # 
Instance details

Defined in I3IPC.Reply

Generic Output Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep Output :: Type -> Type #

Methods

from :: Output -> Rep Output x #

to :: Rep Output x -> Output #

ToJSON Output Source # 
Instance details

Defined in I3IPC.Reply

FromJSON Output Source # 
Instance details

Defined in I3IPC.Reply

type Rep Output Source # 
Instance details

Defined in I3IPC.Reply

type Rep Output = D1 (MetaData "Output" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "Output" PrefixI True) ((S1 (MetaSel (Just "output_name") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text) :*: S1 (MetaSel (Just "output_active") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)) :*: (S1 (MetaSel (Just "output_primary") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool) :*: (S1 (MetaSel (Just "output_current_workspace") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "output_rect") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Rect)))))

data Node Source #

Tree Reply The reply consists of a serialized tree. Each node in the tree (representing one container) has at least the properties listed below. While the nodes might have more properties, please do not use any properties which are not documented here. They are not yet finalized and will probably change!

Constructors

Node 

Fields

  • node_id :: !Int

    The internal ID (actually a C pointer value) of this container. Do not make any assumptions about it. You can use it to (re-)identify and address containers when talking to i3.

  • node_name :: !(Maybe Text)

    The internal name of this container. For all containers which are part of the tree structure down to the workspace contents, this is set to a nice human-readable name of the container. For containers that have an X11 window, the content is the title (_NET_WM_NAME property) of that window. For all other containers, the content is not defined (yet).

  • node_type :: !NodeType

    Type of this container. Can be one of "root", "output", "con", "floating_con", "workspace" or "dockarea".

  • node_output :: !(Maybe Text)

    The X11 display the node is drawn in. ex. "DP-4.8"

  • node_orientation :: !NodeOrientation

    Can either be "horizontal" "vertical" or "none"

  • node_border :: !NodeBorder

    Can be either "normal", "none" or "pixel", depending on the container’s border style.

  • node_current_border_width :: !Int32

    Number of pixels of the border width.

  • node_layout :: !NodeLayout

    Can be either "splith", "splitv", "stacked", "tabbed", "dockarea" or "output". Other values might be possible in the future, should we add new layouts.

  • node_percent :: !(Maybe Float)

    The percentage which this container takes in its parent. A value of null means that the percent property does not make sense for this container, for example for the root container.

  • node_rect :: !Rect

    The absolute display coordinates for this container. Display coordinates means that when you have two 1600x1200 monitors on a single X11 Display (the standard way), the coordinates of the first window on the second monitor are { "x": 1600, "y": 0, "width": 1600, "height": 1200 }.

  • node_window_rect :: !Rect

    The coordinates of the actual client window inside its container. These coordinates are relative to the container and do not include the window decoration (which is actually rendered on the parent container). So, when using the default layout, you will have a 2 pixel border on each side, making the window_rect { "x": 2, "y": 0, "width": 632, "height": 366 } (for example).

  • node_deco_rect :: !Rect

    The coordinates of the window decoration inside its container. These coordinates are relative to the container and do not include the actual client window.

  • node_geometry :: !Rect

    The original geometry the window specified when i3 mapped it. Used when switching a window to floating mode, for example.

  • node_window :: !(Maybe Int32)

    The X11 window ID of the actual client window inside this container. This field is set to null for split containers or otherwise empty containers. This ID corresponds to what xwininfo(1) and other X11-related tools display (usually in hex).

  • node_window_properties :: !(Maybe (Map WindowProperty (Maybe Text)))

    X11 window properties title, instance, class, window_role and transient_for.

  • node_urgent :: !Bool

    Whether this container (window, split container, floating container or workspace) has the urgency hint set, directly or indirectly. All parent containers up until the workspace container will be marked urgent if they have at least one urgent child.

  • node_focused :: !Bool

    Whether this container is currently focused.

  • node_focus :: !(Vector Int64)

    List of child node IDs (see nodes, floating_nodes and id) in focus order. Traversing the tree by following the first entry in this array will result in eventually reaching the one node with focused set to true.

  • node_sticky :: !Bool
     
  • node_floating_nodes :: !(Vector Node)

    The floating child containers of this node. Only non-empty on nodes with type workspace.

  • node_nodes :: !(Vector Node)

    The tiling (i.e. non-floating) child containers of this node.

Instances
Eq Node Source # 
Instance details

Defined in I3IPC.Reply

Methods

(==) :: Node -> Node -> Bool #

(/=) :: Node -> Node -> Bool #

Show Node Source # 
Instance details

Defined in I3IPC.Reply

Methods

showsPrec :: Int -> Node -> ShowS #

show :: Node -> String #

showList :: [Node] -> ShowS #

Generic Node Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep Node :: Type -> Type #

Methods

from :: Node -> Rep Node x #

to :: Rep Node x -> Node #

ToJSON Node Source # 
Instance details

Defined in I3IPC.Reply

FromJSON Node Source # 
Instance details

Defined in I3IPC.Reply

type Rep Node Source # 
Instance details

Defined in I3IPC.Reply

type Rep Node = D1 (MetaData "Node" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "Node" PrefixI True) ((((S1 (MetaSel (Just "node_id") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Int) :*: S1 (MetaSel (Just "node_name") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "node_type") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 NodeType) :*: (S1 (MetaSel (Just "node_output") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "node_orientation") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 NodeOrientation)))) :*: ((S1 (MetaSel (Just "node_border") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 NodeBorder) :*: S1 (MetaSel (Just "node_current_border_width") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Int32)) :*: (S1 (MetaSel (Just "node_layout") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 NodeLayout) :*: (S1 (MetaSel (Just "node_percent") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Float)) :*: S1 (MetaSel (Just "node_rect") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Rect))))) :*: (((S1 (MetaSel (Just "node_window_rect") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Rect) :*: S1 (MetaSel (Just "node_deco_rect") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Rect)) :*: (S1 (MetaSel (Just "node_geometry") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Rect) :*: (S1 (MetaSel (Just "node_window") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Int32)) :*: S1 (MetaSel (Just "node_window_properties") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe (Map WindowProperty (Maybe Text))))))) :*: ((S1 (MetaSel (Just "node_urgent") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool) :*: (S1 (MetaSel (Just "node_focused") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool) :*: S1 (MetaSel (Just "node_focus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Int64)))) :*: (S1 (MetaSel (Just "node_sticky") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool) :*: (S1 (MetaSel (Just "node_floating_nodes") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Node)) :*: S1 (MetaSel (Just "node_nodes") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Node))))))))

data NodeOrientation Source #

Instances
Eq NodeOrientation Source # 
Instance details

Defined in I3IPC.Reply

Show NodeOrientation Source # 
Instance details

Defined in I3IPC.Reply

Generic NodeOrientation Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep NodeOrientation :: Type -> Type #

ToJSON NodeOrientation Source # 
Instance details

Defined in I3IPC.Reply

FromJSON NodeOrientation Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeOrientation Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeOrientation = D1 (MetaData "NodeOrientation" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) ((C1 (MetaCons "Horizontal" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Vertical" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "OrientNone" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UnknownOrient" PrefixI False) (U1 :: Type -> Type)))

data WindowProperty Source #

Instances
Enum WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

Eq WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

Ord WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

Show WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

Generic WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep WindowProperty :: Type -> Type #

ToJSON WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

ToJSONKey WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

FromJSON WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

FromJSONKey WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

type Rep WindowProperty Source # 
Instance details

Defined in I3IPC.Reply

type Rep WindowProperty = D1 (MetaData "WindowProperty" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) ((C1 (MetaCons "Title" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "Instance" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Class" PrefixI False) (U1 :: Type -> Type))) :+: (C1 (MetaCons "WindowRole" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "TransientFor" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UnknownProperty" PrefixI False) (U1 :: Type -> Type))))

data MarksReply Source #

Marks Reply The reply consists of a single array of strings for each container that has a mark. A mark can only be set on one container, so the array is unique. The order of that array is undefined. If no window has a mark the response will be the empty array [].

Constructors

MarksReply !(Vector Text) 
Instances
Eq MarksReply Source # 
Instance details

Defined in I3IPC.Reply

Show MarksReply Source # 
Instance details

Defined in I3IPC.Reply

Generic MarksReply Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep MarksReply :: Type -> Type #

ToJSON MarksReply Source # 
Instance details

Defined in I3IPC.Reply

FromJSON MarksReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep MarksReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep MarksReply = D1 (MetaData "MarksReply" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "MarksReply" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Text))))

data NodeBorder Source #

Constructors

Normal 
None 
Pixel 
UnknownBorder 
Instances
Eq NodeBorder Source # 
Instance details

Defined in I3IPC.Reply

Show NodeBorder Source # 
Instance details

Defined in I3IPC.Reply

Generic NodeBorder Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep NodeBorder :: Type -> Type #

ToJSON NodeBorder Source # 
Instance details

Defined in I3IPC.Reply

FromJSON NodeBorder Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeBorder Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeBorder = D1 (MetaData "NodeBorder" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) ((C1 (MetaCons "Normal" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "None" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "Pixel" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UnknownBorder" PrefixI False) (U1 :: Type -> Type)))

data Rect Source #

Constructors

Rect 

Fields

Instances
Eq Rect Source # 
Instance details

Defined in I3IPC.Reply

Methods

(==) :: Rect -> Rect -> Bool #

(/=) :: Rect -> Rect -> Bool #

Show Rect Source # 
Instance details

Defined in I3IPC.Reply

Methods

showsPrec :: Int -> Rect -> ShowS #

show :: Rect -> String #

showList :: [Rect] -> ShowS #

Generic Rect Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep Rect :: Type -> Type #

Methods

from :: Rect -> Rep Rect x #

to :: Rep Rect x -> Rect #

ToJSON Rect Source # 
Instance details

Defined in I3IPC.Reply

FromJSON Rect Source # 
Instance details

Defined in I3IPC.Reply

type Rep Rect Source # 
Instance details

Defined in I3IPC.Reply

data NodeType Source #

Instances
Eq NodeType Source # 
Instance details

Defined in I3IPC.Reply

Show NodeType Source # 
Instance details

Defined in I3IPC.Reply

Generic NodeType Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep NodeType :: Type -> Type #

Methods

from :: NodeType -> Rep NodeType x #

to :: Rep NodeType x -> NodeType #

ToJSON NodeType Source # 
Instance details

Defined in I3IPC.Reply

FromJSON NodeType Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeType Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeType = D1 (MetaData "NodeType" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) ((C1 (MetaCons "RootType" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "OutputType" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "ConType" PrefixI False) (U1 :: Type -> Type))) :+: ((C1 (MetaCons "FloatingConType" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "WorkspaceType" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "DockAreaType" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UnknownType" PrefixI False) (U1 :: Type -> Type))))

data NodeLayout Source #

Instances
Eq NodeLayout Source # 
Instance details

Defined in I3IPC.Reply

Show NodeLayout Source # 
Instance details

Defined in I3IPC.Reply

Generic NodeLayout Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep NodeLayout :: Type -> Type #

ToJSON NodeLayout Source # 
Instance details

Defined in I3IPC.Reply

FromJSON NodeLayout Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeLayout Source # 
Instance details

Defined in I3IPC.Reply

type Rep NodeLayout = D1 (MetaData "NodeLayout" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) ((C1 (MetaCons "SplitHorizontalLayout" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "SplitVerticalLayout" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "StackedLayout" PrefixI False) (U1 :: Type -> Type))) :+: ((C1 (MetaCons "TabbedLayout" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "DockAreaLayout" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "OutputLayout" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UnknownLayout" PrefixI False) (U1 :: Type -> Type))))

data BarIds Source #

BarConfig Reply This can be used by third-party workspace bars (especially i3bar, but others are free to implement compatible alternatives) to get the bar block configuration from i3.

Constructors

BarIds !(Vector Text) 
Instances
Eq BarIds Source # 
Instance details

Defined in I3IPC.Reply

Methods

(==) :: BarIds -> BarIds -> Bool #

(/=) :: BarIds -> BarIds -> Bool #

Show BarIds Source # 
Instance details

Defined in I3IPC.Reply

Generic BarIds Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep BarIds :: Type -> Type #

Methods

from :: BarIds -> Rep BarIds x #

to :: Rep BarIds x -> BarIds #

ToJSON BarIds Source # 
Instance details

Defined in I3IPC.Reply

FromJSON BarIds Source # 
Instance details

Defined in I3IPC.Reply

type Rep BarIds Source # 
Instance details

Defined in I3IPC.Reply

type Rep BarIds = D1 (MetaData "BarIds" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "BarIds" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Text))))

data BarConfigReply Source #

Instances
Eq BarConfigReply Source # 
Instance details

Defined in I3IPC.Reply

Show BarConfigReply Source # 
Instance details

Defined in I3IPC.Reply

Generic BarConfigReply Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep BarConfigReply :: Type -> Type #

ToJSON BarConfigReply Source # 
Instance details

Defined in I3IPC.Reply

FromJSON BarConfigReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep BarConfigReply Source # 
Instance details

Defined in I3IPC.Reply

data BarPart Source #

Instances
Enum BarPart Source # 
Instance details

Defined in I3IPC.Reply

Eq BarPart Source # 
Instance details

Defined in I3IPC.Reply

Methods

(==) :: BarPart -> BarPart -> Bool #

(/=) :: BarPart -> BarPart -> Bool #

Ord BarPart Source # 
Instance details

Defined in I3IPC.Reply

Show BarPart Source # 
Instance details

Defined in I3IPC.Reply

Generic BarPart Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep BarPart :: Type -> Type #

Methods

from :: BarPart -> Rep BarPart x #

to :: Rep BarPart x -> BarPart #

ToJSON BarPart Source # 
Instance details

Defined in I3IPC.Reply

ToJSONKey BarPart Source # 
Instance details

Defined in I3IPC.Reply

FromJSON BarPart Source # 
Instance details

Defined in I3IPC.Reply

FromJSONKey BarPart Source # 
Instance details

Defined in I3IPC.Reply

type Rep BarPart Source # 
Instance details

Defined in I3IPC.Reply

type Rep BarPart = D1 (MetaData "BarPart" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) ((((C1 (MetaCons "Background" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Statusline" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "Separator" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "FocusedBackground" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "FocusedStatusline" PrefixI False) (U1 :: Type -> Type)))) :+: ((C1 (MetaCons "FocusedSeparator" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "FocusedWorkspaceText" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "FocusedWorkspaceBg" PrefixI False) (U1 :: Type -> Type))) :+: (C1 (MetaCons "FocusedWorkspaceBorder" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "ActiveWorkspaceText" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "ActiveWorkspaceBg" PrefixI False) (U1 :: Type -> Type))))) :+: (((C1 (MetaCons "ActiveWorkspaceBorder" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "InactiveWorkspaceText" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "InactiveWorkspaceBg" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "InactiveWorkspaceBorder" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UrgentWorkspaceText" PrefixI False) (U1 :: Type -> Type)))) :+: ((C1 (MetaCons "UrgentWorkspaceBg" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "UrgentWorkspaceBorder" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "BindingModeText" PrefixI False) (U1 :: Type -> Type))) :+: (C1 (MetaCons "BindingModeBg" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "BindingModeBorder" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UnknownBarPart" PrefixI False) (U1 :: Type -> Type))))))

data VersionReply Source #

Version Reply

Instances
Eq VersionReply Source # 
Instance details

Defined in I3IPC.Reply

Show VersionReply Source # 
Instance details

Defined in I3IPC.Reply

Generic VersionReply Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep VersionReply :: Type -> Type #

ToJSON VersionReply Source # 
Instance details

Defined in I3IPC.Reply

FromJSON VersionReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep VersionReply Source # 
Instance details

Defined in I3IPC.Reply

data BindingModesReply Source #

BindingModes Reply The reply consists of an array of all currently configured binding modes.

Constructors

BindingModesReply !(Vector Text) 

data ConfigReply Source #

Config Reply The config reply is a map which currently only contains the "config" member, which is a string containing the config file as loaded by i3 most recently.

Constructors

ConfigReply 

Fields

Instances
Eq ConfigReply Source # 
Instance details

Defined in I3IPC.Reply

Show ConfigReply Source # 
Instance details

Defined in I3IPC.Reply

Generic ConfigReply Source # 
Instance details

Defined in I3IPC.Reply

Associated Types

type Rep ConfigReply :: Type -> Type #

ToJSON ConfigReply Source # 
Instance details

Defined in I3IPC.Reply

FromJSON ConfigReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep ConfigReply Source # 
Instance details

Defined in I3IPC.Reply

type Rep ConfigReply = D1 (MetaData "ConfigReply" "I3IPC.Reply" "i3ipc-0.2.0.0-2YNjrOd0NLg9KCfnA0qdC7" False) (C1 (MetaCons "ConfigReply" PrefixI True) (S1 (MetaSel (Just "c_config") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)))