Fix: render_con shows floating containers on wrong workspace

After 204eefc. Alternative fix:
    diff --git a/src/floating.c b/src/floating.c
    index f5c61782..6dd79668 100644
    --- a/src/floating.c
    +++ b/src/floating.c
    @@ -954,7 +954,7 @@ bool floating_reposition(Con *con, Rect newrect) {
             con->scratchpad_state = SCRATCHPAD_CHANGED;

         /* Workspace change will already result in a tree_render. */
    -    if (!reassigned) {
    +    if (!reassigned && workspace_is_visible(con_get_workspace(con))) {
             render_con(con);
             x_push_node(con);
         }
but I don't think that the extra complexity is worth it.

Change in handlers.c because of d2d6d6e0 where the bug also appears.

Fixes #3567
This commit is contained in:
Orestis Floros 2018-12-16 03:27:09 +02:00 committed by Michael Stapelberg
parent f0e19d112c
commit f7b6ae2836
1 changed files with 1 additions and 2 deletions

View File

@ -907,8 +907,7 @@ bool floating_reposition(Con *con, Rect newrect) {
/* Workspace change will already result in a tree_render. */ /* Workspace change will already result in a tree_render. */
if (!reassigned) { if (!reassigned) {
render_con(con, false); tree_render();
x_push_node(con);
} }
return true; return true;
} }