]> git.lizzy.rs Git - bspwm.git/blobdiff - settings.h
Set proper socket option to allow fast restart
[bspwm.git] / settings.h
index 34a193fc92f9627bb2b7a5f348ec3eae3d63ffc0..ecf9a410f5851fe6e627dde1c602861f074f3361 100644 (file)
-#ifndef _SETTINGS_H
-#define _SETTINGS_H
+/* * Copyright (c) 2012-2013 Bastien Dejean
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ *  * Redistributions of source code must retain the above copyright notice, this
+ * list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation and/or
+ * other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
 
-#include <lua.h>
-#include <lualib.h>
-#include <lauxlib.h>
-#include <xcb/xcb.h>
-#include <xcb/xcb_event.h>
-#include "helpers.h"
+#ifndef BSPWM_SETTINGS_H
+#define BSPWM_SETTINGS_H
+
+#include "types.h"
 
 #define WM_NAME             "bspwm"
-#define CONFIG_FILE         ".bspwmrc"
+#define CONFIG_NAME         WM_NAME "rc"
+#define CONFIG_HOME_ENV     "XDG_CONFIG_HOME"
+#define RULE_COMMAND        "/bin/true"
+#define STATUS_PREFIX       "W"
 
-#define OUTER_BORDER_WIDTH  2
-#define MAIN_BORDER_WIDTH   1
-#define INNER_BORDER_WIDTH  2
-#define SPLIT_RATIO         0.5
+#define FOCUSED_BORDER_COLOR          "#7E7F89"
+#define ACTIVE_BORDER_COLOR           "#545350"
+#define NORMAL_BORDER_COLOR           "#3F3E3B"
+#define PRESEL_BORDER_COLOR           "#E8E8F4"
+#define FOCUSED_LOCKED_BORDER_COLOR   "#C7B579"
+#define ACTIVE_LOCKED_BORDER_COLOR    "#545350"
+#define NORMAL_LOCKED_BORDER_COLOR    "#3F3E3B"
+#define FOCUSED_STICKY_BORDER_COLOR   "#E3A5DA"
+#define ACTIVE_STICKY_BORDER_COLOR    "#545350"
+#define NORMAL_STICKY_BORDER_COLOR    "#3F3E3B"
+#define FOCUSED_PRIVATE_BORDER_COLOR  "#42CAD9"
+#define ACTIVE_PRIVATE_BORDER_COLOR   "#5C5955"
+#define NORMAL_PRIVATE_BORDER_COLOR   "#34322E"
+#define URGENT_BORDER_COLOR           "#EFA29A"
 
-#define WINDOW_GAP          6
-#define TOP_PADDING         0
-#define BOTTOM_PADDING      0
-#define LEFT_PADDING        0
-#define RIGHT_PADDING       0
+#define FOCUSED_FRAME_OPACITY       0.5
+#define ACTIVE_FRAME_OPACITY        0.25
+#define NORMAL_FRAME_OPACITY        0.125
 
-#define ADAPTIVE_WINDOW_GAP     true
-#define ADAPTIVE_WINDOW_BORDER  true
+#define SPLIT_RATIO    0.5
+#define GROWTH_FACTOR  1.1
 
-#define NORMAL_BORDER_COLOR  "#333333"
-#define ACTIVE_BORDER_COLOR  "#DDDDDD"
-#define INNER_BORDER_COLOR   "#111111"
-#define OUTER_BORDER_COLOR   "#222222"
-#define PRESEL_BORDER_COLOR  "#331122"
-#define LOCKED_BORDER_COLOR  "#331122"
+#define HISTORY_AWARE_FOCUS      false
+#define BORDERLESS_MONOCLE       false
+#define GAPLESS_MONOCLE          false
+#define FOCUS_FOLLOWS_POINTER    false
+#define POINTER_FOLLOWS_MONITOR  false
+#define AUTO_ALTERNATE           false
+#define AUTO_CANCEL              false
+#define APPLY_FLOATING_ATOM      false
+#define IGNORE_EWMH_FOCUS        false
 
-char normal_border_color[MAXLEN];
+char rule_command[MAXLEN];
+char status_prefix[MAXLEN];
+
+char focused_border_color[MAXLEN];
 char active_border_color[MAXLEN];
-char inner_border_color[MAXLEN];
-char outer_border_color[MAXLEN];
+char normal_border_color[MAXLEN];
 char presel_border_color[MAXLEN];
-char locked_border_color[MAXLEN];
-
-char wm_name[MAXLEN];
-
-uint32_t normal_border_color_pxl;
-uint32_t active_border_color_pxl;
-uint32_t inner_border_color_pxl;
-uint32_t outer_border_color_pxl;
-uint32_t presel_border_color_pxl;
-uint32_t locked_border_color_pxl;
-
-int inner_border_width;
-int main_border_width;
-int outer_border_width;
+char focused_locked_border_color[MAXLEN];
+char active_locked_border_color[MAXLEN];
+char normal_locked_border_color[MAXLEN];
+char focused_sticky_border_color[MAXLEN];
+char active_sticky_border_color[MAXLEN];
+char normal_sticky_border_color[MAXLEN];
+char focused_private_border_color[MAXLEN];
+char active_private_border_color[MAXLEN];
+char normal_private_border_color[MAXLEN];
+char urgent_border_color[MAXLEN];
 
-int border_width;
+double focused_frame_opacity;
+double active_frame_opacity;
+double normal_frame_opacity;
 
-int window_gap;
-int top_padding;
-int bottom_padding;
-int left_padding;
-int right_padding;
+double split_ratio;
+double growth_factor;
 
-bool adaptive_window_border;
-bool adaptive_window_gap;
+bool borderless_monocle;
+bool gapless_monocle;
+bool focus_follows_pointer;
+bool pointer_follows_monitor;
+bool apply_floating_atom;
+bool auto_alternate;
+bool auto_cancel;
+bool history_aware_focus;
+bool ignore_ewmh_focus;
 
+void run_config(void);
 void load_settings(void);
-void apply_settings(lua_State *);
 
 #endif