12#define PCRE2_CODE_UNIT_WIDTH 8
14#define SN_API_NOT_YET_FROZEN 1
15#include <libsn/sn-launcher.h>
20#include <cairo/cairo.h>
393 xcb_randr_output_t
id;
struct pending_marks * marks
struct outputs_head outputs
struct all_cons_head all_cons
struct autostarts_always_head autostarts_always
struct autostarts_head autostarts
struct assignments_head assignments
struct ws_assignments_head ws_assignments
struct bindings_head * bindings
@ SMART_GAPS_INVERSE_OUTER
i3_xkb_group_mask_t
Bitmask for matching XCB_XKB_GROUP_1 to XCB_XKB_GROUP_4.
uint32_t i3_event_state_mask_t
The lower 16 bits contain a xcb_key_but_mask_t, the higher 16 bits contain an i3_xkb_group_mask_t.
warping_t
Mouse pointer warping modes.
layout_t
Container layouts.
focus_wrapping_t
Focus wrapping modes.
@ FOCUS_WRAPPING_WORKSPACE
adjacent_t
describes if the window is adjacent to the output (physical screen) edges.
fullscreen_mode_t
Fullscreen modes.
input_type_t
Binding input types.
kill_window_t
parameter to specify whether tree_close_internal() and x_window_kill() should kill only this specific...
struct _i3String i3String
Opaque data structure for storing strings.
Part of the struct Config.
Stores a rectangle, for example the size of a window, the child window etc.
Stores the reserved pixels on each screen edge read from a _NET_WM_STRUT_PARTIAL.
Stores a width/height pair, used as part of deco_render_params to check whether the rects width/heigh...
Stores the parameters for rendering a window decoration.
struct Colortriple * color
struct width_height con_rect
struct width_height con_window_rect
Stores which workspace (by name or number) goes to which output and its gaps config.
TAILQ_ENTRY(Workspace_Assignment) ws_assignments
SLIST_ENTRY(Ignore_Event) ignore_events
Stores internal information about a startup sequence, like the workspace it was initiated on.
TAILQ_ENTRY(Startup_Sequence) sequences
char * id
startup ID for this sequence, generated by libstartup-notification
time_t delete_at
time at which this sequence should be deleted (after it was marked as completed)
char * workspace
workspace on which this startup was initiated
SnLauncherContext * context
libstartup-notification context for this launch
Regular expression wrapper.
Stores a resolved keycode (from a keysym), including the modifier mask.
i3_event_state_mask_t modifiers
TAILQ_ENTRY(Binding_Keycode) keycodes
Holds a keybinding, consisting of a keycode combined with modifiers and the command which is executed...
bool whole_window
If this is true for a mouse binding, the binding should be executed when the button is pressed over a...
@ B_UPON_KEYRELEASE_IGNORE_MODS
char * command
Command, like in command mode.
bool border
If this is true for a mouse binding, the binding should be executed when the button is pressed over t...
uint32_t keycode
Keycode to bind.
TAILQ_HEAD(keycodes_head, Binding_Keycode) keycodes_head
Only in use if symbol != NULL.
char * symbol
Symbol the user specified in configfile, if any.
enum Binding::@10 release
If true, the binding should be executed upon a KeyRelease event, not a KeyPress (the default).
bool exclude_titlebar
If this is true for a mouse binding, the binding should only be executed if the button press was not ...
TAILQ_ENTRY(Binding) bindings
i3_event_state_mask_t event_state_mask
Bitmask which is applied against event->state for KeyPress and KeyRelease events to determine whether...
Holds a command specified by either an:
TAILQ_ENTRY(Autostart) autostarts
bool no_startup_id
no_startup_id flag for start_application().
TAILQ_ENTRY(Autostart) autostarts_always
char * command
Command, like in command mode.
SLIST_ENTRY(output_name) names
An Output is a physical output on your graphics driver.
Con * con
Pointer to the Con which represents this output.
bool changed
Internal flags, necessary for querying RandR screens (happens in two stages)
bool active
Whether the output is currently active (has a CRTC attached with a valid mode)
TAILQ_ENTRY(xoutput) outputs
xcb_randr_output_t id
Output id, so that we can requery the output directly later.
Rect rect
x, y, width, height
SLIST_HEAD(names_head, output_name) names_head
List of names for the output.
A 'Window' is a type which contains an xcb_window_t and all the related information (hints like _NET_...
bool uses_net_wm_name
Whether the application used _NET_WM_NAME.
bool input_shaped
The window has a nonrectangular input shape.
struct timeval urgent
When this window was marked urgent.
i3String * name
The name of the window.
cairo_surface_t * icon
Window icon, as Cairo surface.
bool name_x_changed
Flag to force re-rendering the decoration upon changes.
enum Window::@11 dock
Whether the window says it is a dock window.
char * machine
WM_CLIENT_MACHINE of the window.
xcb_atom_t window_type
The _NET_WM_WINDOW_TYPE for this window.
Assignment ** ran_assignments
bool doesnt_accept_focus
Whether this window accepts focus.
bool shaped
The window has a nonrectangular shape.
bool needs_take_focus
Whether the application needs to receive WM_TAKE_FOCUS.
xcb_window_t transient_for
char * role
The WM_WINDOW_ROLE of this window (for example, the pidgin buddy window sets "buddy list").
uint32_t wm_desktop
The _NET_WM_DESKTOP for this window.
struct reservedpx reserved
Pixels the window reserves.
xcb_window_t leader
Holds the xcb_window_t (just an ID) for the leader window (logical parent for toolwindows and similar...
uint16_t depth
Depth of the window.
uint32_t nr_assignments
Pointers to the Assignments which were already ran for this Window (assignments run only once)
A "match" is a data structure which acts like a mask or expression to match certain windows or not.
struct regex * window_role
struct regex * application
enum Match::@14 window_mode
TAILQ_ENTRY(Match) matches
enum Match::@15 insert_where
An Assignment makes specific windows go to a specific workspace/output or run a command for that wind...
Match match
the criteria to check if a window matches
union Assignment::@17 dest
destination workspace/command/output, depending on the type
TAILQ_ENTRY(Assignment) assignments
enum Assignment::@16 type
type of this assignment:
TAILQ_ENTRY(mark_t) marks
A 'Con' represents everything from the X11 root window down to a single X11 window.
enum Con::@20 scratchpad_state
layout_t workspace_layout
TAILQ_ENTRY(Con) all_cons
layout_t last_split_layout
gaps_t gaps
Only applicable for containers of type CT_WORKSPACE.
border_style_t max_user_border_style
TAILQ_HEAD(floating_head, Con) floating_head
TAILQ_HEAD(nodes_head, Con) nodes_head
TAILQ_ENTRY(Con) floating_windows
int num
the workspace number, if this Con is of type CT_WORKSPACE and the workspace is not a named workspace ...
struct ev_timer * urgency_timer
uint8_t ignore_unmap
This counter contains the number of UnmapNotify events for this container (or, more precisely,...
int window_icon_padding
Whether the window icon should be displayed, and with what padding.
char * title_format
The format with which the window's name should be displayed.
TAILQ_HEAD(marks_head, mark_t) marks_head
border_style_t border_style
TAILQ_HEAD(focus_head, Con) focus_head
struct Rect geometry
the geometry this window requested when getting mapped
struct deco_render_params * deco_render_params
Cache for the decoration rendering.
void(* on_remove_child)(Con *)
callbacks
TAILQ_HEAD(swallow_head, Match) swallow_head
enum Con::@19 floating
floating? (= not in tiling layout) This cannot be simply a bool because we want to keep track of whet...
fullscreen_mode_t fullscreen_mode