Bugfix: Honor the X11 window border when calculating dimensions for floating windows

This commit is contained in:
Michael Stapelberg 2011-09-17 14:10:35 +01:00
parent f6eaa8a580
commit 983a679537
1 changed files with 5 additions and 0 deletions

View File

@ -103,6 +103,7 @@ void floating_enable(Con *con, bool automatic) {
int deco_height = config.font.height + 5;
DLOG("Original rect: (%d, %d) with %d x %d\n", con->rect.x, con->rect.y, con->rect.width, con->rect.height);
DLOG("Geometry = (%d, %d) with %d x %d\n", con->geometry.x, con->geometry.y, con->geometry.width, con->geometry.height);
Rect zero = { 0, 0, 0, 0 };
nc->rect = con->geometry;
/* If the geometry was not set (split containers), we need to determine a
@ -125,6 +126,10 @@ void floating_enable(Con *con, bool automatic) {
nc->rect.height += deco_height + 2;
nc->rect.width += 4;
/* Honor the X11 border */
nc->rect.height += con->border_width * 2;
nc->rect.width += con->border_width * 2;
/* Some clients (like GIMPs color picker window) get mapped
* to (0, 0), so we push them to a reasonable position
* (centered over their leader) */