]> git.sur5r.net Git - i3/i3/commitdiff
Make sure borders are never counted as adjacent to the edge for floating containers. 1892/head
authorIngo Bürk <ingo.buerk@tngtech.com>
Fri, 4 Sep 2015 23:44:37 +0000 (01:44 +0200)
committerIngo Bürk <ingo.buerk@tngtech.com>
Fri, 4 Sep 2015 23:44:37 +0000 (01:44 +0200)
fixes #1215
relates to #998

src/con.c

index b1ddf2acc3340eb4d955dcf15f0bcba336627417..9a5d36c13c4e32bd9aa858f73171ba724b172cd0 100644 (file)
--- a/src/con.c
+++ b/src/con.c
@@ -1245,18 +1245,13 @@ Rect con_border_style_rect(Con *con) {
     int border_style = con_border_style(con);
     if (border_style == BS_NONE)
         return (Rect){0, 0, 0, 0};
-    borders_to_hide = con_adjacent_borders(con) & config.hide_edge_borders;
     if (border_style == BS_NORMAL) {
         result = (Rect){border_width, 0, -(2 * border_width), -(border_width)};
     } else {
         result = (Rect){border_width, border_width, -(2 * border_width), -(2 * border_width)};
     }
 
-    /* Floating windows are never adjacent to any other window, so
-       don’t hide their border(s). This prevents bug #998. */
-    if (con_is_floating(con))
-        return result;
-
+    borders_to_hide = con_adjacent_borders(con) & config.hide_edge_borders;
     if (borders_to_hide & ADJ_LEFT_SCREEN_EDGE) {
         result.x -= border_width;
         result.width += border_width;
@@ -1280,6 +1275,11 @@ Rect con_border_style_rect(Con *con) {
  */
 adjacent_t con_adjacent_borders(Con *con) {
     adjacent_t result = ADJ_NONE;
+    /* Floating windows are never adjacent to any other window, so
+       don’t hide their border(s). This prevents bug #998. */
+    if (con_is_floating(con))
+        return result;
+
     Con *workspace = con_get_workspace(con);
     if (con->rect.x == workspace->rect.x)
         result |= ADJ_LEFT_SCREEN_EDGE;