]> git.lizzy.rs Git - bspwm.git/blob - settings.c
Set proper socket option to allow fast restart
[bspwm.git] / settings.c
1 /* * Copyright (c) 2012-2013 Bastien Dejean
2  * All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without modification,
5  * are permitted provided that the following conditions are met:
6  *
7  *  * Redistributions of source code must retain the above copyright notice, this
8  * list of conditions and the following disclaimer.
9  *  * Redistributions in binary form must reproduce the above copyright notice,
10  * this list of conditions and the following disclaimer in the documentation and/or
11  * other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
17  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
18  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
19  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
20  * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
22  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23  */
24
25 #include <unistd.h>
26 #include "bspwm.h"
27 #include "settings.h"
28
29 void run_config(void)
30 {
31     if (fork() == 0) {
32         if (dpy != NULL)
33             close(xcb_get_file_descriptor(dpy));
34         setsid();
35         execl(config_path, config_path, NULL);
36         err("Couldn't execute the configuration file.\n");
37     }
38 }
39
40 void load_settings(void)
41 {
42     snprintf(rule_command, sizeof(rule_command), "%s", RULE_COMMAND);
43     snprintf(status_prefix, sizeof(status_prefix), "%s", STATUS_PREFIX);
44
45     snprintf(normal_border_color, sizeof(normal_border_color), "%s", NORMAL_BORDER_COLOR);
46     snprintf(focused_border_color, sizeof(focused_border_color), "%s", FOCUSED_BORDER_COLOR);
47     snprintf(active_border_color, sizeof(active_border_color), "%s", ACTIVE_BORDER_COLOR);
48     snprintf(presel_border_color, sizeof(presel_border_color), "%s", PRESEL_BORDER_COLOR);
49     snprintf(focused_locked_border_color, sizeof(focused_locked_border_color), "%s", FOCUSED_LOCKED_BORDER_COLOR);
50     snprintf(active_locked_border_color, sizeof(active_locked_border_color), "%s", ACTIVE_LOCKED_BORDER_COLOR);
51     snprintf(normal_locked_border_color, sizeof(normal_locked_border_color), "%s", NORMAL_LOCKED_BORDER_COLOR);
52     snprintf(focused_sticky_border_color, sizeof(focused_sticky_border_color), "%s", FOCUSED_STICKY_BORDER_COLOR);
53     snprintf(active_sticky_border_color, sizeof(active_sticky_border_color), "%s", ACTIVE_STICKY_BORDER_COLOR);
54     snprintf(normal_sticky_border_color, sizeof(normal_sticky_border_color), "%s", NORMAL_STICKY_BORDER_COLOR);
55     snprintf(focused_private_border_color, sizeof(focused_private_border_color), "%s", FOCUSED_PRIVATE_BORDER_COLOR);
56     snprintf(active_private_border_color, sizeof(active_private_border_color), "%s", ACTIVE_PRIVATE_BORDER_COLOR);
57     snprintf(normal_private_border_color, sizeof(normal_private_border_color), "%s", NORMAL_PRIVATE_BORDER_COLOR);
58     snprintf(urgent_border_color, sizeof(urgent_border_color), "%s", URGENT_BORDER_COLOR);
59
60     focused_frame_opacity = FOCUSED_FRAME_OPACITY;
61     active_frame_opacity = ACTIVE_FRAME_OPACITY;
62     normal_frame_opacity = NORMAL_FRAME_OPACITY;
63
64     split_ratio = SPLIT_RATIO;
65     growth_factor = GROWTH_FACTOR;
66
67     borderless_monocle = BORDERLESS_MONOCLE;
68     gapless_monocle = GAPLESS_MONOCLE;
69     focus_follows_pointer = FOCUS_FOLLOWS_POINTER;
70     pointer_follows_monitor = POINTER_FOLLOWS_MONITOR;
71     apply_floating_atom = APPLY_FLOATING_ATOM;
72     auto_alternate = AUTO_ALTERNATE;
73     auto_cancel = AUTO_CANCEL;
74     history_aware_focus = HISTORY_AWARE_FOCUS;
75     ignore_ewmh_focus = IGNORE_EWMH_FOCUS;
76 }