X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=board.c;h=48f075de4db5447a4d5d0697c9f38aefc18aae83;hb=deb3473452a674b82d27b03fcf7e570c1cb03841;hp=0becf9a76698167477f92350aa543ad05d563581;hpb=dd67211f46050409861a109a9778af6594279569;p=xboard.git diff --git a/board.c b/board.c index 0becf9a..48f075d 100644 --- a/board.c +++ b/board.c @@ -817,6 +817,7 @@ DrawSquare (int row, int column, ChessSquare piece, int do_flash) snprintf(tString, 3, "%d", piece); align = 4; // holdings count in upper-left corner } + if(piece == DarkSquare) square_color = 2; if(square_color == 2 || appData.blindfold) piece = EmptySquare; if (do_flash && piece != EmptySquare && appData.flashCount > 0) { @@ -918,7 +919,7 @@ DrawPosition (int repaint, Board board) MarkMenuItem("View.Flip View", flipView); } - if(nr) { SlavePopUp(); SwitchWindow(); } // [HGM] popup board if not yet popped up, and switch drawing to it. + if(nr) { SlavePopUp(); SwitchWindow(0); } // [HGM] popup board if not yet popped up, and switch drawing to it. /* * It would be simpler to clear the window with XClearWindow() @@ -1029,12 +1030,12 @@ DrawPosition (int repaint, Board board) GraphExpose(currBoard, x - lineGap, y - lineGap, squareSize + 2*lineGap, squareSize + 2*lineGap); else GraphExpose(currBoard, x, y, squareSize, squareSize); - damage[nr][i][j] &= ~2; // remember damage by newly drawn error in '2' bit, to schedule it for erasure next draw + damage[nr][i][j] &= 2; // remember damage by newly drawn error in '2' bit, to schedule it for erasure next draw } } FlashDelay(0); // this flushes drawing queue; - if(nr) SwitchWindow(); + if(nr) SwitchWindow(1); } /* [AS] Arrow highlighting support */