aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar emersion <contact@emersion.fr>2018-05-21 09:22:58 +0100
committerLibravatar GitHub <noreply@github.com>2018-05-21 09:22:58 +0100
commitec1c4c6c3683772637dbfeaf5cdbaea4e1c6e49d (patch)
tree4ac655c18b7e27d02dde7708911e8846cc27d30f
parentMerge pull request #2012 from RedSoxFan/fix-border-changing-focus (diff)
parentFix hide_edge_borders constraints (diff)
downloadsway-ec1c4c6c3683772637dbfeaf5cdbaea4e1c6e49d.tar.gz
sway-ec1c4c6c3683772637dbfeaf5cdbaea4e1c6e49d.tar.zst
sway-ec1c4c6c3683772637dbfeaf5cdbaea4e1c6e49d.zip
Merge pull request #2011 from RyanDwyer/fix-hide-edge-border-bottom
Fix hide_edge_borders constraints
-rw-r--r--sway/tree/view.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/sway/tree/view.c b/sway/tree/view.c
index 648c1655..192a73c5 100644
--- a/sway/tree/view.c
+++ b/sway/tree/view.c
@@ -139,9 +139,10 @@ void view_autoconfigure(struct sway_view *view) {
139 return; 139 return;
140 } 140 }
141 141
142 struct sway_container *ws = container_parent(view->swayc, C_WORKSPACE);
143
142 int other_views = 1; 144 int other_views = 1;
143 if (config->hide_edge_borders == E_SMART) { 145 if (config->hide_edge_borders == E_SMART) {
144 struct sway_container *ws = container_parent(view->swayc, C_WORKSPACE);
145 other_views = container_count_descendants_of_type(ws, C_VIEW) - 1; 146 other_views = container_count_descendants_of_type(ws, C_VIEW) - 1;
146 } 147 }
147 148
@@ -151,16 +152,16 @@ void view_autoconfigure(struct sway_view *view) {
151 if (config->hide_edge_borders == E_BOTH 152 if (config->hide_edge_borders == E_BOTH
152 || config->hide_edge_borders == E_VERTICAL 153 || config->hide_edge_borders == E_VERTICAL
153 || (config->hide_edge_borders == E_SMART && !other_views)) { 154 || (config->hide_edge_borders == E_SMART && !other_views)) {
154 view->border_left = view->swayc->x != 0; 155 view->border_left = view->swayc->x != ws->x;
155 int right_x = view->swayc->x + view->swayc->width; 156 int right_x = view->swayc->x + view->swayc->width;
156 view->border_right = right_x != output->width; 157 view->border_right = right_x != ws->x + ws->width;
157 } 158 }
158 if (config->hide_edge_borders == E_BOTH 159 if (config->hide_edge_borders == E_BOTH
159 || config->hide_edge_borders == E_HORIZONTAL 160 || config->hide_edge_borders == E_HORIZONTAL
160 || (config->hide_edge_borders == E_SMART && !other_views)) { 161 || (config->hide_edge_borders == E_SMART && !other_views)) {
161 view->border_top = view->swayc->y != 0; 162 view->border_top = view->swayc->y != ws->y;
162 int bottom_y = view->swayc->y + view->swayc->height; 163 int bottom_y = view->swayc->y + view->swayc->height;
163 view->border_bottom = bottom_y != output->height; 164 view->border_bottom = bottom_y != ws->y + ws->height;
164 } 165 }
165 } 166 }
166 167