gri3-wm/i3bar/include
haptix@web.de e3913093b6 introduced i3 command for changing the hidden state and the mode of i3bar
The hidden_state and mode of each i3bar instance can now be controlled from within i3.
Therefore, two new i3 command were introduced:
    _
    bar hidden_state show|hide|toggle [<bar_id>]

    show: always show the bar
    hide: normal hide mode
    toggle: toggle between show and hide (individually for each bar)
    _
    bar mode dock|hide|invisible|toggle [<bar_id>]

    hide,dock: like before
    invisible: always keep the bar hidden
    toggle: toggle between dock and hide (individually for each bar)

This patch introduces a hidden_state ("hidden_state hide|show") in the
barconfig, which indicates the current hidden_state of each i3bar
instance. It only affects the bar when in hide mode. Additionally, a new
invisible mode was introduced. In order to change the hidden_state or
mode of the bar from i3, a barconfig-update event was introduced, for
which a bar can subscribe and the bar then gets notified about the
currently set hidden_state and mode in its barconfig.

For convenience, an id field ("id <bar_id>") was added to the barconfig, where one can
set the desired id for the corresponding bar. If the id is not specified, i3 will
deterministically choose an id; otherwise, with the previous random approach for finding
a new id, which is actually not shared with i3bar, as it would determine its id on
startup, the event-subscription would be destroyed on reload. Still, this issue remains
when manually changing the bar_id in the config and then reloading.

fixes #833, #651
2013-05-25 23:00:36 +02:00
..
child.h Add click events to i3bar 2013-03-21 23:55:30 +01:00
common.h Add click events to i3bar 2013-03-21 23:55:30 +01:00
config.h introduced i3 command for changing the hidden state and the mode of i3bar 2013-05-25 23:00:36 +02:00
ipc.h Use (void) instead of () for functions without args 2012-08-23 19:34:37 +02:00
mode.h i3bar: Add current binding mode indicator 2012-11-16 13:44:29 +01:00
outputs.h Use (void) instead of () for functions without args 2012-08-23 19:34:37 +02:00
parse_json_header.h i3bar: Allow child to specify signals to use 2012-09-22 15:13:21 +02:00
trayclients.h normalize file headers across **/*.{h,c} 2011-10-25 21:19:38 +01:00
util.h i3bar: Fully parse the JSON header 2012-09-22 15:13:21 +02:00
workspaces.h Use (void) instead of () for functions without args 2012-08-23 19:34:37 +02:00
xcb.h Separator color via config; separator width and on/off via ipc 2013-02-18 10:44:44 +01:00
xcb_atoms.def i3bar: set _NET_SYSTEM_TRAY_COLORS for symbolic icons (gtk3+) 2013-01-02 23:14:30 +01:00