4 * i3 - an improved dynamic tiling window manager
6 * (c) 2009 Michael Stapelberg and contributors
8 * See file LICENSE for license information.
19 * Removes the given client from the container, either because it will be inserted into another
20 * one or because it was unmapped
23 void client_remove_from_container(xcb_connection_t *conn, Client *client, Container *container, bool remove_from_focusstack);
26 * Warps the pointer into the given client (in the middle of it, to be specific), therefore
30 void client_warp_pointer_into(xcb_connection_t *conn, Client *client);
33 * Kills the given window using WM_DELETE_WINDOW or xcb_kill_window
36 void client_kill(xcb_connection_t *conn, Client *window);
39 * Checks if the given window class and title match the given client
40 * Window title is passed as "normal" string and as UCS-2 converted string for
41 * matching _NET_WM_NAME capable clients as well as those using legacy hints.
44 bool client_matches_class_name(Client *client, char *to_class, char *to_title,
45 char *to_title_ucs, int to_title_ucs_len);
48 * Toggles fullscreen mode for the given client. It updates the data structures and
49 * reconfigures (= resizes/moves) the client and its frame to the full size of the
50 * screen. When leaving fullscreen, re-rendering the layout is forced.
53 void client_toggle_fullscreen(xcb_connection_t *conn, Client *client);
56 * Sets the position of the given client in the X stack to the highest (tiling layer is always
57 * on the same position, so this doesn’t matter) below the first floating client, so that
58 * floating windows are always on top.
61 void client_set_below_floating(xcb_connection_t *conn, Client *client);
64 * Returns true if the client is floating. Makes the code more beatiful, as floating
65 * is not simply a boolean, but also saves whether the user selected the current state
66 * or whether it was automatically set.
69 bool client_is_floating(Client *client);