aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudvig Michaelsson <ludvig.michaelsson@gmail.com>2020-09-20 17:26:18 +0200
committerSimon Ser <contact@emersion.fr>2020-10-12 16:02:41 +0200
commitd6ac30753ded44c5f1921a3bbccb5856d5ef6539 (patch)
tree50475c92ec38ca6cf04495ba1f6b2d63c11c3dc7
parented247c031cb9783deb5c04631b53c5ac6c432eb7 (diff)
swaybar: don't expand separator_block_width if separator is false
When swaybar receives the following JSON body [ { "full_text": "foo", "separator": false, "separator_block_width": 0 }, { "full_text": "bar" } ] it should not draw any separator or any space between the two blocks. However, since swaybar calculates that separator_block_width 0 is too small to fit any configured separator, it will override the separator_block_width with some non-zero value. This patch changes that such that the necessary separator_block_width is only expanded if the block has 'separator: true'. This should be in line to what i3 does, as its documentation of the i3bar protocol for separator states that "[...] if you disable the separator line, there will still be a gap after the block, unless you also use separator_block_width".
-rw-r--r--swaybar/render.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/swaybar/render.c b/swaybar/render.c
index 8f38174f..8816abef 100644
--- a/swaybar/render.c
+++ b/swaybar/render.c
@@ -208,7 +208,7 @@ static uint32_t render_status_block(cairo_t *cairo,
output->height < _ideal_surface_height) {
return _ideal_surface_height;
}
- if (sep_width > sep_block_width) {
+ if (block->separator && sep_width > sep_block_width) {
sep_block_width = sep_width + margin * 2;
}
}