Bugfix: Update _NET_WM_STATE when clients request changes via ClientMessage
This fixes problems with Chromium fullscreen mode
This commit is contained in:
parent
e68aa1f414
commit
e25d9c5f55
|
@ -228,6 +228,10 @@ void client_enter_fullscreen(xcb_connection_t *conn, Client *client, bool global
|
||||||
uint32_t values[] = { XCB_STACK_MODE_ABOVE };
|
uint32_t values[] = { XCB_STACK_MODE_ABOVE };
|
||||||
xcb_configure_window(conn, client->frame, XCB_CONFIG_WINDOW_STACK_MODE, values);
|
xcb_configure_window(conn, client->frame, XCB_CONFIG_WINDOW_STACK_MODE, values);
|
||||||
|
|
||||||
|
/* Update _NET_WM_STATE */
|
||||||
|
values[0] = atoms[_NET_WM_STATE_FULLSCREEN];
|
||||||
|
xcb_change_property(conn, XCB_PROP_MODE_REPLACE, client->child, atoms[_NET_WM_STATE], ATOM, 32, 1, values);
|
||||||
|
|
||||||
fake_configure_notify(conn, r, client->child);
|
fake_configure_notify(conn, r, client->child);
|
||||||
|
|
||||||
xcb_flush(conn);
|
xcb_flush(conn);
|
||||||
|
@ -262,6 +266,9 @@ void client_leave_fullscreen(xcb_connection_t *conn, Client *client) {
|
||||||
render_layout(conn);
|
render_layout(conn);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Update _NET_WM_STATE */
|
||||||
|
xcb_change_property(conn, XCB_PROP_MODE_REPLACE, client->child, atoms[_NET_WM_STATE], ATOM, 32, 0, NULL);
|
||||||
|
|
||||||
xcb_flush(conn);
|
xcb_flush(conn);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue