]> git.lizzy.rs Git - bspwm.git/commitdiff
Add monitor padding settings
authorBastien Dejean <nihilhill@gmail.com>
Sun, 15 Sep 2013 09:51:12 +0000 (11:51 +0200)
committerBastien Dejean <nihilhill@gmail.com>
Sun, 15 Sep 2013 09:51:12 +0000 (11:51 +0200)
contrib/bash_completion
contrib/zsh_completion
doc/bspwm.1
doc/bspwm.1.txt
messages.c

index cf1fa677751ee3c2f9e3dfdd93460d9a58a70222..0a04d33d92a9f807393e5a196f32319cde829eaf 100644 (file)
@@ -1,7 +1,7 @@
 _bspc() {
     local commands='window desktop monitor query pointer rule restore control config quit'
 
-    local settings='focused_border_color active_border_color normal_border_color presel_border_color focused_locked_border_color active_locked_border_color normal_locked_border_color urgent_border_color border_width window_gap split_ratio borderless_monocle gapless_monocle focus_follows_pointer pointer_follows_monitor apply_floating_atom auto_alternate auto_cancel history_aware_focus'
+    local settings='focused_border_color active_border_color normal_border_color presel_border_color focused_locked_border_color active_locked_border_color normal_locked_border_color urgent_border_color border_width window_gap top_padding right_padding bottom_padding left_padding split_ratio borderless_monocle gapless_monocle focus_follows_pointer pointer_follows_monitor apply_floating_atom auto_alternate auto_cancel history_aware_focus'
 
     COMPREPLY=()
 
index 7eb5c4ad9fa89c921b05150f6ef15c205106b66b..f270186b102539924b0530d7fd0a3ae56d6a3e9f 100644 (file)
@@ -3,7 +3,7 @@
 _bspc() {
     local -a commands settings
     commands=('window' 'desktop' 'monitor' 'query' 'pointer' 'rule' 'restore' 'control' 'config' 'quit')
-    settings=('focused_border_color' 'active_border_color' 'normal_border_color' 'presel_border_color' 'focused_locked_border_color' 'active_locked_border_color' 'normal_locked_border_color' 'urgent_border_color' 'border_width' 'window_gap' 'split_ratio' 'borderless_monocle' 'gapless_monocle' 'focus_follows_pointer' 'pointer_follows_monitor' 'apply_floating_atom' 'auto_alternate' 'auto_cancel' 'history_aware_focus')
+    settings=('focused_border_color' 'active_border_color' 'normal_border_color' 'presel_border_color' 'focused_locked_border_color' 'active_locked_border_color' 'normal_locked_border_color' 'urgent_border_color' 'border_width' 'window_gap' 'top_padding' 'right_padding' 'bottom_padding' 'left_padding' 'split_ratio' 'borderless_monocle' 'gapless_monocle' 'focus_follows_pointer' 'pointer_follows_monitor' 'apply_floating_atom' 'auto_alternate' 'auto_cancel' 'history_aware_focus')
     if (( CURRENT == 2 )) ; then
         _values 'command' "$commands[@]"
     elif (( CURRENT == 3 )) ; then
index 5cabd6228372848cacd54a0f133c215117b24185..971bec5a3fcf6d98b262d5274ddc865ce1698578 100644 (file)
@@ -2,12 +2,12 @@
 .\"     Title: bspwm
 .\"    Author: [see the "Author" section]
 .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\"      Date: 09/13/2013
+.\"      Date: 09/15/2013
 .\"    Manual: Bspwm Manual
 .\"    Source: Bspwm 0.8
 .\"  Language: English
 .\"
-.TH "BSPWM" "1" "09/13/2013" "Bspwm 0\&.8" "Bspwm Manual"
+.TH "BSPWM" "1" "09/15/2013" "Bspwm 0\&.8" "Bspwm Manual"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -855,6 +855,7 @@ Quit with an optional exit status\&.
 Colors are either X color names or \fI#RRGGBB\fR, booleans are \fItrue\fR or \fIfalse\fR\&.
 .sp
 All the boolean settings are \fIfalse\fR by default\&.
+.SS "Global Settings"
 .PP
 \fIfocused_border_color\fR
 .RS 4
@@ -903,11 +904,6 @@ Color of the border of an urgent window\&.
 Window border width\&.
 .RE
 .PP
-\fIwindow_gap\fR
-.RS 4
-Value of the gap that separates windows\&.
-.RE
-.PP
 \fIsplit_ratio\fR
 .RS 4
 Default split ratio\&.
@@ -962,6 +958,18 @@ Set the value of the
 \fI_BSPWM_FLOATING_WINDOW\fR
 atom of each window according to its floating state\&.
 .RE
+.SS "Monitor Settings"
+.PP
+\fItop_padding\fR, \fIright_padding\fR, \fIbottom_padding\fR, \fIleft_padding\fR
+.RS 4
+Padding space added at the sides of the monitor\&.
+.RE
+.SS "Desktop Settings"
+.PP
+\fIwindow_gap\fR
+.RS 4
+Size of the gap that separates windows\&.
+.RE
 .SH "ENVIRONMENT VARIABLES"
 .PP
 \fIBSPWM_SOCKET\fR
index 0d9875b0d750054cd3ac45067b4b75116644648c..935c9d3a42ac09980e0b9d4d897d8bdc614cec0c 100644 (file)
@@ -525,6 +525,8 @@ Colors are either http://en.wikipedia.org/wiki/X11_color_names[X color names] or
 
 All the boolean settings are 'false' by default.
 
+Global Settings
+~~~~~~~~~~~~~~~
 
 'focused_border_color'::
     Color of the border of a focused window of a focused monitor.
@@ -553,9 +555,6 @@ All the boolean settings are 'false' by default.
 'border_width'::
     Window border width.
 
-'window_gap'::
-    Value of the gap that separates windows.
-
 'split_ratio'::
     Default split ratio.
 
@@ -583,6 +582,21 @@ All the boolean settings are 'false' by default.
 'apply_floating_atom'::
     Set the value of the '_BSPWM_FLOATING_WINDOW' atom of each window according to its floating state.
 
+Monitor Settings
+~~~~~~~~~~~~~~~~
+
+'top_padding'::
+'right_padding'::
+'bottom_padding'::
+'left_padding'::
+    Padding space added at the sides of the monitor.
+
+Desktop Settings
+~~~~~~~~~~~~~~~~
+
+'window_gap'::
+    Size of the gap that separates windows.
+
 
 Environment Variables
 ---------------------
index 7f22145cdbc69443c54c4447641b941205fb330c..994b4a68cac14dc1de185a168face4f672c565be 100644 (file)
@@ -738,6 +738,21 @@ bool set_setting(coordinates_t loc, char *name, char *value)
             for (monitor_t *m = mon_head; m != NULL; m = m->next)
                 for (desktop_t *d = m->desk_head; d != NULL; d = d->next)
                     d->window_gap = wg;
+#define MONSET(k) \
+    } else if (streq(#k, name)) { \
+        int v; \
+        if (sscanf(value, "%i", &v) != 1) \
+            return false; \
+        if (loc.monitor != NULL) \
+            loc.monitor->k = v; \
+        else \
+            for (monitor_t *m = mon_head; m!= NULL; m = m->next) \
+                m->k = v;
+    MONSET(top_padding)
+    MONSET(right_padding)
+    MONSET(bottom_padding)
+    MONSET(left_padding)
+#undef MONSET
     } else if (streq("split_ratio", name)) {
         double rat;
         if (sscanf(value, "%lf", &rat) == 1 && rat > 0 && rat < 1)
@@ -807,6 +822,17 @@ bool get_setting(coordinates_t loc, char *name, char* rsp)
             return false;
         else
             snprintf(rsp, BUFSIZ, "%i", loc.desktop->window_gap);
+#define MONGET(k) \
+    else if (streq(#k, name)) \
+        if (loc.monitor == NULL) \
+            return false; \
+        else \
+            snprintf(rsp, BUFSIZ, "%i", loc.monitor->k);
+    MONGET(top_padding)
+    MONGET(right_padding)
+    MONGET(bottom_padding)
+    MONGET(left_padding)
+#undef MONGET
 #define GETCOLOR(s) \
     else if (streq(#s, name)) \
         snprintf(rsp, BUFSIZ, "%s", s);