aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar D.B <thejan.2009@gmail.com>2016-09-10 15:57:04 +0200
committerLibravatar D.B <thejan.2009@gmail.com>2016-09-10 16:11:33 +0200
commit873dfc07f3d3d55a031674a6ffbc0f5b7febe08f (patch)
tree699e47bbef6f9dce14615a590c6fad35639cf13e
parentMerge pull request #888 from zandrmartin/swaybar-pango-fix (diff)
downloadsway-873dfc07f3d3d55a031674a6ffbc0f5b7febe08f.tar.gz
sway-873dfc07f3d3d55a031674a6ffbc0f5b7febe08f.tar.zst
sway-873dfc07f3d3d55a031674a6ffbc0f5b7febe08f.zip
Use indicator border color only when needed.
Indicator border color is now used only when a container is the only child. Reason for the change? i3 does it this way. Sway container borders are now a bit more similar to i3 ones.
-rw-r--r--sway/border.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sway/border.c b/sway/border.c
index 09bf05e9..c64fad70 100644
--- a/sway/border.c
+++ b/sway/border.c
@@ -108,6 +108,9 @@ static void render_borders(swayc_t *view, cairo_t *cr, struct border_colors *col
108 int x = b->origin.x - g->origin.x; 108 int x = b->origin.x - g->origin.x;
109 int y = b->origin.y - g->origin.y; 109 int y = b->origin.y - g->origin.y;
110 110
111 // draw vertical/horizontal indicator if container is the only child of its parent container
112 bool is_only_child = view->parent && view->parent->children && view->parent->children->length == 1;
113
111 // left border 114 // left border
112 int left_border = v->origin.x - b->origin.x; 115 int left_border = v->origin.x - b->origin.x;
113 if (left_border > 0) { 116 if (left_border > 0) {
@@ -121,7 +124,7 @@ static void render_borders(swayc_t *view, cairo_t *cr, struct border_colors *col
121 // right border 124 // right border
122 int right_border = b->size.w - v->size.w - left_border; 125 int right_border = b->size.w - v->size.w - left_border;
123 if (right_border > 0) { 126 if (right_border > 0) {
124 if (layout == L_HORIZ) { 127 if (is_only_child && layout == L_HORIZ) {
125 color = colors->indicator; 128 color = colors->indicator;
126 } else { 129 } else {
127 color = colors->child_border; 130 color = colors->child_border;
@@ -147,7 +150,7 @@ static void render_borders(swayc_t *view, cairo_t *cr, struct border_colors *col
147 // bottom border 150 // bottom border
148 int bottom_border = b->size.h - (top_border + v->size.h); 151 int bottom_border = b->size.h - (top_border + v->size.h);
149 if (bottom_border > 0) { 152 if (bottom_border > 0) {
150 if (layout == L_VERT) { 153 if (is_only_child && layout == L_VERT) {
151 color = colors->indicator; 154 color = colors->indicator;
152 } else { 155 } else {
153 color = colors->child_border; 156 color = colors->child_border;