Bugfix: render floating windows during global fullscreen (Thanks dmurph, Mats)
fixes #1393
This commit is contained in:
parent
fa41ad7e21
commit
8b96bb0298
10
src/render.c
10
src/render.c
|
@ -210,8 +210,16 @@ void render_con(Con *con, bool render_fullscreen) {
|
|||
fullscreen->rect = rect;
|
||||
x_raise_con(fullscreen);
|
||||
render_con(fullscreen, true);
|
||||
/* Fullscreen containers are either global (underneath the CT_ROOT
|
||||
* container) or per-output (underneath the CT_CONTENT container). For
|
||||
* global fullscreen containers, we cannot abort rendering here yet,
|
||||
* because the floating windows (with popup_during_fullscreen smart)
|
||||
* have not yet been rendered (see the CT_ROOT code path below). See
|
||||
* also http://bugs.i3wm.org/1393 */
|
||||
if (con->type != CT_ROOT) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/* find the height for the decorations */
|
||||
int deco_height = render_deco_height();
|
||||
|
@ -247,9 +255,11 @@ void render_con(Con *con, bool render_fullscreen) {
|
|||
render_l_output(con);
|
||||
} else if (con->type == CT_ROOT) {
|
||||
Con *output;
|
||||
if (!fullscreen) {
|
||||
TAILQ_FOREACH (output, &(con->nodes_head), nodes) {
|
||||
render_con(output, false);
|
||||
}
|
||||
}
|
||||
|
||||
/* We need to render floating windows after rendering all outputs’
|
||||
* tiling windows because they need to be on top of *every* output at
|
||||
|
|
Loading…
Reference in New Issue