aboutsummaryrefslogtreecommitdiff
path: root/sway/container.c
diff options
context:
space:
mode:
authorS. Christoffer Eliesen <christoffer@eliesen.no>2015-12-19 01:21:00 +0100
committerS. Christoffer Eliesen <christoffer@eliesen.no>2015-12-20 21:23:20 +0100
commitce54b4ff2eeda61ead9389a9bfd41aa7310a6ece (patch)
tree2c368a6671d0b866e498149973b9987cb9fe82ba /sway/container.c
parentadf5b8fed70b3b61e67f16c3bec4a9b25d8ec831 (diff)
container: Fix inner gaps against screen edge.
Diffstat (limited to 'sway/container.c')
-rw-r--r--sway/container.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/sway/container.c b/sway/container.c
index b85d2114..e6fa4f37 100644
--- a/sway/container.c
+++ b/sway/container.c
@@ -671,7 +671,16 @@ int swayc_gap(swayc_t *container) {
if (container->type == C_VIEW) {
return container->gaps >= 0 ? container->gaps : config->gaps_inner;
} else if (container->type == C_WORKSPACE) {
- return container->gaps >= 0 ? container->gaps : config->gaps_outer;
+ int base = container->gaps >= 0 ? container->gaps : config->gaps_outer;
+ if (config->edge_gaps) {
+ // the inner gap is created via a margin around each window which
+ // is half the gap size, so the workspace also needs half a gap
+ // size to make the outermost gap the same size (excluding the
+ // actual "outer gap" size which is handled independently)
+ return base + config->gaps_inner / 2;
+ } else {
+ return base;
+ }
} else {
return 0;
}