]> git.sur5r.net Git - i3/i3/commitdiff
Fix: render_con shows floating containers on wrong workspace
authorOrestis Floros <orestisf1993@gmail.com>
Sun, 16 Dec 2018 01:27:09 +0000 (03:27 +0200)
committerMichael Stapelberg <michael@stapelberg.de>
Wed, 23 Jan 2019 20:30:52 +0000 (21:30 +0100)
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

src/floating.c

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