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)
xcb_window_t transient_for
char * class_class
char * class_instance
char * name_x
 The name of the window as it will be passed to X11 (in UCS2 if the application supports _NET_WM_NAME, in COMPOUND_TEXT otherwise).
char * role
 The WM_WINDOW_ROLE of this window (for example, the pidgin buddy window sets "buddy list").
bool name_x_changed
 Flag to force re-rendering the decoration upon changes.
char * name_json
 The name of the window as used in JSON (in UTF-8 if the application supports _NET_WM_NAME, in COMPOUND_TEXT otherwise)
size_t name_len
 The length of the name in glyphs (not bytes)
bool uses_net_wm_name
 Whether the application used _NET_WM_NAME.
bool needs_take_focus
 Whether the application needs to receive WM_TAKE_FOCUS.
struct timeval urgent
 When this window was marked urgent.
bool doesnt_accept_focus
 Whether this window accepts focus.
enum Window:: { ... }  dock
struct reservedpx reserved
 Pixels the window reserves.
uint32_t nr_assignments
 Pointers to the Assignments which were already ran for this Window (assignments run only once)
Assignment ** ran_assignments
uint16_t depth
 Depth of the window.

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 272 of file data.h.


Member Enumeration Documentation

anonymous enum

Whether the window says it is a dock window.

Enumerator:
W_NODOCK 
W_DOCK_TOP 
W_DOCK_BOTTOM 

Definition at line 316 of file data.h.


Field Documentation

Definition at line 280 of file data.h.

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

Definition at line 281 of file data.h.

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

uint16_t Window::depth

Depth of the window.

Definition at line 327 of file data.h.

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

enum { ... } Window::dock

Whether this window accepts focus.

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

Definition at line 313 of file data.h.

Referenced by window_update_hints(), and x_push_changes().

xcb_window_t Window::id
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 277 of file data.h.

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

The name of the window as used in JSON (in UTF-8 if the application supports _NET_WM_NAME, in COMPOUND_TEXT otherwise)

Definition at line 297 of file data.h.

Referenced by match_matches_window(), tree_close(), window_update_name(), and window_update_name_legacy().

The length of the name in glyphs (not bytes)

Definition at line 300 of file data.h.

Referenced by window_update_name(), and window_update_name_legacy().

The name of the window as it will be passed to X11 (in UCS2 if the application supports _NET_WM_NAME, in COMPOUND_TEXT otherwise).

Definition at line 285 of file data.h.

Referenced by tree_close(), window_update_name(), and window_update_name_legacy().

Flag to force re-rendering the decoration upon changes.

Definition at line 293 of file data.h.

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

Whether the application needs to receive WM_TAKE_FOCUS.

Definition at line 306 of file data.h.

Referenced by manage_window(), and x_push_changes().

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

Definition at line 323 of file data.h.

Referenced by run_assignments().

Definition at line 324 of file data.h.

Referenced by run_assignments().

Pixels the window reserves.

left/right/top/bottom

Definition at line 319 of file data.h.

Referenced by manage_window(), and window_update_strut_partial().

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 290 of file data.h.

Referenced by match_matches_window(), and window_update_role().

xcb_window_t Window::transient_for

Definition at line 278 of file data.h.

Referenced by manage_window(), and window_update_transient_for().

struct timeval Window::urgent

When this window was marked urgent.

0 means not urgent

Definition at line 309 of file data.h.

Referenced by handle_hints(), and match_matches_window().

Whether the application used _NET_WM_NAME.

Definition at line 303 of file data.h.

Referenced by window_update_name(), and window_update_name_legacy().


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