diff options
Diffstat (limited to 'sway/focus.c')
-rw-r--r-- | sway/focus.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sway/focus.c b/sway/focus.c index cdc9a888..b4dfc423 100644 --- a/sway/focus.c +++ b/sway/focus.c | |||
@@ -141,9 +141,18 @@ bool set_focused_container(swayc_t *c) { | |||
141 | // set focus if view_focus is unlocked | 141 | // set focus if view_focus is unlocked |
142 | if (!locked_view_focus) { | 142 | if (!locked_view_focus) { |
143 | wlc_view_focus(p->handle); | 143 | wlc_view_focus(p->handle); |
144 | update_view_border(p); | 144 | if (p->parent->layout != L_TABBED |
145 | && p->parent->layout != L_STACKED) { | ||
146 | update_view_border(p); | ||
147 | } | ||
145 | } | 148 | } |
146 | } | 149 | } |
150 | |||
151 | // rearrange if parent container is tabbed/stacked | ||
152 | swayc_t *parent = swayc_tabbed_stacked_parent(p); | ||
153 | if (parent != NULL) { | ||
154 | arrange_windows(parent, -1, -1); | ||
155 | } | ||
147 | } else if (p->type == C_WORKSPACE) { | 156 | } else if (p->type == C_WORKSPACE) { |
148 | // remove previous focus if view_focus is unlocked | 157 | // remove previous focus if view_focus is unlocked |
149 | if (!locked_view_focus) { | 158 | if (!locked_view_focus) { |