From 65328ef60c9468ae44b4b1d6316d604c47293ec3 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Sat, 27 Oct 2018 11:23:02 +1000 Subject: Respect border settings when rendering lone tabbed/stacked child In i3, when a child of a tabbed or stacked container has no siblings, its border settings are respected. This patch achieves the same effect by rendering a lone tabbed/stacked child as if it's a linear container. This makes the border settings be respected. Over in view_autoconfigure, we compensate for this by only adjusting `y_offset` if there's multiple children. --- sway/desktop/render.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'sway/desktop') diff --git a/sway/desktop/render.c b/sway/desktop/render.c index 1a72f752..c1fa0c8c 100644 --- a/sway/desktop/render.c +++ b/sway/desktop/render.c @@ -781,6 +781,13 @@ static void render_containers_stacked(struct sway_output *output, static void render_containers(struct sway_output *output, pixman_region32_t *damage, struct parent_data *parent) { + if (parent->children->length == 1) { + struct sway_container *child = parent->children->items[0]; + if (child->view) { + render_containers_linear(output, damage, parent); + return; + } + } switch (parent->layout) { case L_NONE: case L_HORIZ: -- cgit v1.2.3-54-g00ecf