H.G. Muller [Tue, 19 Feb 2013 18:14:00 +0000]
Fix repositioning of GTK windows
After 'hide' and 'show' GTK would not position the window in the same place,
but center it on the parent. Now we reposition the window after 'show' based
on the WindowPlacement data (if available).
H.G. Muller [Tue, 19 Feb 2013 17:52:41 +0000]
Remember window params of slave board
The slave board now has been assigned a WindowPlacement, which is also
saved in the settings file, through new options -slaveX/Y/W/H.
H.G. Muller [Tue, 19 Feb 2013 16:48:39 +0000]
Fix repairing of arrow damage
The '2' bit in damage[][] to indicate the arrow was erroneously cleared,
rather than kept.
Arun Persaud [Tue, 19 Feb 2013 03:55:20 +0000]
fix OK-response in gtk dialogs, see
c7f8df124
the fix in
c7f8df124 needs to be applied to both of those if cases
Arun Persaud [Tue, 19 Feb 2013 01:11:32 +0000]
removed two more translations from debug output
Arun Persaud [Tue, 19 Feb 2013 01:09:30 +0000]
fixed segfault of g_markup_printf_escaped which needs utf-8 strings
defined text-domain as utf-8 solved this
Arun Persaud [Mon, 18 Feb 2013 21:38:51 +0000]
fixed gtk-warning
Arun Persaud [Mon, 18 Feb 2013 18:06:36 +0000]
removed some translation calls for messages in the debug log
Arun Persaud [Mon, 18 Feb 2013 17:46:53 +0000]
add keyboard shortcuts back into Xaw version
Arun Persaud [Sun, 17 Feb 2013 22:13:30 +0000]
in debug mode also print the git-version if available during build
H.G. Muller [Mon, 18 Feb 2013 20:19:05 +0000]
Print game-list timing messages only in debug mode
H.G. Muller [Mon, 18 Feb 2013 20:01:35 +0000]
Fix title of top-level windows
H.G. Muller [Mon, 18 Feb 2013 17:51:44 +0000]
Cure GTK warning in top-level windows
There is no OK button in top-level windows, so the 'response' signal is
not defined, and should not be connected.
H.G. Muller [Mon, 18 Feb 2013 17:33:34 +0000]
Fix graying of Revert menu item
The new code was checkmarking it in stead of enabling it!
H.G. Muller [Mon, 18 Feb 2013 10:38:29 +0000]
Add -onlyOwnGames option
This suppresses auto-saving of ICS observed games.
H.G. Muller [Mon, 18 Feb 2013 10:17:16 +0000]
Allow display of 50-move counter in zippy mode
No chance it could be considered cheating there.
H.G. Muller [Mon, 18 Feb 2013 09:48:53 +0000]
Add new vertical pixel fudge
With the new GTK window type the board is 13 pixels too small.
H.G. Muller [Mon, 18 Feb 2013 09:29:17 +0000]
Don't add PV moves on board clicking in AnalyzeMode
Playing PV moves by right-clicking the PV was only intended for clicks
in the engine Output window, selecting from multi-PV analysis output,
where by default it plays only the first move. PV walkig by right-clicking
the board, however, would start the walk at the end even in AnalyzeMode,
and thus add the entire PV. Which is probably not useful. So adding moves
in that case has now completely been suppressed, so it can be used for
harmless viewing of the latest PV.
The behavior has also been made subject to a persistent Boolean option
-appendPV, configured to true, with a checkbox in General Options.
A checkbox has also been added there for controlling the -variations option,
which is now also configured to true.
H.G. Muller [Mon, 18 Feb 2013 09:25:40 +0000]
Remove checkbox for 'Move Sound'
This function is better controlled from the Sounds dialog.
H.G. Muller [Mon, 18 Feb 2013 08:59:48 +0000]
Make switching between board windows absolute
Selecting the window in which to draw the board when the slave board for
-dualBoard was up was done by a toggle. For unknown reason this could cause
a situation where the drawing took place in the other window than the
intended one. The code is made more robust by explicitly specifying which
window to draw in, based on the partnerUp flag.
H.G. Muller [Mon, 18 Feb 2013 08:50:48 +0000]
Warn about experimental nature of dual board
The message field, which for now is unused, now contains a warning message.
Arun Persaud [Sun, 17 Feb 2013 18:49:21 +0000]
add close buttons to gtk windows
use windows instead of dialogs for toplevel elements
Arun Persaud [Sun, 17 Feb 2013 03:02:52 +0000]
keyboard accelerators for both front ends.
moved them out of the string definition, so that gtk can add them automatically.
Also wrote a function that loads them for X11.
TODO: add them again when creating X11 menu names
Arun Persaud [Fri, 15 Feb 2013 19:03:02 +0000]
added rotated shogi pieces for -flipback option and moved them to the themes directory
Arun Persaud [Fri, 15 Feb 2013 01:27:27 +0000]
add test for pkg-config
exit configure in case we can't find it.
H.G. Muller [Thu, 14 Feb 2013 12:02:08 +0000]
Only perform e.p. capture if there are rights
The heuristic for e.p. capture was such that any non-forward move with
a Pawn to an empty square would delete the piece behind its new location
(Xiangqi exempted). This is now limited to cases where EP_STATUS indicates
that the deleted piece was a Pawn that performed a double-push on the
previous move. (Or if there is unknown EP_STATUS.)
This makes XBoard more generally suitable for use with variants that have
non-conventional Pawn moves (with legality testing off). To guarantee this
will not have any unexpected effects in normal Chess, this patch will only
be active if legality testing is off.
H.G. Muller [Mon, 11 Feb 2013 15:25:09 +0000]
Unreserve tourney game on exit during engine load
While waiting for the feature timeout we are not yet in TwoMachines mode,
so quitting XBoard at that stage would not unreserve the upcoming game.
A global flag 'startingEngine' similar to 'waitingForGame' now signals
this condition.
H.G. Muller [Sun, 10 Feb 2013 12:40:10 +0000]
Better fix of feature timeout
The previous fix of the 2nd engine's done=1 aborting the 1st engine's
feature timeout by starting the game caused problems with v1 engines,
or other engines that would never send done=1. It is now fixed by
explicitly testing for a pending feature timeout after resurrecting
the 1st engine, rather than having TwoMachinesEventIfReady wait for
initDone to be set by reception of done=1.
Also refrain from freezing the UI between match games, as in TwoMachines
mode the UI is mostly disabled anyway.
H.G. Muller [Fri, 8 Feb 2013 15:24:23 +0000]
Connect Ctrl key in WinBoard
The Control key is now checked during move entry, for excluding moves
during analysis, or for copying pieces when editing a positions. But the
WB front-end did not read it out yet!
H.G. Muller [Fri, 8 Feb 2013 15:23:58 +0000]
Fix Makefile for install of Xiangqi pieces
H.G. Muller [Fri, 8 Feb 2013 14:35:44 +0000]
Add Xiangqi piece images to project
Let the images install in themes/xiangqi.
H.G. Muller [Fri, 8 Feb 2013 14:14:43 +0000]
Revive -flipBlack option
The -flipBlack option in the cairo version is now implemented the same
way as it was in XBoard, swapping white and black pieces in filpView mode.
This requires a set black piece images that are the upside-down versions
of the white ones.
H.G. Muller [Thu, 7 Feb 2013 12:55:59 +0000]
Remove empty-square SVG images from project
H.G. Muller [Wed, 6 Feb 2013 18:00:35 +0000]
Add desktop stuff for .xop MIME type.
Icons and desktop file were missing, as was the automake code to package them.
H.G. Muller [Wed, 6 Feb 2013 15:48:33 +0000]
Update NEWS file
H.G. Muller [Wed, 6 Feb 2013 13:48:27 +0000]
Add boolean -autoBox option
This option controls the automatic popup of the ICS Input Box on typing
a printable character, which was annoing to some. The option can be
set from the ICS Options dialog.
H.G. Muller [Wed, 6 Feb 2013 09:56:20 +0000]
Draw both coords in a1
The lower-left board square needed two inscriptions, but DrawOneSquare()
only allowed one, so that the file ID would not be written. Now two strings
can be passed, and when align > 1 to indicate the alignment of the top
string, it is still checked if a bottom string is present as well, which
then is drawn with alignment 1 (= bottom right).
The rank coord or piece count can now also be double digit.
H.G. Muller [Tue, 5 Feb 2013 10:56:10 +0000]
Let initial setting of Twice checkbox reflect current state
The Twice checkbox in the Tournament dialog of WinBoard was by default
starting unticked. It is more convenient to have it preserve the current
state, however, based on the -lpi or -lgi value. Like the auto-incremet
checkbox already did.
H.G. Muller [Mon, 4 Feb 2013 21:07:05 +0000]
Put GTK warning in about-box
H.G. Muller [Mon, 4 Feb 2013 20:59:05 +0000]
Fix warnings of build server
H.G. Muller [Sat, 2 Feb 2013 14:58:04 +0000]
Fix GTK error auto-raising board
The variable mainwindow is not set in the gtk2 version. Unfortunately
it is still used to determine default board size...
H.G. Muller [Fri, 1 Feb 2013 18:42:12 +0000]
Update Dutch WB translation
H.G. Muller [Fri, 1 Feb 2013 18:37:06 +0000]
Add some new strings to WB translation template
H.G. Muller [Fri, 1 Feb 2013 18:34:32 +0000]
Assign shortcut char to WB menu item
The new Save games as Book item did not have a shortcut yet.
H.G. Muller [Fri, 1 Feb 2013 18:31:18 +0000]
Let WinBoard start in its installation folder
The current directory in WinBoard was not automatically the same as the
installDir returned by SearchPath. Especially not if used without shortcut
by file association.
H.G. Muller [Fri, 1 Feb 2013 18:29:26 +0000]
Fix warning in WinBoard
H.G. Muller [Wed, 30 Jan 2013 13:25:57 +0000]
Fix expose of to-square with grid off
The code relied on drawHighlight to request an expose evet for the entire
square, but when lineGap = 0, drawHighlight is a no-op.
H.G. Muller [Tue, 29 Jan 2013 07:39:30 +0000]
Fix library order
On OS X dialog windows could not get focus if -lXaw appeared after
-lX11 -lXt in the linker command. This was cured by moving
@FRONTEND_FLAGS@ (which expands to -lXaw) first in the LDADD parameter
of the automake file.
H.G. Muller [Mon, 28 Jan 2013 16:38:26 +0000]
Preserve PGN tags when loading engine
Switching to EditGame mode would normally erase the tags, but when analyzing
a loaded game this would be undesirable. When the engine is playing, keeping
the tags is dubious, but it is not obvious what to put in a new name tag,
so we leave that for now.
H.G. Muller [Mon, 28 Jan 2013 16:23:47 +0000]
Preserve mode on engine loading (sometimes)
That the mode always switched to EditGame after engine loading was
particularly annoying at the start of a game (where leaving BeginningOfGame
mode would disablethe Time Control dialog, and the engine would not
automatically reply if you start playing) and AnalyzeMode. These two
modes are now preserved, BeginningOfGame by refraining from calling
EditGameEvent() and sending 'force' to the new engine, and AnalyzeMode
be calling AnalyzeModeEvent() after the engine is loaded and repositioned.
H.G. Muller [Mon, 28 Jan 2013 13:14:19 +0000]
Catch unknown engine in tourney games
When an XBoard instance is playing on a tourney it can happen that it is
using a settings file with an engine list not yet containing a certain
participant, because that participant was just installed in the instance
that created the tourney file, but it did not save those modifications yet.
This error is now caught, and leads to an error popup and stopping of the
tourney play. This error was made non-fatal to allow the user to decide
if he wants to quit with or without saving the settings (which, after all,
does not seem up-to-date).
H.G. Muller [Sat, 26 Jan 2013 17:08:37 +0000]
Adjudicate pawn-drop mate as loss in Shogi
Mating with a Pawn drop is illegal in Shogi, but rather than burdoning
the legality-testing by this complex rule, we simply invert the result
for such a mate. After all, Shogi customs are such that everything illegal
leads to an immediate loss.
H.G. Muller [Fri, 25 Jan 2013 09:05:44 +0000]
Adjudicate perpetual checks as loss also in Shogi
The Xiangqi code for recognizing perpetual checks is now also activated for
Shogi, but in this case we bail out before checking for perpetual chases.
The mini-Shogi case is then recognized as a win for gote.
H.G. Muller [Fri, 25 Jan 2013 08:55:56 +0000]
Stalemate is a win in Shogi
In regular Shogi this never occurs, but in the mini variants it happens
often enough.
H.G. Muller [Tue, 22 Jan 2013 19:49:34 +0000]
Fix engine timeout problem in match mode
Reload of a reuse=0 engine would cause a done=1 event which would be
abort the feature timeout of the other engine in the first game.
H.G. Muller [Tue, 22 Jan 2013 19:32:33 +0000]
Enforce -popupMoveErrors
One move error was using DisplayError(), in stead of DisplayMoveError(),
and thus did not obey the -popupMoveErrors option.
H.G. Muller [Mon, 21 Jan 2013 14:30:29 +0000]
Update texi file
H.G. Muller [Mon, 21 Jan 2013 09:26:20 +0000]
Fix some warnings
Arun Persaud [Mon, 21 Jan 2013 03:09:05 +0000]
Updated German translation
H.G. Muller [Sat, 19 Jan 2013 16:54:59 +0000]
Do delayed board draw also with -stickyWindows false
Only CoDrag needs to be suppressed on a configure event with
-stickyWindows false, not the board redraw.
H.G. Muller [Fri, 18 Jan 2013 10:11:48 +0000]
Let tellothers command add comment to PGN in local mode
H.G. Muller [Sun, 30 Dec 2012 14:19:57 +0000]
Allow use of ~ in pieceToChar for shadow pieces in any variant
The use of shadow-pieces for promoted Pawns was limited to Crazyhouse and
Bughouse. But this is not necessary, and in fact undesirable, as it made
it impossible to implement Crazyhouse960, which combines shadow promotions
with Fischer castling (only available in variant fischerandom)s, and thus
has to be played as 8x8+5_fischerandom, using the Crazyhouse -pieceToChaTable.
H.G. Muller [Sun, 30 Dec 2012 14:06:33 +0000]
Resend engine-defined options after reuse=0 reload
When the engine process is re-spawned for a new game under -xreuse setting,
any alteration of engine settings brought about through the Engine Settings
dialogs would be lost, and revert to the engine's default. This is now fixed
by re-sending all options (known from the previous load of the same engine)
with the current settings immediately after "protover 2", and ignoring the
engine's option features. Rather than clearing the option list, and
redefining it from the option features.
H.G. Muller [Sun, 30 Dec 2012 13:58:16 +0000]
Implement aborting of games on engine request.
A new game-end command is added. For bakward compatibility it is disguised
as an old one, namely "1/2-1/2 {Engine Abort Request}". These resultDetails
are recognized as special, and rather than ending the game in a draw (which
GUIs not implementing this), the game will be completely 'expunged' from
the match or tourney it is part of, leaving no trace in the saveGameFile.
H.G. Muller [Sun, 30 Dec 2012 13:54:43 +0000]
Store some more tourney params in tourney file
The hash and threads settings, as well as ponder and book options are now
also saved in the tourney file, so that tournaments can be played in
parallel where these parameters differ, and no mess up can occur on
restarting a touney after doing something else.
H.G. Muller [Sun, 23 Dec 2012 10:26:31 +0000]
Do not automatically save aborted games in tourney PGN
When the game result is 'unfinished', we prompt for a filename rather
then using the specified saveGameFile if a tourney is in progress.
Arun Persaud [Sat, 19 Jan 2013 16:35:52 +0000]
fix configure bug that showed up on OS X (couldn't find X11/Dialog.h)
X_CFLAGS (set by AC_PATH_XTRA) was not used in Makefile.am. It was used in tests for X11/Dialog.h, etc. so configure worked, but make didn't.
Arun Persaud [Sat, 19 Jan 2013 06:26:13 +0000]
Updated Ukrainian translations
Arun Persaud [Wed, 9 Jan 2013 15:57:43 +0000]
removed trailing whitespace
Arun Persaud [Wed, 9 Jan 2013 15:49:20 +0000]
Updated copyright notice to 2013
H.G. Muller [Sat, 22 Dec 2012 21:46:21 +0000]
Do not move to forwadMostMove when unpausing AnalyzeMode
H.G. Muller [Sat, 22 Dec 2012 21:44:50 +0000]
Use Ctrl key in AnalyzeMode to exclude entered move
H.G. Muller [Sat, 22 Dec 2012 19:40:26 +0000]
Implement insufficient mating material for Knightmate
KBK is draw with Royal Knight. With exo-pieces also KNK and KFK.
H.G. Muller [Sat, 22 Dec 2012 19:25:51 +0000]
Fix rep-draw detection in drop games
In games like Crazyhouse every move is reversible, as captured pieces
can eventually change sides again, and be dropped back on the board.
So we have to search back a full 100 ply for repetitions, passing captures
and Pawn moves.
Arun Persaud [Wed, 12 Dec 2012 06:33:07 +0000]
updated po/pot files
Arun Persaud [Wed, 12 Dec 2012 06:18:05 +0000]
new version number for developer release
H.G. Muller [Mon, 10 Dec 2012 13:48:05 +0000]
Prefer pause mode on pondering engine over 'easy'
If the thinking engine is stopped after its move because it does not
support pause, is is still better to use pause on the pondering engine
than to switch of its pondering with 'easy', as the latter might not
be instantaneous. Also switch off pondering in the thinking engine before
it gives the move, just in case it does not respond immediately to
easy / hard.
H.G. Muller [Mon, 10 Dec 2012 12:40:47 +0000]
Update WinBoard translation template
H.G. Muller [Mon, 10 Dec 2012 12:35:41 +0000]
Fix min-Shogi promotion zone
In integer arithmetic N*2/3 is not the same as N - N/3, with as a result
that the white promotion zone was 2 ranks deep on 5x5 boards. This only
happened in LegalityTest, but because this would classify all moves to
4th rank an non-promotions, they would be printed with a faulty
deferral (=) sign as promochar in SAN.
H.G. Muller [Mon, 10 Dec 2012 12:32:49 +0000]
Do not clear PGN tags on Analyze File
H.G. Muller [Mon, 10 Dec 2012 12:28:37 +0000]
Fix -fSAN in AnalyzeFile mode
The exception that a PV relates to currentMove rather than forwardMostMove
applies not oly in AnalyzeMode, but also in AnalyzeFile. Furthermore,
PvToSan did not properly restore the pushed game tail in this case.
H.G. Muller [Sat, 8 Dec 2012 15:02:09 +0000]
Improve scaling of border bitmap (WB)
The StretchBlt mode is set from dither to delete.
H.G. Muller [Wed, 5 Dec 2012 15:34:58 +0000]
Implement use of pause / resume protocol commands
Engines that implement feature pause=1 will be paused during their move
on a pause event; pondering engines will be controlled either through
'pause' or (if they don't support that) 'easy', which both should work
instantaneously. If the thinking engine does not support 'pause', the pausing
will be deferred to when it produces its move, and is implemented by not
relaying the move, and switch off pondering for both.
H.G. Muller [Mon, 3 Dec 2012 11:58:36 +0000]
Fix Loop-Chess promotions
Loop Chess is not a supported variant, but hould be playable as Crazyhouse
with an altered pieceToCharTable, not defining the shadow promotion pieces.
But with legality testing on promotion to shadow piece would take place
even if the shadow piece was not defined.
H.G. Muller [Sun, 2 Dec 2012 21:44:55 +0000]
Fix move highlighting with animation off
In WB the moving of SetHighlights to after the animation had broken the
highlighting of engine moves, because it was also moved after DrawPosition.
While it is DrawPosition that actually draws the highlights. Now it has been
moved to just before DrawPosition.
H.G. Muller [Sun, 2 Dec 2012 10:09:14 +0000]
Start browsing in currently-selected folder (WB)
The folder-browse dialog always started at My Computer, while file browsing
started in the globally last-used folder (which might not be related at all
to the file entry we are now browsing for).
H.G. Muller [Thu, 29 Nov 2012 22:38:18 +0000]
Implement book-creation functions
A new menu item triggers conversion of the currently loaded PGN file
to a Polyglot book, saved with the GUI-book filename. A (volatile) option
-mcBookMode alters the probing algorithm to build a book from scratch by
playing games (and using a form of learning).
H.G. Muller [Thu, 29 Nov 2012 21:23:44 +0000]
Use colors in Board-Options dialog also for font pieces (WB)
The piece color settings now control the pieceColor or fontPieceColor
settings, depending on the setting of -usePieceFont.
H.G. Muller [Thu, 29 Nov 2012 21:14:05 +0000]
Implement auto-creation of ICS logon file
Under control of the new option -autoCreateLogon (which can be set from
the ICS Options dialog) the first two lines in response to the ICS "login:"
pompt will be saved on a newly created logon file (if logon from such
an existing file failed).
H.G. Muller [Thu, 29 Nov 2012 20:56:02 +0000]
Add Themes dialog (WB)
This dialog, done by the generic popup, contains controls for many settings
that so far could only be controlled by options. It also introduces the
concept of 'themes', sets of options stored in the multi-line option
-themeNames.
Add some dummy routines to suppress compile errors in functions that
cannot be called yet in XBoard.
H.G. Muller [Thu, 29 Nov 2012 20:32:03 +0000]
Allow external piece bitmaps and board border (WB)
The -pieceImageDirectory is now also used for WinBoard, to indicate
a directory of .bmp files, used to replace the built-ins. The outline
and solid bitmaps can be full-color. This allows winBoard to use the
WinBoard-zeta graphics. A new option -border can indicate a bitmap file
used to draw a half-square-wide border around the board.
A white background has to be drawn underneath the black pieces, to avoid
color-interference with the board, just like happens for the white pieces.
These backgrounds now always use bright white, rather than -withePieceColor.
We still have to work on the scaling of the zeta (600x600) bitmaps to
the actual board size, as for some bitmaps the stratchblt is ugly.
H.G. Muller [Thu, 29 Nov 2012 20:05:15 +0000]
Add 'Continue Later' button in Tournament dialog (WB)
This button makes it possible to accept the values specified in the
dialog without immediately starting the tournament (as OK does),
so you can re-open the dialog later, and OK it then.
H.G. Muller [Thu, 29 Nov 2012 19:25:35 +0000]
Load opponent logo based on handle in ICS play (WB)
The logos for handles on FICS are sought in folder logos\freeches.org\*.bmp,
etc. If no logo for the handle is found there, the logo of the ICS is
displayed as usual.
Daniel Dugovic [Tue, 20 Nov 2012 04:35:05 +0000]
Fix configure script for --enable-zippy (tiny change)
reported and patch by Daniel.
edited by Arun Persaud:
- also fixed #ifndef ZIPPY -> #if !ZIPPY
- didn't change #if -> #ifdef
Arun Persaud [Sat, 10 Nov 2012 08:12:34 +0000]
don't define X_LIBS when using gtk-frontend
Arun Persaud [Thu, 8 Nov 2012 06:16:09 +0000]
updated po/pot files; added new frontend files
Arun Persaud [Thu, 8 Nov 2012 06:14:20 +0000]
fix configure script for --with-Xaw and --with-gtk
made Xaw the default and included xaw or gtk sources as extras
in case the other frontend is selected for make distcheck
Arun Persaud [Thu, 8 Nov 2012 05:13:38 +0000]
new version number for developer release
H.G. Muller [Wed, 31 Oct 2012 08:55:02 +0000]
Draw frames around memos and listboxes
H.G. Muller [Tue, 30 Oct 2012 16:39:59 +0000]
Adapt lineGap during sizing