|
i3
|
#include "all.h"
Go to the source code of this file.
Data Structures | |
| struct | placeholder_state |
Macros | |
| #define | I3__FILE__ "restore_layout.c" |
| #define | APPEND_REGEX(re_name) |
Typedefs | |
| typedef struct placeholder_state | placeholder_state |
Functions | |
| static | TAILQ_HEAD (state_head, placeholder_state) |
| static void | restore_xcb_prepare_cb (EV_P_ ev_prepare *w, int revents) |
| static void | restore_xcb_check_cb (EV_P_ ev_check *w, int revents) |
| void | restore_connect (void) |
| Opens a separate connection to X11 for placeholder windows when restoring layouts. More... | |
| static void | update_placeholder_contents (placeholder_state *state) |
| static void | open_placeholder_window (Con *con) |
| void | restore_open_placeholder_windows (Con *parent) |
| Open placeholder windows for all children of parent. More... | |
| bool | restore_kill_placeholder (xcb_window_t placeholder) |
| Kill the placeholder window, if placeholder refers to a placeholder window. More... | |
| static void | expose_event (xcb_expose_event_t *event) |
| static void | configure_notify (xcb_configure_notify_event_t *event) |
| static void | restore_handle_event (int type, xcb_generic_event_t *event) |
| #define APPEND_REGEX | ( | re_name | ) |
| #define I3__FILE__ "restore_layout.c" |
Definition at line 2 of file restore_layout.c.
| typedef struct placeholder_state placeholder_state |
|
static |
Definition at line 314 of file restore_layout.c.
References placeholder_state::con, DLOG, ELOG, placeholder_state::gc, Rect::height, placeholder_state::pixmap, placeholder_state::rect, root_depth, state, TAILQ_FOREACH, update_placeholder_contents(), Rect::width, and placeholder_state::window.
Referenced by restore_handle_event().

|
static |
Definition at line 286 of file restore_layout.c.
References placeholder_state::con, DLOG, ELOG, placeholder_state::gc, placeholder_state::pixmap, state, TAILQ_FOREACH, and placeholder_state::window.
Referenced by restore_handle_event().
|
static |
Definition at line 181 of file restore_layout.c.
References placeholder_state::con, con_is_leaf(), create_window(), DLOG, placeholder_state::gc, Rect::height, Window::id, Match::id, match_init(), Con::name, placeholder_state::pixmap, placeholder_state::rect, Con::rect, root_depth, scalloc(), smalloc(), state, TAILQ_EMPTY, TAILQ_FOREACH, TAILQ_INSERT_HEAD, TAILQ_INSERT_TAIL, Con::type, update_placeholder_contents(), Rect::width, placeholder_state::window, Con::window, xcb_icccm_wm_hints_t, and XCURSOR_CURSOR_POINTER.
Referenced by restore_open_placeholder_windows().

| void restore_connect | ( | void | ) |
Opens a separate connection to X11 for placeholder windows when restoring layouts.
This is done as a safety measure (users can xkill a placeholder window without killing their window manager) and for better isolation, both on the wire to X11 and thus also in the code.
Definition at line 86 of file restore_layout.c.
References main_loop, restore_xcb_check_cb(), restore_xcb_prepare_cb(), scalloc(), state, TAILQ_EMPTY, TAILQ_FIRST, TAILQ_REMOVE, and xcb_check.
Referenced by main(), and restore_xcb_check_cb().

|
static |
Definition at line 345 of file restore_layout.c.
References configure_notify(), DLOG, and expose_event().
Referenced by restore_xcb_check_cb().

| bool restore_kill_placeholder | ( | xcb_window_t | placeholder | ) |
Kill the placeholder window, if placeholder refers to a placeholder window.
This function is called when manage.c puts a window into an existing container. In order not to leak resources, we need to destroy the window and all associated X11 objects (pixmap/gc).
Definition at line 267 of file restore_layout.c.
References DLOG, placeholder_state::gc, placeholder_state::pixmap, state, TAILQ_FOREACH, TAILQ_REMOVE, and placeholder_state::window.
Referenced by manage_window().
| void restore_open_placeholder_windows | ( | Con * | con | ) |
Open placeholder windows for all children of parent.
The placeholder window will vanish as soon as a real window is swallowed by the container. Until then, it exposes the criteria that must be fulfilled for a window to be swallowed by this container.
Definition at line 248 of file restore_layout.c.
References open_placeholder_window(), and TAILQ_FOREACH.
Referenced by cmd_append_layout(), and tree_restore().

|
static |
Definition at line 52 of file restore_layout.c.
References DLOG, restore_connect(), and restore_handle_event().
Referenced by restore_connect().

|
static |
Definition at line 48 of file restore_layout.c.
Referenced by restore_connect().
|
static |
Definition at line 33 of file restore_layout.c.
|
static |
Definition at line 126 of file restore_layout.c.
References placeholder_state::gc, and placeholder_state::pixmap.
Referenced by configure_notify(), and open_placeholder_window().
1.8.9.1