]> git.sur5r.net Git - i3/i3/commitdiff
Use a reasonable default sep_block_width if a separator_symbol is given
authorIngo Bürk <ingo.buerk@tngtech.com>
Fri, 3 Apr 2015 20:54:59 +0000 (22:54 +0200)
committerMichael Stapelberg <michael@stapelberg.de>
Mon, 6 Apr 2015 13:43:47 +0000 (15:43 +0200)
docs/userguide
i3bar/include/xcb.h
i3bar/src/child.c
i3bar/src/xcb.c

index 3d935e40aac7c2fbf8f5d5f6c2b45e47db4dec8b..80de5c88e37af292682c070a00817653602e845a 100644 (file)
@@ -1252,8 +1252,7 @@ bar {
 === Custom separator symbol
 
 Specifies a custom symbol to be used for the separator as opposed to the vertical,
-one pixel thick separator. Note that you may have to adjust the +sep_block_width+ 
-property.
+one pixel thick separator.
 
 *Syntax*:
 -------------------------
index 8e48c0c138e0734ea34ea77eae1ceddd689107c8..bb37e7d517921066922fca075ff6b591421c7834 100644 (file)
@@ -44,6 +44,9 @@ struct xcb_color_strings_t {
 
 typedef struct xcb_colors_t xcb_colors_t;
 
+/* Cached width of the custom separator if one was set */
+int separator_symbol_width;
+
 /*
  * Early initialization of the connection to X11: Everything which does not
  * depend on 'config'.
index 9cc50f2a25f7b5e3a3d9bb0981ecc4ea93ee8be3..41f8880dd2b736f6c0b4fa3af41723f2aae5145e 100644 (file)
@@ -162,7 +162,10 @@ static int stdin_start_map(void *context) {
     memset(&(ctx->block), '\0', sizeof(struct status_block));
 
     /* Default width of the separator block. */
-    ctx->block.sep_block_width = logical_px(9);
+    if (config.separator_symbol == NULL)
+        ctx->block.sep_block_width = logical_px(9);
+    else
+        ctx->block.sep_block_width = logical_px(8) + separator_symbol_width;
 
     return 1;
 }
index e53b92262df976bd99d3bdccdfded1e04915c98a..ba57b9fa397d11a8fabc238da2727ba09c4095ab 100644 (file)
@@ -63,9 +63,6 @@ static i3Font font;
 /* Overall height of the bar (based on font size) */
 int bar_height;
 
-/* Cached width of the custom separator if one was set */
-int separator_symbol_width;
-
 /* These are only relevant for XKB, which we only need for grabbing modifiers */
 int xkb_base;
 int mod_pressed = 0;