X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Fconfiguration.h;h=3eccca4cef604d3ebbd89ab4650ffb682d075700;hb=fe6b3b74748c711be27459ad61dfe6f1909b4af2;hp=4f6e5ce833be7e80ac36422efc8537e4e8ba68d5;hpb=a6d8ed9b1ac6efa507d65b752758522bcfcc5213;p=i3%2Fi3 diff --git a/include/configuration.h b/include/configuration.h index 4f6e5ce8..3eccca4c 100644 --- a/include/configuration.h +++ b/include/configuration.h @@ -137,15 +137,24 @@ struct Config { * comes with i3. Thus, you can turn it off entirely. */ bool disable_workspace_bar; - /** Think of the following layout: Horizontal workspace with a tabbed - * con on the left of the screen and a terminal on the right of the - * screen. You are in the second container in the tabbed container and - * focus to the right. By default, i3 will set focus to the terminal on - * the right. If you are in the first container in the tabbed container - * however, focusing to the left will wrap. This option forces i3 to - * always wrap, which will result in you having to use "focus parent" - * more often. */ - bool force_focus_wrapping; + /** When focus wrapping is enabled (the default), attempting to + * move focus past the edge of the screen (in other words, in a + * direction in which there are no more containers to focus) will + * cause the focus to wrap to the opposite edge of the current + * container. When it is disabled, nothing happens; the current + * focus is preserved. + * + * Additionally, focus wrapping may be forced. Think of the + * following layout: Horizontal workspace with a tabbed con on the + * left of the screen and a terminal on the right of the + * screen. You are in the second container in the tabbed container + * and focus to the right. By default, i3 will set focus to the + * terminal on the right. If you are in the first container in the + * tabbed container however, focusing to the left will + * wrap. Setting focus_wrapping to FOCUS_WRAPPING_FORCE forces i3 + * to always wrap, which will result in you having to use "focus + * parent" more often. */ + focus_wrapping_t focus_wrapping; /** By default, use the RandR API for multi-monitor setups. * Unfortunately, the nVidia binary graphics driver doesn't support @@ -280,16 +289,7 @@ struct Barconfig { S_SHOW = 1 } hidden_state; /** Bar modifier (to show bar when in hide mode). */ - enum { - M_NONE = 0, - M_CONTROL = 1, - M_SHIFT = 2, - M_MOD1 = 3, - M_MOD2 = 4, - M_MOD3 = 5, - M_MOD4 = 6, - M_MOD5 = 7 - } modifier; + uint32_t modifier; TAILQ_HEAD(bar_bindings_head, Barbinding) bar_bindings; @@ -322,6 +322,10 @@ struct Barconfig { * 'strip_workspace_numbers yes'. */ bool strip_workspace_numbers; + /** Strip workspace name? Configuration option is + * 'strip_workspace_name yes'. */ + bool strip_workspace_name; + /** Hide mode button? Configuration option is 'binding_mode_indicator no' * but we invert the bool for the same reason as hide_workspace_buttons.*/ bool hide_binding_mode_indicator; @@ -375,6 +379,9 @@ struct Barbinding { /** The command which is to be executed for this button. */ char *command; + /** If true, the command will be executed after the button is released. */ + bool release; + TAILQ_ENTRY(Barbinding) bindings; };