From 8a78eae3ff194a0d996b74e9bc8c15fdfe040ce7 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Tue, 30 Oct 2012 17:39:59 +0100 Subject: [PATCH] Adapt lineGap during sizing --- gtk/xboard.c | 12 +++++++++--- 1 files changed, 9 insertions(+), 3 deletions(-) diff --git a/gtk/xboard.c b/gtk/xboard.c index 38ecb2d..a3add4a 100644 --- a/gtk/xboard.c +++ b/gtk/xboard.c @@ -1454,11 +1454,17 @@ CoDrag (GtkWidget *sh, WindowPlacement *wp) void ReSize (WindowPlacement *wp) { - int sqx, sqy, w, h; + int sqx, sqy, w, h, lg = lineGap; if(wp->width == wpMain.width && wp->height == wpMain.height) return; // not sized - sqx = (wp->width - lineGap - marginW) / BOARD_WIDTH - lineGap; - sqy = (wp->height - lineGap - marginH) / BOARD_HEIGHT - lineGap; + sqx = (wp->width - lg - marginW) / BOARD_WIDTH - lg; + sqy = (wp->height - lg - marginH) / BOARD_HEIGHT - lg; if(sqy < sqx) sqx = sqy; + if(appData.overrideLineGap < 0) { // do second iteration with adjusted lineGap + lg = lineGap = sqx < 37 ? 1 : sqx < 59 ? 2 : sqx < 116 ? 3 : 4; + sqx = (wp->width - lg - marginW) / BOARD_WIDTH - lg; + sqy = (wp->height - lg - marginH) / BOARD_HEIGHT - lg; + if(sqy < sqx) sqx = sqy; + } if(sqx != squareSize) { //printf("new sq size %d (%dx%d)\n", sqx, wp->width, wp->height); squareSize = sqx; // adopt new square size -- 1.7.0.4