diff options
Diffstat (limited to 'sway/tree/view.c')
-rw-r--r-- | sway/tree/view.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/sway/tree/view.c b/sway/tree/view.c index 64597c02..c013e635 100644 --- a/sway/tree/view.c +++ b/sway/tree/view.c | |||
@@ -141,9 +141,18 @@ void view_autoconfigure(struct sway_view *view) { | |||
141 | 141 | ||
142 | struct sway_container *ws = container_parent(view->swayc, C_WORKSPACE); | 142 | struct sway_container *ws = container_parent(view->swayc, C_WORKSPACE); |
143 | 143 | ||
144 | int other_views = 1; | 144 | int other_views = 0; |
145 | if (config->hide_edge_borders == E_SMART) { | 145 | if (config->hide_edge_borders == E_SMART) { |
146 | other_views = container_count_descendants_of_type(ws, C_VIEW) - 1; | 146 | struct sway_container *con = view->swayc; |
147 | while (con != output) { | ||
148 | if (con->layout != L_TABBED && con->layout != L_STACKED) { | ||
149 | other_views += con->children ? con->children->length - 1 : 0; | ||
150 | if (other_views > 0) { | ||
151 | break; | ||
152 | } | ||
153 | } | ||
154 | con = con->parent; | ||
155 | } | ||
147 | } | 156 | } |
148 | 157 | ||
149 | view->border_top = view->border_bottom = true; | 158 | view->border_top = view->border_bottom = true; |