Merge branch 'fix-float-fs'
This commit is contained in:
commit
5bb279d450
21
src/render.c
21
src/render.c
|
@ -236,6 +236,27 @@ void render_con(Con *con, bool render_fullscreen) {
|
|||
Con *content = output_get_content(output);
|
||||
Con *workspace = TAILQ_FIRST(&(content->focus_head));
|
||||
|
||||
/* Check for (floating!) fullscreen nodes */
|
||||
/* XXX: This code duplication is unfortunate. Keep in mind to fix
|
||||
* this when we clean up the whole render.c */
|
||||
Con *fullscreen = NULL;
|
||||
fullscreen = con_get_fullscreen_con(workspace, CF_OUTPUT);
|
||||
if (fullscreen) {
|
||||
/* Either the fullscreen window is inside the floating
|
||||
* container, then we need to render and raise it now… */
|
||||
if (con_inside_floating(fullscreen)) {
|
||||
fullscreen->rect = output->rect;
|
||||
x_raise_con(fullscreen);
|
||||
render_con(fullscreen, true);
|
||||
continue;
|
||||
} else {
|
||||
/* …or it’s a tiling window, in which case the floating
|
||||
* windows should not overlap it, so we skip rendering this
|
||||
* output. */
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
Con *child;
|
||||
TAILQ_FOREACH(child, &(workspace->floating_head), floating_windows) {
|
||||
DLOG("floating child at (%d,%d) with %d x %d\n", child->rect.x, child->rect.y, child->rect.width, child->rect.height);
|
||||
|
|
Loading…
Reference in New Issue