fullscreen: init floating on disable without size

If a container gets mapped as fullscreen and set to floating by
criteria, the size and location are never set for the floating
container. This adds a check in container_fullscreen_disable for a
width or height of 0 and calls container_init_floating
master
Brian Ashworth 6 years ago committed by emersion
parent a418349c18
commit a729bda17f

@ -984,6 +984,13 @@ void container_fullscreen_disable(struct sway_container *con) {
root->fullscreen_global = NULL; root->fullscreen_global = NULL;
} }
// If the container was mapped as fullscreen and set as floating by
// criteria, it needs to be reinitialized as floating to get the proper
// size and location
if (container_is_floating(con) && (con->width == 0 || con->height == 0)) {
container_init_floating(con);
}
con->fullscreen_mode = FULLSCREEN_NONE; con->fullscreen_mode = FULLSCREEN_NONE;
container_end_mouse_operation(con); container_end_mouse_operation(con);
ipc_event_window(con, "fullscreen_mode"); ipc_event_window(con, "fullscreen_mode");

Loading…
Cancel
Save