i3
Public Types | Data Fields
Window Struct Reference

A 'Window' is a type which contains an xcb_window_t and all the related information (hints like _NET_WM_NAME for that window). More...

#include <data.h>

Collaboration diagram for Window:
Collaboration graph
[legend]

Public Types

enum  { W_NODOCK = 0, W_DOCK_TOP = 1, W_DOCK_BOTTOM = 2 }
 Whether the window says it is a dock window. More...
 

Data Fields

xcb_window_t id
 
xcb_window_t leader
 Holds the xcb_window_t (just an ID) for the leader window (logical parent for toolwindows and similar floating windows) More...
 
xcb_window_t transient_for
 
uint32_t nr_assignments
 Pointers to the Assignments which were already ran for this Window (assignments run only once) More...
 
Assignment ** ran_assignments
 
char * class_class
 
char * class_instance
 
i3Stringname
 The name of the window. More...
 
char * role
 The WM_WINDOW_ROLE of this window (for example, the pidgin buddy window sets "buddy list"). More...
 
bool name_x_changed
 Flag to force re-rendering the decoration upon changes. More...
 
bool uses_net_wm_name
 Whether the application used _NET_WM_NAME. More...
 
bool needs_take_focus
 Whether the application needs to receive WM_TAKE_FOCUS. More...
 
bool doesnt_accept_focus
 Whether this window accepts focus. More...
 
xcb_atom_t window_type
 The _NET_WM_WINDOW_TYPE for this window. More...
 
uint32_t wm_desktop
 The _NET_WM_DESKTOP for this window. More...
 
enum Window:: { ... }  dock
 Whether the window says it is a dock window. More...
 
struct timeval urgent
 When this window was marked urgent. More...
 
struct reservedpx reserved
 Pixels the window reserves. More...
 
uint16_t depth
 Depth of the window. More...
 
int base_width
 
int base_height
 
int width_increment
 
int height_increment
 
int min_width
 
int min_height
 
double aspect_ratio
 

Detailed Description

A 'Window' is a type which contains an xcb_window_t and all the related information (hints like _NET_WM_NAME for that window).

Definition at line 401 of file data.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Whether the window says it is a dock window.

Enumerator
W_NODOCK 
W_DOCK_TOP 
W_DOCK_BOTTOM 

Definition at line 445 of file data.h.

Field Documentation

◆ aspect_ratio

double Window::aspect_ratio

Definition at line 472 of file data.h.

Referenced by handle_normal_hints(), and render_con().

◆ base_height

int Window::base_height

Definition at line 461 of file data.h.

Referenced by floating_check_size(), and handle_normal_hints().

◆ base_width

int Window::base_width

Definition at line 460 of file data.h.

Referenced by floating_check_size(), and handle_normal_hints().

◆ class_class

char* Window::class_class

Definition at line 414 of file data.h.

Referenced by match_matches_window(), window_free(), and window_update_class().

◆ class_instance

char* Window::class_instance

◆ depth

uint16_t Window::depth

Depth of the window.

Definition at line 456 of file data.h.

Referenced by con_new_skeleton(), manage_window(), and x_push_node().

◆ dock

enum { ... } Window::dock

Whether the window says it is a dock window.

Referenced by cmd_resize(), handle_strut_partial_change(), manage_window(), and match_matches_window().

◆ doesnt_accept_focus

bool Window::doesnt_accept_focus

Whether this window accepts focus.

We store this inverted so that the default will be 'accepts focus'.

Definition at line 436 of file data.h.

Referenced by manage_window(), window_update_hints(), and x_push_changes().

◆ height_increment

int Window::height_increment

◆ id

xcb_window_t Window::id

◆ leader

xcb_window_t Window::leader

Holds the xcb_window_t (just an ID) for the leader window (logical parent for toolwindows and similar floating windows)

Definition at line 406 of file data.h.

Referenced by floating_enable(), manage_window(), startup_sequence_get(), and window_update_leader().

◆ min_height

int Window::min_height

Definition at line 469 of file data.h.

Referenced by floating_check_size(), handle_normal_hints(), and manage_window().

◆ min_width

int Window::min_width

Definition at line 468 of file data.h.

Referenced by floating_check_size(), handle_normal_hints(), and manage_window().

◆ name

i3String* Window::name

◆ name_x_changed

bool Window::name_x_changed

Flag to force re-rendering the decoration upon changes.

Definition at line 426 of file data.h.

Referenced by cmd_title_format(), window_update_name(), window_update_name_legacy(), and x_draw_decoration().

◆ needs_take_focus

bool Window::needs_take_focus

Whether the application needs to receive WM_TAKE_FOCUS.

Definition at line 432 of file data.h.

Referenced by manage_window(), and x_push_changes().

◆ nr_assignments

uint32_t Window::nr_assignments

Pointers to the Assignments which were already ran for this Window (assignments run only once)

Definition at line 411 of file data.h.

Referenced by run_assignments().

◆ ran_assignments

Assignment** Window::ran_assignments

Definition at line 412 of file data.h.

Referenced by run_assignments(), and window_free().

◆ reserved

struct reservedpx Window::reserved

Pixels the window reserves.

left/right/top/bottom

Definition at line 453 of file data.h.

Referenced by handle_strut_partial_change(), manage_window(), and window_update_strut_partial().

◆ role

char* Window::role

The WM_WINDOW_ROLE of this window (for example, the pidgin buddy window sets "buddy list").

Useful to match specific windows in assignments or for_window.

Definition at line 423 of file data.h.

Referenced by match_matches_window(), and window_update_role().

◆ transient_for

xcb_window_t Window::transient_for

Definition at line 407 of file data.h.

Referenced by manage_window(), render_root(), and window_update_transient_for().

◆ urgent

struct timeval Window::urgent

When this window was marked urgent.

0 means not urgent

Definition at line 450 of file data.h.

Referenced by con_set_urgency(), and match_matches_window().

◆ uses_net_wm_name

bool Window::uses_net_wm_name

Whether the application used _NET_WM_NAME.

Definition at line 429 of file data.h.

Referenced by window_update_name(), and window_update_name_legacy().

◆ width_increment

int Window::width_increment

◆ window_type

xcb_atom_t Window::window_type

The _NET_WM_WINDOW_TYPE for this window.

Definition at line 439 of file data.h.

Referenced by manage_window(), match_matches_window(), and window_update_type().

◆ wm_desktop

uint32_t Window::wm_desktop

The _NET_WM_DESKTOP for this window.

Definition at line 442 of file data.h.

Referenced by ewmh_update_wm_desktop_recursively(), and manage_window().


The documentation for this struct was generated from the following file: