i3
window.h
Go to the documentation of this file.
1/*
2 * vim:ts=4:sw=4:expandtab
3 *
4 * i3 - an improved dynamic tiling window manager
5 * © 2009 Michael Stapelberg and contributors (see also: LICENSE)
6 *
7 * window.c: Updates window attributes (X11 hints/properties).
8 *
9 */
10#pragma once
11
12#include <config.h>
13
18void window_free(i3Window *win);
19
25void window_update_class(i3Window *win, xcb_get_property_reply_t *prop);
26
32void window_update_name(i3Window *win, xcb_get_property_reply_t *prop);
33
41void window_update_name_legacy(i3Window *win, xcb_get_property_reply_t *prop);
42
48void window_update_qubes_vmname(i3Window *win, xcb_get_property_reply_t *prop, bool before_mgmt);
49
55void window_update_qubes_label(i3Window *win, xcb_get_property_reply_t *prop, bool before_mgmt);
56
61void window_update_leader(i3Window *win, xcb_get_property_reply_t *prop);
62
67void window_update_transient_for(i3Window *win, xcb_get_property_reply_t *prop);
68
73void window_update_strut_partial(i3Window *win, xcb_get_property_reply_t *prop);
74
79void window_update_role(i3Window *win, xcb_get_property_reply_t *prop);
80
85void window_update_type(i3Window *window, xcb_get_property_reply_t *reply);
86
91bool window_update_normal_hints(i3Window *win, xcb_get_property_reply_t *reply, xcb_get_geometry_reply_t *geom);
92
97void window_update_hints(i3Window *win, xcb_get_property_reply_t *prop, bool *urgency_hint);
98
111void window_update_motif_hints(i3Window *win, xcb_get_property_reply_t *prop, border_style_t *motif_border_style);
border_style_t
Definition: data.h:64
void window_update_qubes_label(i3Window *win, xcb_get_property_reply_t *prop, bool before_mgmt)
Updates the qubes label by using _QUBES_LABEL (encoded in UTF-8) for the given window.
Definition: window.c:170
void window_update_motif_hints(i3Window *win, xcb_get_property_reply_t *prop, border_style_t *motif_border_style)
Updates the MOTIF_WM_HINTS.
Definition: window.c:469
void window_update_hints(i3Window *win, xcb_get_property_reply_t *prop, bool *urgency_hint)
Updates the WM_HINTS (we only care about the input focus handling part).
Definition: window.c:428
void window_update_strut_partial(i3Window *win, xcb_get_property_reply_t *prop)
Updates the _NET_WM_STRUT_PARTIAL (reserved pixels at the screen edges)
Definition: window.c:243
void window_update_role(i3Window *win, xcb_get_property_reply_t *prop)
Updates the WM_WINDOW_ROLE.
Definition: window.c:268
void window_update_qubes_vmname(i3Window *win, xcb_get_property_reply_t *prop, bool before_mgmt)
Updates the qubes vmname by using _QUBES_VMNAME (encoded in UTF-8) for the given window.
Definition: window.c:138
void window_update_name_legacy(i3Window *win, xcb_get_property_reply_t *prop)
Updates the name by using WM_NAME (encoded in COMPOUND_TEXT).
Definition: window.c:98
void window_free(i3Window *win)
Frees an i3Window and all its members.
Definition: window.c:16
void window_update_transient_for(i3Window *win, xcb_get_property_reply_t *prop)
Updates the TRANSIENT_FOR (logical parent window).
Definition: window.c:218
void window_update_leader(i3Window *win, xcb_get_property_reply_t *prop)
Updates the CLIENT_LEADER (logical parent window).
Definition: window.c:193
bool window_update_normal_hints(i3Window *win, xcb_get_property_reply_t *reply, xcb_get_geometry_reply_t *geom)
Updates the WM_NORMAL_HINTS.
Definition: window.c:307
void window_update_name(i3Window *win, xcb_get_property_reply_t *prop)
Updates the name by using _NET_WM_NAME (encoded in UTF-8) for the given window.
Definition: window.c:62
void window_update_class(i3Window *win, xcb_get_property_reply_t *prop)
Updates the WM_CLASS (consisting of the class and instance) for the given window.
Definition: window.c:29
void window_update_type(i3Window *window, xcb_get_property_reply_t *reply)
Updates the _NET_WM_WINDOW_TYPE property.
Definition: window.c:289
A 'Window' is a type which contains an xcb_window_t and all the related information (hints like _NET_...
Definition: data.h:428