_bspc() {
local commands='window desktop monitor query pointer restore control config quit'
- local settings='rule_command status_prefix focused_border_color active_border_color normal_border_color presel_border_color focused_locked_border_color active_locked_border_color normal_locked_border_color focused_sticky_border_color normal_sticky_border_color focused_private_border_color active_private_border_color normal_private_border_color urgent_border_color focused_frame_opacity active_frame_opacity normal_frame_opacity border_width window_gap top_padding right_padding bottom_padding left_padding split_ratio growth_factor borderless_monocle gapless_monocle focus_follows_pointer pointer_follows_monitor apply_floating_atom auto_alternate auto_cancel history_aware_focus ignore_ewmh_focus'
+ local settings='rule_command status_prefix focused_border_color active_border_color normal_border_color presel_border_color focused_locked_border_color active_locked_border_color normal_locked_border_color focused_sticky_border_color normal_sticky_border_color focused_private_border_color active_private_border_color normal_private_border_color urgent_border_color focused_frame_opacity active_frame_opacity normal_frame_opacity border_width window_gap top_padding right_padding bottom_padding left_padding split_ratio growth_factor borderless_monocle gapless_monocle focus_follows_pointer pointer_follows_monitor apply_floating_atom auto_alternate auto_cancel history_aware_focus ignore_ewmh_focus remove_disabled_monitor'
COMPREPLY=()
_bspc() {
local -a commands settings
commands=('window' 'desktop' 'monitor' 'query' 'pointer' 'restore' 'control' 'config' 'quit')
- settings=('rule_command' 'status_prefix' 'focused_border_color' 'active_border_color' 'normal_border_color' 'presel_border_color' 'focused_locked_border_color' 'active_locked_border_color' 'normal_locked_border_color' 'focused_sticky_border_color' 'normal_sticky_border_color' 'focused_private_border_color' 'active_private_border_color' 'normal_private_border_color' 'urgent_border_color' 'focused_frame_opacity' 'active_frame_opacity' 'normal_frame_opacity' 'border_width' 'window_gap' 'top_padding' 'right_padding' 'bottom_padding' 'left_padding' 'split_ratio' 'growth_factor' 'borderless_monocle' 'gapless_monocle' 'focus_follows_pointer' 'pointer_follows_monitor' 'apply_floating_atom' 'auto_alternate' 'auto_cancel' 'history_aware_focus' 'ignore_ewmh_focus')
+ settings=('rule_command' 'status_prefix' 'focused_border_color' 'active_border_color' 'normal_border_color' 'presel_border_color' 'focused_locked_border_color' 'active_locked_border_color' 'normal_locked_border_color' 'focused_sticky_border_color' 'normal_sticky_border_color' 'focused_private_border_color' 'active_private_border_color' 'normal_private_border_color' 'urgent_border_color' 'focused_frame_opacity' 'active_frame_opacity' 'normal_frame_opacity' 'border_width' 'window_gap' 'top_padding' 'right_padding' 'bottom_padding' 'left_padding' 'split_ratio' 'growth_factor' 'borderless_monocle' 'gapless_monocle' 'focus_follows_pointer' 'pointer_follows_monitor' 'apply_floating_atom' 'auto_alternate' 'auto_cancel' 'history_aware_focus' 'ignore_ewmh_focus' 'remove_disabled_monitor')
if (( CURRENT == 2 )) ; then
_values 'command' "$commands[@]"
elif (( CURRENT == 3 )) ; then
.\" Title: bspwm
.\" Author: [see the "Author" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 11/08/2013
+.\" Date: 11/10/2013
.\" Manual: Bspwm Manual
.\" Source: Bspwm 0.8.6
.\" Language: English
.\"
-.TH "BSPWM" "1" "11/08/2013" "Bspwm 0\&.8\&.6" "Bspwm Manual"
+.TH "BSPWM" "1" "11/10/2013" "Bspwm 0\&.8\&.6" "Bspwm Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.RS 4
Ignore EWMH requests to focus a window\&.
.RE
+.PP
+\fIremove_disabled_monitor\fR
+.RS 4
+Consider disabled monitors as disconnected\&.
+.RE
.SS "Monitor Settings"
.PP
\fItop_padding\fR, \fIright_padding\fR, \fIbottom_padding\fR, \fIleft_padding\fR
'ignore_ewmh_focus'::
Ignore EWMH requests to focus a window.
+'remove_disabled_monitor'::
+ Consider disabled monitors as disconnected.
+
Monitor Settings
~~~~~~~~~~~~~~~~
SETBOOL(auto_cancel)
SETBOOL(history_aware_focus)
SETBOOL(ignore_ewmh_focus)
+ SETBOOL(remove_disabled_monitor)
#undef SETBOOL
} else {
return false;
GETBOOL(auto_cancel)
GETBOOL(history_aware_focus)
GETBOOL(ignore_ewmh_focus)
+ GETBOOL(remove_disabled_monitor)
#undef GETBOOL
else
return false;
}
}
free(cir);
- } else if (info->connection != XCB_RANDR_CONNECTION_DISCONNECTED) {
+ } else if (!remove_disabled_monitor && info->connection != XCB_RANDR_CONNECTION_DISCONNECTED) {
m = get_monitor_by_id(outputs[i]);
if (m != NULL)
m->wired = true;
auto_cancel = AUTO_CANCEL;
history_aware_focus = HISTORY_AWARE_FOCUS;
ignore_ewmh_focus = IGNORE_EWMH_FOCUS;
+ remove_disabled_monitor = REMOVE_DISABLED_MONITOR;
}
#define AUTO_CANCEL false
#define APPLY_FLOATING_ATOM false
#define IGNORE_EWMH_FOCUS false
+#define REMOVE_DISABLED_MONITOR false
char rule_command[MAXLEN];
char status_prefix[MAXLEN];
bool auto_cancel;
bool history_aware_focus;
bool ignore_ewmh_focus;
+bool remove_disabled_monitor;
void run_config(void);
void load_settings(void);