i3
|
A 'Con' represents everything from the X11 root window down to a single X11 window. More...
#include <data.h>
Public Types | |
enum | { CT_ROOT = 0, CT_OUTPUT = 1, CT_CON = 2, CT_FLOATING_CON = 3, CT_WORKSPACE = 4, CT_DOCKAREA = 5 } |
enum | { CF_NONE = 0, CF_OUTPUT = 1, CF_GLOBAL = 2 } |
enum | { FLOATING_AUTO_OFF = 0, FLOATING_USER_OFF = 1, FLOATING_AUTO_ON = 2, FLOATING_USER_ON = 3 } |
floating? (= not in tiling layout) This cannot be simply a bool because we want to keep track of whether the status was set by the application (by setting _NET_WM_WINDOW_TYPE appropriately) or by the user. More... | |
enum | { SCRATCHPAD_NONE = 0, SCRATCHPAD_FRESH = 1, SCRATCHPAD_CHANGED = 2 } |
Public Member Functions | |
TAILQ_HEAD (floating_head, Con) floating_head | |
TAILQ_HEAD (nodes_head, Con) nodes_head | |
TAILQ_HEAD (focus_head, Con) focus_head | |
TAILQ_HEAD (swallow_head, Match) swallow_head | |
TAILQ_ENTRY (Con) nodes | |
TAILQ_ENTRY (Con) focused | |
TAILQ_ENTRY (Con) all_cons | |
TAILQ_ENTRY (Con) floating_windows | |
Data Fields | |
bool | mapped |
bool | urgent |
uint8_t | ignore_unmap |
This counter contains the number of UnmapNotify events for this container (or, more precisely, for its ->frame) which should be ignored. More... | |
bool | pixmap_recreated |
xcb_window_t | frame |
xcb_pixmap_t | pixmap |
xcb_gcontext_t | pm_gc |
enum Con:: { ... } | type |
int | num |
the workspace number, if this Con is of type CT_WORKSPACE and the workspace is not a named workspace (for named workspaces, num == -1) More... | |
struct Con * | parent |
struct Rect | rect |
struct Rect | window_rect |
struct Rect | deco_rect |
struct Rect | geometry |
the geometry this window requested when getting mapped More... | |
char * | name |
char * | sticky_group |
char * | mark |
double | percent |
double | aspect_ratio |
int | base_width |
int | base_height |
int | border_width |
int | current_border_width |
int | width_increment |
int | height_increment |
struct Window * | window |
struct ev_timer * | urgency_timer |
struct deco_render_params * | deco_render_params |
Cache for the decoration rendering. More... | |
enum Con:: { ... } | fullscreen_mode |
layout_t | layout |
layout_t | last_split_layout |
layout_t | workspace_layout |
border_style_t | border_style |
enum Con:: { ... } | floating |
void(* | on_remove_child )(Con *) |
callbacks More... | |
enum Con:: { ... } | scratchpad_state |
int | old_id |
uint16_t | depth |
A 'Con' represents everything from the X11 root window down to a single X11 window.
anonymous enum |
anonymous enum |
floating? (= not in tiling layout) This cannot be simply a bool because we want to keep track of whether the status was set by the application (by setting _NET_WM_WINDOW_TYPE appropriately) or by the user.
The user’s choice overwrites automatic mode, of course. The order of the values is important because we check with >= FLOATING_AUTO_ON if a client is floating.
Enumerator | |
---|---|
FLOATING_AUTO_OFF | |
FLOATING_USER_OFF | |
FLOATING_AUTO_ON | |
FLOATING_USER_ON |
anonymous enum |
Con::TAILQ_ENTRY | ( | Con | ) |
Con::TAILQ_ENTRY | ( | Con | ) |
Con::TAILQ_ENTRY | ( | Con | ) |
Con::TAILQ_ENTRY | ( | Con | ) |
Con::TAILQ_HEAD | ( | floating_head | , |
Con | |||
) |
Con::TAILQ_HEAD | ( | nodes_head | , |
Con | |||
) |
Con::TAILQ_HEAD | ( | focus_head | , |
Con | |||
) |
Con::TAILQ_HEAD | ( | swallow_head | , |
Match | |||
) |
double Con::aspect_ratio |
Definition at line 511 of file data.h.
Referenced by handle_normal_hints(), and render_con().
int Con::base_height |
Definition at line 515 of file data.h.
Referenced by floating_check_size(), and handle_normal_hints().
int Con::base_width |
Definition at line 514 of file data.h.
Referenced by floating_check_size(), and handle_normal_hints().
border_style_t Con::border_style |
Definition at line 557 of file data.h.
Referenced by cmd_border(), con_border_style(), con_set_border_style(), floating_enable(), handle_configure_request(), json_string(), and render_con().
int Con::border_width |
Definition at line 518 of file data.h.
Referenced by fake_absolute_configure_notify(), floating_check_size(), floating_enable(), handle_configure_request(), manage_window(), render_con(), and restore_geometry().
int Con::current_border_width |
Definition at line 519 of file data.h.
Referenced by con_border_style_rect(), con_set_border_style(), json_int(), and json_string().
struct Rect Con::deco_rect |
Definition at line 494 of file data.h.
Referenced by con_minimum_size(), handle_button_press(), handle_configure_request(), handle_enter_notify(), handle_motion_notify(), render_con(), render_l_output(), x_draw_decoration(), and x_push_node().
struct deco_render_params* Con::deco_render_params |
Cache for the decoration rendering.
Definition at line 531 of file data.h.
Referenced by con_force_split_parents_redraw(), load_configuration(), move_to_output_directed(), tree_move(), tree_split(), and x_draw_decoration().
uint16_t Con::depth |
Definition at line 596 of file data.h.
Referenced by json_end_map(), and json_int().
enum { ... } Con::floating |
Referenced by con_inside_floating(), con_is_floating(), floating_disable(), floating_enable(), and json_string().
xcb_window_t Con::frame |
Definition at line 473 of file data.h.
Referenced by con_by_frame_id(), handle_expose_event(), manage_window(), x_con_init(), x_con_kill(), x_deco_recurse(), x_move_win(), x_push_changes(), x_push_node(), x_push_node_unmaps(), x_raise_con(), x_reinit(), x_reparent_child(), and x_set_name().
enum { ... } Con::fullscreen_mode |
Referenced by _create___i3(), _tree_next(), _workspace_show(), con_fullscreen_permits_focusing(), con_get_fullscreen_con(), con_move_to_workspace(), con_toggle_fullscreen(), create_workspace_on_output(), handle_client_message(), init_ws_for_output(), json_int(), scratchpad_move(), and scratchpad_show().
struct Rect Con::geometry |
the geometry this window requested when getting mapped
Definition at line 496 of file data.h.
Referenced by floating_enable(), handle_configure_request(), json_int(), manage_window(), render_con(), and render_l_output().
int Con::height_increment |
Definition at line 523 of file data.h.
Referenced by cmd_resize_floating(), floating_check_size(), and handle_normal_hints().
uint8_t Con::ignore_unmap |
This counter contains the number of UnmapNotify events for this container (or, more precisely, for its ->frame) which should be ignored.
UnmapNotify events need to be ignored when they are caused by i3 itself, for example when reparenting or when unmapping the window on a workspace change.
Definition at line 469 of file data.h.
Referenced by handle_unmap_notify_event(), x_push_node(), and x_push_node_unmaps().
layout_t Con::last_split_layout |
Definition at line 556 of file data.h.
Referenced by con_set_layout(), con_toggle_layout(), and json_string().
layout_t Con::layout |
Definition at line 556 of file data.h.
Referenced by _create___i3(), _workspace_apply_default_orientation(), cmd_open(), cmd_resize_tiling_width_height(), con_border_style(), con_get_tree_representation(), con_is_split(), con_minimum_size(), con_orientation(), con_set_layout(), con_toggle_layout(), floating_enable(), handle_enter_notify(), handle_motion_notify(), json_string(), output_change_mode(), output_init_con(), render_con(), resize_find_tiling_participants(), route_click(), tiling_resize(), tree_flatten(), tree_init(), tree_split(), workspace_attach_to(), workspace_encapsulate(), ws_force_orientation(), x_draw_decoration(), and x_push_node().
bool Con::mapped |
Definition at line 458 of file data.h.
Referenced by _is_con_mapped(), mark_unmapped(), render_con(), tree_close(), tree_render(), workspace_reassign_sticky(), x_deco_recurse(), x_push_changes(), x_push_node(), and x_push_node_unmaps().
char* Con::mark |
Definition at line 506 of file data.h.
Referenced by cmd_criteria_match_windows(), cmd_mark(), cmd_unmark(), IPC_HANDLER(), and json_string().
char* Con::name |
Definition at line 498 of file data.h.
Referenced by _create___i3(), _workspace_show(), cmd_border(), cmd_criteria_match_windows(), cmd_floating(), cmd_focus(), cmd_fullscreen(), cmd_kill(), cmd_layout(), cmd_layout_toggle(), cmd_mark(), cmd_move_con_to_output(), cmd_move_con_to_workspace(), cmd_move_con_to_workspace_back_and_forth(), cmd_move_con_to_workspace_name(), cmd_move_con_to_workspace_number(), cmd_move_scratchpad(), cmd_move_workspace_to_output(), cmd_rename_workspace(), cmd_scratchpad_show(), cmd_split(), cmd_workspace_number(), con_is_internal(), con_move_to_workspace(), con_on_remove_child(), con_toggle_fullscreen(), create_workspace_on_output(), floating_maybe_reassign_ws(), floating_raise_con(), get_output_of_con(), handle_enter_notify(), handle_focus_in(), init_ws_for_output(), IPC_HANDLER(), json_string(), manage_window(), maybe_back_and_forth(), move_to_output_directed(), output_change_mode(), output_init_con(), randr_query_outputs(), render_con(), route_click(), scratchpad_fix_resolution(), scratchpad_move(), start_application(), tree_flatten(), tree_init(), tree_restore(), workspace_attach_to(), workspace_encapsulate(), workspace_get(), workspace_prev_on_output(), workspace_reassign_sticky(), x_push_changes(), and x_push_node_unmaps().
int Con::num |
the workspace number, if this Con is of type CT_WORKSPACE and the workspace is not a named workspace (for named workspaces, num == -1)
Definition at line 488 of file data.h.
Referenced by _create___i3(), cmd_move_con_to_workspace_number(), cmd_rename_workspace(), cmd_workspace_number(), con_attach(), create_workspace_on_output(), IPC_HANDLER(), json_int(), output_change_mode(), workspace_get(), workspace_next(), workspace_next_on_output(), workspace_prev(), and workspace_prev_on_output().
int Con::old_id |
Definition at line 593 of file data.h.
Referenced by json_end_array(), and json_int().
struct Con* Con::parent |
Definition at line 490 of file data.h.
Referenced by _tree_next(), _workspace_show(), attach_to_workspace(), cmd_focus_level(), cmd_move_direction(), cmd_move_window_to_center(), cmd_move_window_to_position(), cmd_move_workspace_to_output(), cmd_rename_workspace(), cmd_resize_tiling_direction(), cmd_resize_tiling_width_height(), con_attach(), con_border_style(), con_detach(), con_focus(), con_force_split_parents_redraw(), con_fullscreen_permits_focusing(), con_get_next(), con_get_output(), con_get_workspace(), con_inside_floating(), con_inside_focused(), con_move_to_workspace(), con_next_focused(), con_on_remove_child(), con_parent_with_orientation(), con_set_border_style(), con_set_layout(), con_toggle_layout(), con_update_parents_urgency(), floating_disable(), floating_enable(), floating_raise_con(), handle_configure_request(), handle_enter_notify(), handle_focus_in(), insert_con_into(), json_end_map(), level_up(), manage_window(), resize_find_tiling_participants(), resize_graphical_handler(), route_click(), scratchpad_move(), scratchpad_show(), TAILQ_HEAD(), tiling_resize(), tiling_resize_for_border(), tree_close(), tree_flatten(), tree_move(), tree_open_con(), tree_split(), workspace_get(), ws_force_orientation(), x_draw_decoration(), and x_push_node().
double Con::percent |
Definition at line 508 of file data.h.
Referenced by attach_to_workspace(), cmd_resize_tiling_direction(), cmd_resize_tiling_width_height(), con_fix_percent(), con_move_to_workspace(), floating_disable(), floating_enable(), insert_con_into(), json_double(), render_con(), resize_graphical_handler(), tree_flatten(), and tree_split().
xcb_pixmap_t Con::pixmap |
Definition at line 474 of file data.h.
Referenced by handle_expose_event(), x_con_kill(), x_deco_recurse(), x_draw_decoration(), and x_push_node().
bool Con::pixmap_recreated |
Definition at line 472 of file data.h.
Referenced by x_draw_decoration(), and x_push_node().
xcb_gcontext_t Con::pm_gc |
Definition at line 475 of file data.h.
Referenced by handle_expose_event(), x_con_kill(), x_deco_recurse(), x_draw_decoration(), and x_push_node().
struct Rect Con::rect |
Definition at line 492 of file data.h.
Referenced by _create___i3(), _tree_next(), _workspace_apply_default_orientation(), _workspace_show(), cmd_move_direction(), cmd_move_window_to_center(), cmd_move_window_to_position(), cmd_move_workspace_to_output(), cmd_resize_floating(), con_adjacent_borders(), con_move_to_workspace(), con_set_border_style(), drag_pointer(), DRAGGING_CB(), fake_absolute_configure_notify(), floating_check_size(), floating_drag_window(), floating_enable(), floating_fix_coordinates(), floating_maybe_reassign_ws(), floating_mod_on_tiled_client(), floating_reposition(), floating_resize_window(), handle_button_press(), handle_configure_request(), handle_normal_hints(), handle_screen_change(), init_ws_for_output(), IPC_HANDLER(), json_int(), manage_window(), output_change_mode(), output_init_con(), randr_query_outputs(), render_con(), render_l_output(), resize_graphical_handler(), restore_geometry(), scratchpad_fix_resolution(), scratchpad_show(), tiling_resize(), tiling_resize_for_border(), tree_init(), tree_restore(), x_deco_recurse(), x_draw_decoration(), and x_push_node().
enum { ... } Con::scratchpad_state |
char* Con::sticky_group |
Definition at line 503 of file data.h.
Referenced by _get_sticky(), json_string(), and workspace_reassign_sticky().
enum { ... } Con::type |
Referenced by _create___i3(), _tree_next(), cmd_focus_window_mode(), cmd_move_con_to_workspace(), cmd_move_con_to_workspace_name(), cmd_move_con_to_workspace_number(), cmd_resize_tiling_width_height(), con_accepts_window(), con_attach(), con_border_style(), con_descend_direction(), con_descend_tiling_focused(), con_detach(), con_force_split_parents_redraw(), con_fullscreen_permits_focusing(), con_get_next(), con_get_output(), con_get_workspace(), con_inside_floating(), con_minimum_size(), con_move_to_workspace(), con_next_focused(), con_on_remove_child(), con_parent_with_orientation(), con_set_layout(), con_toggle_fullscreen(), con_toggle_layout(), con_update_parents_urgency(), create_workspace_on_output(), floating_disable(), floating_enable(), handle_configure_request(), handle_enter_notify(), handle_focus_in(), insert_con_into(), IPC_HANDLER(), json_int(), level_down(), level_up(), manage_window(), mark_unmapped(), output_get_content(), output_init_con(), randr_query_outputs(), render_con(), render_l_output(), resize_find_tiling_participants(), route_click(), scratchpad_move(), scratchpad_show(), tiling_resize(), tree_close_con(), tree_flatten(), tree_init(), tree_move(), tree_open_con(), tree_split(), workspace_get(), x_deco_recurse(), and x_draw_decoration().
struct ev_timer* Con::urgency_timer |
Definition at line 528 of file data.h.
Referenced by _workspace_show(), con_set_urgency(), and workspace_defer_update_urgent_hint_cb().
bool Con::urgent |
Definition at line 462 of file data.h.
Referenced by _workspace_show(), con_focus(), con_has_urgent_child(), con_on_remove_child(), con_set_urgency(), con_update_parents_urgency(), get_urgency_flag(), handle_client_message(), IPC_HANDLER(), tree_close(), workspace_defer_update_urgent_hint_cb(), workspace_update_urgent_flag(), and x_draw_decoration().
int Con::width_increment |
Definition at line 522 of file data.h.
Referenced by cmd_resize_floating(), floating_check_size(), and handle_normal_hints().
struct Window* Con::window |
Definition at line 525 of file data.h.
Referenced by _get_sticky(), cmd_criteria_match_windows(), con_accepts_window(), con_attach(), con_by_window_id(), con_get_tree_representation(), con_move_to_workspace(), con_set_urgency(), con_toggle_fullscreen(), fake_absolute_configure_notify(), floating_enable(), handle_clientleader_change(), handle_focus_in(), handle_hints(), handle_normal_hints(), handle_transient_for(), handle_windowname_change(), handle_windowname_change_legacy(), handle_windowrole_change(), manage_window(), match_matches_window(), randr_query_outputs(), render_con(), restore_geometry(), tree_close(), tree_flatten(), workspace_reassign_sticky(), x_draw_decoration(), x_push_changes(), x_push_node(), and x_push_node_unmaps().
struct Rect Con::window_rect |
Definition at line 493 of file data.h.
Referenced by fake_absolute_configure_notify(), json_int(), render_con(), restore_geometry(), tiling_resize(), x_draw_decoration(), and x_push_node().
layout_t Con::workspace_layout |
Definition at line 556 of file data.h.
Referenced by con_attach(), con_set_layout(), create_workspace_on_output(), json_string(), workspace_attach_to(), and workspace_get().