diff options
author | Mikkel Oscar Lyderik <mikkeloscar@gmail.com> | 2016-01-21 22:07:39 +0100 |
---|---|---|
committer | Mikkel Oscar Lyderik <mikkeloscar@gmail.com> | 2016-01-21 22:28:26 +0100 |
commit | fa0526f3dff4ca106f75272835ad047e53a34548 (patch) | |
tree | ba3903a01a88e277a8fd03fd9a015509c6e976dd | |
parent | Only update visibility if WS isn't destroyed after (diff) | |
download | sway-fa0526f3dff4ca106f75272835ad047e53a34548.tar.gz sway-fa0526f3dff4ca106f75272835ad047e53a34548.tar.zst sway-fa0526f3dff4ca106f75272835ad047e53a34548.zip |
Fix rendering of view when moving to new workspace
This is a possible fix for #384.
To be honest I don't fully understand why this bug is happening, but I
have narrowed it down to the view stack in wlc and how sway orders views
in very specific situations (those described in #384).
Anyway this should fix the problem by eliminating the call to
`wlc_view_bring_to_front` which isn't really needed anyway since sending
all invisible views to the back is the same as bringing all visible
views to the front (rotating the view stack).
-rw-r--r-- | sway/container.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sway/container.c b/sway/container.c index 63374f9e..444f85fd 100644 --- a/sway/container.c +++ b/sway/container.c | |||
@@ -721,9 +721,7 @@ void update_visibility_output(swayc_t *container, wlc_handle output) { | |||
721 | if (container->type == C_VIEW) { | 721 | if (container->type == C_VIEW) { |
722 | wlc_view_set_output(container->handle, output); | 722 | wlc_view_set_output(container->handle, output); |
723 | wlc_view_set_mask(container->handle, container->visible ? VISIBLE : 0); | 723 | wlc_view_set_mask(container->handle, container->visible ? VISIBLE : 0); |
724 | if (container->visible) { | 724 | if (!container->visible) { |
725 | wlc_view_bring_to_front(container->handle); | ||
726 | } else { | ||
727 | wlc_view_send_to_back(container->handle); | 725 | wlc_view_send_to_back(container->handle); |
728 | } | 726 | } |
729 | } | 727 | } |