diff --git a/src/manage.c b/src/manage.c index 5148d3f3..b7ea5e69 100644 --- a/src/manage.c +++ b/src/manage.c @@ -454,11 +454,8 @@ void manage_window(xcb_window_t window, xcb_get_window_attributes_cookie_t cooki floating_enable(nc, automatic_border); } - if (nc->border_style == BS_PIXEL) { - /* if the border style is BS_PIXEL, explicitly set the border width of - * the new container */ - nc->current_border_width = (want_floating ? config.default_floating_border_width : config.default_border_width); - } + /* explicitly set the border width to the default */ + nc->current_border_width = (want_floating ? config.default_floating_border_width : config.default_border_width); /* to avoid getting an UnmapNotify event due to reparenting, we temporarily * declare no interest in any state change event of this window */ diff --git a/testcases/t/228-border-widths.t b/testcases/t/228-border-widths.t index e236fe60..be1e7f85 100644 --- a/testcases/t/228-border-widths.t +++ b/testcases/t/228-border-widths.t @@ -47,10 +47,12 @@ my $wscontent = get_ws($tmp); my @tiled = @{$wscontent->{nodes}}; ok(@tiled == 1, 'one tiled container opened'); +is($tiled[0]->{current_border_width}, 5, 'tiled current border width set to 5'); is($tilewindow->rect->width, $tiled[0]->{rect}->{width} - 2*5, 'tiled border width 5'); my @floating = @{$wscontent->{floating_nodes}}; ok(@floating == 1, 'one floating container opened'); +is($floating[0]->{nodes}[0]->{current_border_width}, 10, 'floating current border width set to 10'); is($floatwindow->rect->width, $floating[0]->{rect}->{width} - 2*10, 'floating border width 10'); exit_gracefully($pid); @@ -80,12 +82,49 @@ $wscontent = get_ws($tmp); @tiled = @{$wscontent->{nodes}}; ok(@tiled == 1, 'one tiled container opened'); +is($tiled[0]->{current_border_width}, 3, 'tiled current border width set to 3'); is($tilewindow->rect->width, $tiled[0]->{rect}->{width} - 2*3, 'tiled border width 3'); @floating = @{$wscontent->{floating_nodes}}; ok(@floating == 1, 'one floating container opened'); +is($floating[0]->{nodes}[0]->{current_border_width}, 7, 'floating current border width set to 7'); is($floatwindow->rect->width, $floating[0]->{rect}->{width} - 2*7, 'floating border width 7'); exit_gracefully($pid); +##################################################################### +# 3: make sure normal border widths work as well +##################################################################### + +$config = <{nodes}}; +ok(@tiled == 1, 'one tiled container opened'); +is($tiled[0]->{current_border_width}, 4, 'tiled current border width set to 4'); +is($tilewindow->rect->width, $tiled[0]->{rect}->{width} - 2*4, 'tiled border width 4'); + +@floating = @{$wscontent->{floating_nodes}}; +ok(@floating == 1, 'one floating container opened'); +is($floating[0]->{nodes}[0]->{current_border_width}, 6, 'floating current border width set to 6'); +is($floatwindow->rect->width, $floating[0]->{rect}->{width} - 2*6, 'floating border width 6'); + +exit_gracefully($pid); + done_testing;