*
* include/config.h: Contains all structs/variables for the configurable
* part of i3 as well as functions handling the configuration file (calling
- * the parser (src/cfgparse.y) with the correct path, switching key bindings
- * mode).
+ * the parser (src/config_parse.c) with the correct path, switching key
+ * bindings mode).
*
*/
-#ifndef _CONFIG_H
-#define _CONFIG_H
+#ifndef I3_CONFIG_H
+#define I3_CONFIG_H
#include <stdbool.h>
#include "queue.h"
int default_layout;
int container_stack_limit;
int container_stack_limit_value;
+ int default_border_width;
/** Default orientation for new containers */
int default_orientation;
* It is not planned to add any different focus models. */
bool disable_focus_follows_mouse;
- /** Remove vertical borders if they are adjacent to the screen edge.
+ /** Remove borders if they are adjacent to the screen edge.
* This is useful if you are reaching scrollbar on the edge of the
- * screen. By default, this is disabled. */
- bool hide_edge_borders;
+ * screen or do not want to waste a single pixel of displayspace.
+ * By default, this is disabled. */
+ adjacent_t hide_edge_borders;
/** By default, a workspace bar is drawn at the bottom of the screen.
* If you want to have a more fancy bar, it is recommended to replace
* between two workspaces. */
bool workspace_auto_back_and_forth;
+ /** By default, urgency is cleared immediately when switching to another
+ * workspace leads to focusing the con with the urgency hint. When having
+ * multiple windows on that workspace, the user needs to guess which
+ * application raised the event. To prevent this, the reset of the urgency
+ * flag can be delayed using an urgency timer. */
+ float workspace_urgency_timer;
+
/** The default border style for new windows. */
border_style_t default_border;
/** What should happen when a new popup is opened during fullscreen mode */
enum {
- PDF_LEAVE_FULLSCREEN = 0,
- PDF_IGNORE = 1
+ /* display (and focus) the popup when it belongs to the fullscreen
+ * window only. */
+ PDF_SMART = 0,
+
+ /* leave fullscreen mode unconditionally */
+ PDF_LEAVE_FULLSCREEN = 1,
+
+ /* just ignore the popup, that is, don’t map it */
+ PDF_IGNORE = 2,
} popup_during_fullscreen;
};
* or NULL if no such binding exists.
*
*/
-Binding *get_binding(uint16_t modifiers, xcb_keycode_t keycode);
+Binding *get_binding(uint16_t modifiers, bool key_release, xcb_keycode_t keycode);
/**
* Kills the configerror i3-nagbar process, if any.
*/
void kill_configerror_nagbar(bool wait_for_it);
-/* prototype for src/cfgparse.y */
-void parse_file(const char *f);
-
#endif