20 if (child->
type == CT_CON) {
34 if (strcasecmp(output_str,
"current") == 0) {
36 }
else if (strcasecmp(output_str,
"left") == 0) {
38 }
else if (strcasecmp(output_str,
"right") == 0) {
40 }
else if (strcasecmp(output_str,
"up") == 0) {
42 }
else if (strcasecmp(output_str,
"down") == 0) {
66 assert(output != NULL);
86 Con *workspace, *visible_ws = NULL;
94 Con *current_ws = workspace;
101 for (child =
TAILQ_FIRST(&(current_ws->focus_head));
102 child !=
TAILQ_END(&(current_ws->focus_head));) {
103 Con *current = child;
109 bool ignore_focus = (old_focus == NULL) || (current != old_focus->
parent);
void con_move_to_workspace(Con *con, Con *workspace, bool fix_coordinates, bool dont_warp, bool ignore_focus)
Moves the given container to the currently focused container on the given workspace.
Con * con_get_workspace(Con *con)
Gets the workspace container this node is on.
void con_activate(Con *con)
Sets input focus to the given container and raises it to the top.
Con * con_get_output(Con *con)
Gets the output container (first container with CT_OUTPUT in hierarchy) this node is on.
Con * con_descend_focused(Con *con)
Returns the focused con inside this client, descending the tree as far as possible.
bool con_is_sticky(Con *con)
Returns whether the container or any of its children is sticky.
Output * get_output_from_string(Output *current_output, const char *output_str)
Returns an 'output' corresponding to one of left/right/down/up or a specific output name.
void output_push_sticky_windows(Con *old_focus)
Iterates over all outputs and pushes sticky windows to the currently visible workspace on that output...
char * output_primary_name(Output *output)
Retrieves the primary name of an output.
Output * get_output_for_con(Con *con)
Retrieves the output for a given container.
Con * output_get_content(Con *output)
Returns the output container below the given output container.
Output * get_output_by_name(const char *name, const bool require_active)
Returns the output with the given name or NULL.
Output * get_output_next_wrap(direction_t direction, Output *current)
Like get_output_next with close_far == CLOSEST_OUTPUT, but wraps.
bool workspace_is_visible(Con *ws)
Returns true if the workspace is currently visible.
#define TAILQ_FOREACH(var, head, field)
#define TAILQ_FIRST(head)
#define SLIST_FIRST(head)
#define TAILQ_NEXT(elm, field)
#define GREP_FIRST(dest, head, condition)
An Output is a physical output on your graphics driver.
A 'Con' represents everything from the X11 root window down to a single X11 window.