i3
output.h File Reference
#include <config.h>
Include dependency graph for output.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

Conoutput_get_content (Con *output)
 Returns the output container below the given output container.
 
Outputget_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.
 
char * output_primary_name (Output *output)
 Retrieves the primary name of an output.
 
Outputget_output_for_con (Con *con)
 Retrieves the output for a given container.
 
void output_push_sticky_windows (Con *old_focus)
 Iterates over all outputs and pushes sticky windows to the currently visible workspace on that output.
 

Function Documentation

◆ get_output_for_con()

Output * get_output_for_con ( Con * con)

Retrieves the output for a given container.

Never returns NULL. There is an assertion that will fail if the container is inside an internal workspace. Use con_is_internal() if needed before calling this function.

Definition at line 63 of file output.c.

References con_get_output(), get_output_by_name(), and Con::name.

Referenced by cmd_focus_output(), cmd_move_con_to_output(), cmd_rename_workspace(), con_move_to_output_name(), get_output_from_string(), init_ws_for_output(), move_to_output_directed(), and workspace_move_to_output().

Here is the call graph for this function:

◆ get_output_from_string()

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.

Definition at line 33 of file output.c.

References D_DOWN, D_LEFT, D_RIGHT, D_UP, focused, get_output_by_name(), get_output_for_con(), and get_output_next_wrap().

Referenced by con_move_to_output_name(), and user_output_names_find_next().

Here is the call graph for this function:

◆ output_get_content()

◆ output_primary_name()

◆ output_push_sticky_windows()

void output_push_sticky_windows ( Con * old_focus)

Iterates over all outputs and pushes sticky windows to the currently visible workspace on that output.

old_focus is used to determine if a sticky window is going to be focused. old_focus might be different than the currently focused container because the caller might need to temporarily change the focus and then call output_push_sticky_windows. For example, workspace_show needs to set focus to one of its descendants first, then call output_push_sticky_windows that should focus a sticky window if it was the focused in the previous workspace.

Definition at line 83 of file output.c.

References con_activate(), con_descend_focused(), con_get_workspace(), con_is_sticky(), con_move_to_workspace(), croot, focused, GREP_FIRST, output_get_content(), Con::parent, TAILQ_END, TAILQ_FIRST, TAILQ_FOREACH, TAILQ_NEXT, Con::type, and workspace_is_visible().

Referenced by cmd_sticky(), handle_client_message(), handle_net_wm_state_change(), manage_window(), and workspace_show().

Here is the call graph for this function: