b660d6a902
If a window occupies the entirety of its workspace vertically and/or horizontally, pass it the _NET_WM_STATE_MAXIMIZED_{HORZ, VERT} atoms. This helps applications like Google Chrome draw the tab bar correctly and handle tab clicks correctly (see https://crbug.com/1495853). This change is based on work from @yshui in #2380.
40 lines
1.3 KiB
C
40 lines
1.3 KiB
C
// clang-format off
|
|
#define I3_NET_SUPPORTED_ATOMS_XMACRO \
|
|
xmacro(_NET_SUPPORTED) \
|
|
xmacro(_NET_SUPPORTING_WM_CHECK) \
|
|
xmacro(_NET_WM_NAME) \
|
|
xmacro(_NET_WM_VISIBLE_NAME) \
|
|
xmacro(_NET_WM_MOVERESIZE) \
|
|
xmacro(_NET_WM_STATE_STICKY) \
|
|
xmacro(_NET_WM_STATE_FULLSCREEN) \
|
|
xmacro(_NET_WM_STATE_DEMANDS_ATTENTION) \
|
|
xmacro(_NET_WM_STATE_MODAL) \
|
|
xmacro(_NET_WM_STATE_HIDDEN) \
|
|
xmacro(_NET_WM_STATE_FOCUSED) \
|
|
xmacro(_NET_WM_STATE_MAXIMIZED_VERT) \
|
|
xmacro(_NET_WM_STATE_MAXIMIZED_HORZ) \
|
|
xmacro(_NET_WM_STATE) \
|
|
xmacro(_NET_WM_WINDOW_TYPE) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_NORMAL) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_DOCK) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_DIALOG) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_UTILITY) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_TOOLBAR) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_SPLASH) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_MENU) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_DROPDOWN_MENU) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_POPUP_MENU) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_TOOLTIP) \
|
|
xmacro(_NET_WM_WINDOW_TYPE_NOTIFICATION) \
|
|
xmacro(_NET_WM_DESKTOP) \
|
|
xmacro(_NET_WM_STRUT_PARTIAL) \
|
|
xmacro(_NET_CLIENT_LIST) \
|
|
xmacro(_NET_CLIENT_LIST_STACKING) \
|
|
xmacro(_NET_CURRENT_DESKTOP) \
|
|
xmacro(_NET_NUMBER_OF_DESKTOPS) \
|
|
xmacro(_NET_DESKTOP_NAMES) \
|
|
xmacro(_NET_DESKTOP_VIEWPORT) \
|
|
xmacro(_NET_ACTIVE_WINDOW) \
|
|
xmacro(_NET_CLOSE_WINDOW) \
|
|
xmacro(_NET_MOVERESIZE_WINDOW)
|