-
Notifications
You must be signed in to change notification settings - Fork 5
/
ChangeLog
22317 lines (15841 loc) · 914 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
ChangeLog for XBoard/WinBoard
-----------------------------
(latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. )
2016-07-31 20:46:54 -0700 Arun Persaud <[email protected]>:
updated po/pot files
2016-07-31 20:45:22 -0700 Arun Persaud <[email protected]>:
new version number for release 4.9.1
2016-07-28 19:49:02 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix crash when logging out from ICS
The patch that sent "logout" to the ICS on a fatal error backfired when
the 'fatal error' was a disconnect, and caused a crash on Mac. We now
suppress sending of this "logout" command in the disconnect case,
communicated in a kludgy way (by requesting exit status 6666).
2016-07-28 14:24:27 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Defer book faking input move until ping balance
The use of ping after editing a position had broken the book handling:
'go' would be sent in the same batch of commands as this 'ping', so that
in case of a book hit the book move selected on behalf of the engine
would be fed back to XBoard before the engine had the opportunity to
restore the ping balanceby sending 'pong'. Now the book move is fed
through ScheduleDelayedEvent(DeferredBookMove) rather than instantly,
when a MachineWhite/BlackEvent sets the engine playing.
2016-07-26 22:04:14 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix setting up btm positions with 'edit'
The kludge to put black on move through a2a3 only works when there is
a (normally moving) Pawn on a2. Otherwise the 'black' command has to be
used. But this did take the engine out of force mode. So now we send
another 'force' command after this 'black'.
2016-07-22 09:12:36 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix bare King adjudication
The increase of the number of piece types to 66 gave the BlackKing code
131, wich is > 127, so that using a signed char for it makes it < 0.
This cause the black King in the adjudication code to be seen as a white
piece. When black then checkmates with 2 pieces, only 1 piece is seen
(Q), and then assumed to be a bare King! Now the piece value is passed
through an (int) to prevent this.
2016-07-17 23:53:17 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix check testing in games without King
A position without King was always considered as in check (because of
Atomic), which is rather illogical and undesirable in games where no
King participates (as it makes every move illegal).
2016-07-17 23:14:10 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix disambiguating Pawn moves in Xiangqi
When multiple Pawns can go to the same square a move written as to-square
only is interpreted as the forward push, rather than a sideway move.
2016-07-17 23:06:19 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix King leaving Palace in Xiangqi
The rewrite of the move generator had overlooked this.
2016-05-16 22:21:36 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix compile error Xaw build
The variable initialSquareSize was not defined in the Xaw build,
and now has been moved to dialogs.h (which is part of both builds).
2016-05-15 10:05:40 -0700 Arun Persaud <[email protected]>:
updated po/pot files
2016-05-15 10:03:04 -0700 Arun Persaud <[email protected]>:
new version number for release 4.9.0
2016-05-12 15:49:26 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Forgotten header for previous patch
2016-05-10 21:52:56 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Abbreviate DATADIR to ~~ while saving XB themes
The path name of theme files is typically quite long in XBoard, where
installed data is very deep in the file-system tree. This path is now
recognized, and replacend by its abbreviation ~~ when storing a theme
in the -themeNames option.
2016-05-10 20:46:49 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix crash on too-long theme definitions
Long file names for texture and pieces could make theme definitions
so long as to overflow the buffers used to hold them. The buffer
size is now doubled.
2016-05-10 20:29:37 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix debris after click-click explosion near board edge
The redrawn grid was not exposed for board edges a knight's jump
away from an explosion square after a click-click capture in variant
atomic. This was due to the smartness in preventing overlapping
exposures of neighboring square, deferring the task to expose the grid
to squares that were beyond the edge. Now all squares in the explosion
range are exposed including grid.
2016-05-10 20:26:56 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix highlights clearing when highlight last move off
When moves are not highlighted, the selected piece still is. But
this highlight should be erased after the move.
2016-05-10 19:42:09 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix redrawing of pieces dragged off board (bug #47888)
The board was not redrawn after a piece was dragged off board,
leaving the piece 'invisibly' in its original position, and also
leaving the target squares marked.
2016-05-09 07:36:39 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Describe new Edit menu items in texi file
2016-05-09 07:08:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add Mute all Sounds menu XB
XBoard now also has a menu item to mute all sounds (except the Play
button in the Sounds dialog) at the topof the Options menu, like WinBoard.
2016-05-08 20:04:36 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Describe use of blue highlights in protocol specs
The function of 'blue' markers, and the role of the 'choice' command
in this is explained in the CECP specs.
2016-05-08 19:35:10 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix forgetting 'choice' command after promotion
The promotion restriction specified by a 'choice' command is now reset
at the start of every new move, so that future promotion moves won't
use it too. In addition,the 'choice' command is ignored when legality
testing is on.
2016-05-08 14:39:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix description of Tournament Options in texi file
Some headers were not exactly equal to the dialog texts because of typos,
frustrating the help clicks. And matchPause was not described at all.
2016-05-07 23:33:35 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix multi-leg promotions
Two-leg promotions were sent as gibberish to the engine (and thus
rejected). It was also pretty annoying that XBoard's own idea of
what should be promotions was still applied even when highlighting
denied promotions (because the zone was different than assumed, or
a promotion-on-entry rule applies). Now the legality markers from
the GUI move generator are different from the red and yellow markers
from an engine highlight command, and the latter are taken as a denial
of promotion, and will suppress it.
2016-05-07 22:10:34 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Erase markers before processing highlight FEN
Markers from the Betza generator were only half-heartedly erased when
a color-FEN camein through a highlight command, because FENs tend to
skip empty squares in stretches. This was already fixed for the legal[][]
array, but now it is fixed for the markers itself as well.
2016-05-07 12:13:09 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix saving of piece colors as part of theme
The wrong condition was used for deciding of whether the piece-color
settings were relevant for a theme definition.
2016-05-07 12:06:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Allow engine to force user to make non-standard promotion
The engine can now force an unexpected promotion on moves entered
by the user, by marking the to-square of such a move in blue.
Releasing a piece on such a blue square will then defer further
processing of the move (after having send the 'put' command to the
engine) until reception of a 'choice' command to specify what the
piece should promote to. This solves problems in Maka Dai Dai Shogi,
where a piece capturing a contageous piece would only be allowed to
promote to its normal promoted form if the to-square was marked in
purple (offering a P / +P toggle).
2016-05-06 07:42:55 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix saving theme
The option -trueColors is now saved with the theme settings when a
pieceImageDirectory was given in XBoard, and the piece colors are
saved when this option is off even with a piece directory. The square
colors are now also saved when useBooardTextures is on, but the textures
are transparent. For this the transparency also had to be made visible in
the WinBoard front end, (by moving the flags for it to backend.c), but
always stay at the default 0 there.
2016-05-04 15:18:34 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix deferral on sweep promotions
When a sweep in the to-square due to a highlight-induced promotion
had left the original piece as choice, the piece would be considered
to promote to itself (i.e. the move would get the promoChar for its
piece type), rather than to not promote at all. Some engines choked
on this (HaChu). Now such a move is not considered a promotion.
2016-05-01 21:41:40 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Implement -showMoveTime option
A persistent option -showMoveTime can cause the time thought so far
on the current move to be displayed in the clock field, behind the
time left on the clock, in parentheses.
2016-04-29 16:16:52 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Prevent crash on help-click for engine without manual
The error message of "man w xxx" when no man entry for xxx exists
appears on stderr, which is not caught by popen(). As a result the
path to the man file gets set to an empty string, and saveStrCpy
is not so save that it can copy an empty string, but quits XBoard
through an ASSERT in that case.
2016-04-28 14:36:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Allow engine to specify holdings larger than board height
On reception of a 'setup' command we now automatically increase the
number of board ranks to the holdings size if the latter is larger,
but remember the number of added 'dead ranks'. When parsing a FEN these
ranks are blacked out, and on generating a FEN they are ignored. This
makes FENs behave like the board was not enlarged.
2016-04-28 13:24:19 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Implement two-kanji -inscriptions
When the -inscriptions option specifies a UTF8 string that starts with
the character '2', it will assume the symbols that follow have to be
drawn on the pieces in (vertically stacked) pairs of somewhat smaller
size than it would use for single-character inscriptions. An optional
'1' at the start of the string could be used as an escape to be used
when the first character we want to inscribe would be a '2'.
2016-04-27 22:22:35 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Prevent sending empty line to engine after multi-leg move
As the pmoves are stored internally with a linefeed suffixed to them,
this linefeed was mistaken for a promotion character in the multi-leg
printing formats, and led to an extra empty line being sent to the
engine on non-promotion multi-leg moves. Now a linefeed is replaced
by a null character before sending the move.
2016-04-27 20:34:45 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix piece commands for promoted pieces
The flexible partner assignment had broken the code for 'piece'
commands defining the moves for these pieces, as the promotion
partner was still calculated the old way.
2016-04-25 18:31:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix dragged piece during promotion popup
When dragging to a promotion square, the piece would keep 'hanging'
in the release position while the promotion popup was shown.
(This usually covered it, but not always.) As after a choice is made
the move will be animated, it was more logical to put it back on the
from-square.
2016-04-24 22:34:06 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add option -pgnTimeLeft to print clocks in extended PGN info
When set a persistent option -pgnTimeLeft makes XBoard save the time
left after the move in the score/depth comments, rather than the time
thought about the move. A leading sign will allow the reader to
distinguish the two. The time is always printed in integer seconds.
2016-04-24 21:10:06 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix EOF detection in PGN parser
The result of fgetc was stored in a (char) before comparing it with EOF,
which fails badly if the char is not signed.
2016-04-24 20:53:47 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Alter piece images in Spartan Chess
The Captain of Spartain Chess is now represented by the new Tower piece,
so that the Crowned Rook pictogram can be (and is) used for the General,
for better uniformity with other variants.
2016-04-24 20:30:38 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Regularize Chu-Shogi piece assignment
The pieces in Chu Shogi have been reassigned to other internal codes,
so that juggling of images in variant cu is no longer needed. This
became possible by the flexible assignment of promotion partners.
It makes it easier to use Chu Shogi as parent variant without having
to worry about a non-stadard meaning of the -pieceToCharTable.
The built-in move generator had to be changed to work for the new
assignment.
2016-04-24 14:00:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Allow group specification in ArgInstall options
The option that add a line to the existing multi-line options
(e.g. -installTheme which adds to -themeNames) now can specify the
line should be added within a group, by prefixing the line with
"# GROUPNAME\n" (where \ and n separate characters). If a group of
that name already exists, the line to add is insert immediately after
the group header line. If not, the group is created, by adding both the
group header line and the line to add, as well as an "# end" line to
terminate the group.
2016-04-24 12:30:14 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Save programStartTime in settings file rather than save time
The -saveDate time stamp is used to decide whether XBoard has seen
options added to the master settings file before. But it looks only
to the master settings file at stratup. So when we save settings we
now put XBoards startup time as -saveDte in it, so that installs
when XBoard was already running would still find their way into the
user settings file.
2016-04-22 11:37:58 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Also supply shortcut for start directory in GTK file chooser
The first shortcut entry in the Places list is now created for the
directory in which XBoard started (which is $CHESSDIR if that was set).
This is suppressed if it would be a user home directory, as this would
already be in the list by default.
2016-04-22 09:33:23 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix rounding when sizing 1x1 textures
When 1x1 textures were sized to the actual square size, this could lead
to bitmaps that were 1 pixel too small, presumably because of rounding.
We now add 0.99 pixel to the desired size of the texture image before
calculating the scaling factor (in floating arithmetic) that has to be
passed to the cairo scaling routine, and this seems to solve the problem.
2016-04-21 23:11:25 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Limit prefilling with color to textures with alpha channel
When loading and preparing a texture we now test the format, and if
the image has an alpha channel we stay on the save side, and always
color the squares before drawing the texture. Only when the format
is not ARGB32 we skip the color fill. (And the default textures
do not have an alpha channel, so at least there no time will be
wasted on pointless color fills.)
2016-04-21 22:47:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix confinement of Advisor in Xiangqi
Ever since the move-generator rewrite the Advisor could leave the Palace!
Now it can only move in XQ as a normal Ferz when on the board axis, and
everywhere els it can only move to the axis one square from the edge.
This does not generalize in a natural way to larger boards or larger
Palaces.
2016-04-21 22:14:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Allow transparency in board textures
Rather than coloring the square evenly OR rendering a board texture
cutout we now always do both. Drawing the color will then erase anything
that was on the square before, which is expected behavior, and will then
remain visible where the texture is transparent. Before any transparency
in the texture would leave the old square content (pieces, arrows,
markers) visible.
2016-04-21 19:09:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Make EditTags dialog non-wrapping
As the data edited with this dialog (PGN tags, engine list, theme list,
book moves, ICS menu definition) is always tabular, wrapping the lines
is just confusing, and it is better to have an automatic hscroll in case
the lines are too long to fit.
2016-04-21 19:02:05 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Make preview message in file-chooser title bar a bit clearer
2016-04-21 13:51:08 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Allow skipping to secondary series in -inscriptions string
A slash in the UTF8 string of the -inscriptions option now will start
the inscriptions of the pieces from the secondary series. This allows
writing -incription values that will remain valid wehen new pieces would
be added to the end of the primary series.
2016-04-21 11:44:32 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Commit forgotten prototype
2016-04-21 10:03:12 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add menu item for editing ICS text menu
An item Edit ICS Menu was added in the View menu, and will pop up
the Edit Tags dialog for editing the -icsMenu option that determines
how the ICS Text Menu will look.
2016-04-21 09:26:39 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add Edit Themes List menu item XB
The Edit Tags dialog is now also used for editing the -themeName list,
with a menu item in the View menu to pop it up.
2016-04-20 23:56:31 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Make preview resistent to nothing being selected
The name of the selected file could be a null pointer, and ScaleOnePiece
does not like that for a pieceImageDirectory.
2016-04-20 14:44:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add option -jewelled to decide which King is a Zebra XB
A new volatile option -jewelled is added, with default value -1.
When it is set to 0 the King image will be replaced by the Zebra image,
when it is 1 the same thing will happen to the black King. This color
testing will be done before the swapping of colors ordered by -flipBlack,
so that the color rather than the side of the (possibly flipped) board
decides which King is displayed as Zebra. (While the board side determines
whether a white or black Zebra will then be used in -flibBlack mode).
Shogi themes can use this by providing a Jewelled General as Zebra (a piece
that was not used in any Shogi variant).
2016-04-20 11:51:56 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Point out preview in title of file chooser GTK
2016-04-20 11:31:35 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix sizing problem in i3wm tiling window manager GTK
Apparently i3wm creates a window of different size than the requested one
without sending a configure-event that would allow XBoard to adapt its
board size. This is now fixed by triggering a first configure-event by
hand. The first resize had to no longer be suppressed to make this work.
(This was not needed anymore anyway, as the board size is now protected
during clock resize.) The -fixedSize option had also to be fixed.
2016-04-19 20:49:03 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Let file chooser show preview of textures on board
When browsing for a board texture or piece theme, selecting a file in
the browser will now cause immediate display of the board with that
texture or theme, which will revert if you cancel the choice. Or when
you accept the choice, but cancel the Board dialog.
2016-04-20 23:49:26 -0400 Joshua Pettus <[email protected]>:
Renamed shogi jewled pieces to zebra
2016-04-20 16:51:49 -0400 Joshua Pettus <[email protected]>:
Update ru.po translation
2016-04-17 10:16:26 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Provide item-by-item description of ICS Chat in texi file
2016-04-17 10:13:38 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Provide help clicks on recently-used-engines menu items
The items for recently used engines in the Engine menu are now recognized
as such, and will look for help on "Recently Used Engines" rather than
on the item text (which is the engine name).
2016-04-17 10:05:39 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Use missing SVG from parent if -pid name starts with sub_
If the current piece-image directory's name starts with "sub_", any
pieces not found in it will be searched in the parent directory.
This allows variants that need just a few pieces of a theme changed
to get their own sub_xxx sub-directory within the directory with SVG
images, containing the deviating SVGs. This will work recursively.
2016-04-17 09:32:40 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix one-click moving with engine-define and wild-card pieces
In the disambiguation routine wild-card pieces were still treated as
special even when explicit moves were defined for them. In addition,
Disambiguate would try native XBoard piece motion for resolving ambiguous
moves, which is sensible for parsing SAN (which might be saved by an old
version of XBoard), but wrecks one-click moving.
2016-04-11 20:44:27 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Improve resize/co-dragging GTK
The reconfigure event of the main board is not processed directly,
but sets a timeout to call the actual handler, which will be restarted
when new reconfigure events occur during the timeout period. This makes
that the (very timeconsuming) redrawing and moving of all windows
will only be done if the stream of events dries up.
Unfortunately the ReSize routine called as part of the handling needs
to be interruptable, which can cause recursive calling of the reconfigure
handler. A variable 'busy' would ignore such recursion, but at the price
of missing the interrupting event completely. The attempted fix to set
a new timeout was flawed, as delayedDragTag would not have been cleared
at that point. So we threw it out. Now 'busy' is a counter, which will
remember if there were ignored recursion attempts, and then makes these
into a harmless tail recursion, to do the resize/drag once more, based
on the latest window parameters.
2016-04-10 19:42:47 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix size collapse to 0 after too-small sizing
The test for the end of the sizeDefaults list was one off, so that
a too-small size request would be rounded to a size just behind
the table, where there is an all-zero sentinel element.
2016-04-09 23:40:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Also put themes and textures in file chooser GTK
The themes and textures folders are now also directly listed amongst
the 'Places' shortcuts in the GTK file chooser.
2016-04-09 22:47:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add DATADIR as shortcut folder to file chooser
The file chooser invoked by a dialog Browse button now puts XBoard's
DATADIR amongst the shortcuts in the 'Places' list, so you can navigate
there with a single mouse click.
2016-04-09 20:12:26 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix browsing for folders, and allow starting in DATADIR
The previous path seemed to cause a segfault when browsing for a folder
with an empty text-edit. In addition there existed a bug for browsing
from the Engine Settings dialog, where the value of the option was taken
as a filter. Both are fixed now.
The Option.textValue field, which for FileName Options holds the filter,
for PatName Options could be NULL or "". The latter is now taken to
mean that browsing should start in DATADIR, and is only used when
browsing for sound files or pieceImageDir with empty pathname field.
2016-04-09 17:29:12 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Start button-activated browse near old field contents GTK
The file chooser activated by Browse buttons for filling a File or Path
text edit started in the last directory it visited for that file type.
But for the initial browse after startup it started in the current
directory. Now it starts in the directory derived from the filaname
currently in the text edit, if there is one, and only in the last-
visited directory for the file type if the text-edit was empty.
2016-04-09 16:30:20 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Extend full-board textures by periodic tiling (XB)
Texture images with an -NxM suffix to their name are scaled to match
that number of squares before cutting squares out of them. But if the
actual board was larger than NxM the remaining squares fell outside the
image and remained white. Now the cutting area is mapped back into
the image, effectively behaving as if it is periodically tiling the
entire plane.
2016-04-07 22:14:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Mention support for Arena960 protocol with USI/UCCI checkbox WB
Normally the -uxiAdapter option would be configured to use UCI2WB,
and in the binary distribution of WinBoard it certainly will be.
As UCI2WB now supports the UCI dialect Arena uses to play Chess960,
people can use the USI/UCCI checkbox also for Chess960 engines that
use that protocol, and the checkbox label now points that out.
2016-04-07 19:34:20 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Finish castling and e.p. rights for Edit Position
In stead of faking rights based on corner positioning of Rooks and
e-file King, EditPositionDone now interprets the rightsBoard that
recorded 'promotion clicks' on King, Rooks or Pawns to toggle their
rights. This rightsBoard is initialized from the castling rights in
the position that is being edited, and the clear and piece-pallette
boards now also set these castling rights correctly.
2016-04-06 18:22:46 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Describe Common Engine dialog item-by-item in texi file
This had not been done yet, so that help clicks in the dialog did
not retrieve any help.
2016-04-06 16:44:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix history/eng.out font setting on sizing and other bug
The coord font was set with the historyFont value, and when a valid
font was taken from the fontTable, fontIsSet was not set.
2016-04-06 16:08:24 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Apply fonts in 'other windows' after sizing
2016-04-06 15:45:11 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Store fonts changed by font dialog in fonts table
The fonts table holds fonts per type and size that should be saved
in the settings file because they were either read from it, or explicitly
specified by the user on the command line. This now also holds for
fonts altered through the Fonts dialog, without waiting for the saving
of settings, because by that time the boardSize might already be different.
2016-04-06 14:38:43 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Only save fonts that are not defaults
When the font in use is a (size-adapted) default, we don't save
it in the settings file.
2016-04-06 14:25:19 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Conditionally replace 'other-window' fonts on sizing
Fonts not used in the main window (i.e. other than clock, coord and
message) are now also adjusted on sizing, but not when this would
mean replacing an explicitly specified font by a default one.
If we size to a boardSize for which a font was specified earlier,
we always switch to the latter, and if we were merely using the
default font for the old size we switch to the default font for
the new size rather than keeping it.
2016-04-06 14:08:49 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Reset fontIsSet when sizing causes change to default font
The array fontIsSet now tracks whether the fonts in actual use are
from a (possibly size-adapted) default, or were specified by an option
(also through a fontIsValid entry in the fontsTable) or the Fonts dialog.
For changing a font on sizing a subroutine is now used.
2016-04-06 14:08:23 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix bold button fix
2016-04-06 13:03:38 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Lock board size when clock changes to two lines
First writing in the clock widget will usually increase its height
because the clock font is bigger than default. And for two-line
clocks as used with logos this will even be more pronounced. This
did cause the extra size to be taken from the board, ending up with
a smaller square size than originally requested. Which again would
cause any font changes to be saved as belonging to that smaller board
size. So starting next time with the originally requested size (as
opposed to the saved board size) would then not use those fonts!
The board size is now locked during the first write to the clocks,
or writes that change the number of lines.
2016-04-06 12:13:52 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix Bold button and application of commentFont
Oops! The B button in the Fonts dialog had disappeared with the
suppression of the B(lue) button in the Board dialog! The comment
font was applied to the wrong widget in the Edit Comment dialog.
2016-04-06 11:56:36 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Only adjust fonts that are actually changed
OK-ing the Fonts dialog now checks which fonts have been changed,
and only applies those to the widgets that use them. In addition it
sets a flag to indicate that the changed font no longer is a default.
A bug that did not apply the gameListFont for preview is now also
fixed.
2016-04-06 10:49:53 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Put fonts in font table in allocated memory after sizing
To make it possible to change the font later it should always be
put in allocated memory.
2016-04-06 09:38:56 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix explosion of clocks for large board size GTK
When packing things in a hbox for getting them on the same row,
the hbox was made vertically expandable when the height of the first
element was requested > 80 (assuming it would be a text memo). At
square sizes > 81 the logos would require a height > 80, though,
and would be the first element on the logo + clocks row. This would
make them expandable, so that the window height would be equally divided
between board and logos (which again would leave preciously little for
the board). Now the expandability is reserved for TextBox Options only.
2016-04-05 23:40:32 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Suppress menubar text clipping on resize in OSX App
The menu bar is not in the window in OSX, so the menu texts should
always remain full length.
2016-04-05 22:07:27 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix clipping of menu texts after sizing
When tinyLayout = 0 the texts should not be clipped at all, rather
than to a single letter.
2016-04-05 21:05:11 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Enlarge background of startup message
Because of rounding of the character size the message width exceeded
the background for some square sizes.
2016-04-05 20:23:12 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Adapt clock and message font after board-window sizing
The clock and message font are now adapted to the new -boardSize value
determined after sizing of the board window. When a valid font for the
new size was already available (e.g. read from the settings file), it
uses that. If not it uses the hard-coded default font name. In both
cases a %d in the name is expanded based on the size-table indication
for that font. This makes the clock font adpat even without prior history.
2016-04-05 20:19:21 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Prevent message text widening window GTK
Removing the size request from the label widget of the message field
made the width of this field grow with the text displayed in it, and
with it the entire board window. This could be prevented by setting
an ellipsize mode for it.
2016-04-05 18:52:32 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Pick -boardSize on window width rather than square size
For boards with other than 8 files the squares will be scaled different
from what the sizeDefaults say, so that the font and menu clipping
determined by the latter will match the total board width. We now pick
the boardSize after sizing such that popup with an 8-wide board next time
would reproduce the board width.
2016-04-05 18:40:05 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Adjust menu-text clipping to square size
After window sizing has adjusted the square size the text on the menu
bar are now clipped to a length that would make the menu bar not exceed
the width of the board, similar to what is done at startup.
2016-04-05 16:49:12 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Make user-adjusted board size quasi-persistent (GTK)
After adjusting the board-window size the newly calculated square size
will be used to derive a new -boardSize for saving in the settings file,
by rounding it down to the nearest standard size. (But the size actually
used for display will not be rounded!) This will cause the board to pop
up with approximately the same size next time. The remembered initial
square size will also be adapted to the rounded value, so that the fonts
will start to apply to the new -boardSize as well on saving settings.
This will only be done if the old -boardSize value did not contain
commas (meaning it specified more than just square size).
2016-04-05 16:36:15 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Unlock width requests in board window GTK
The message field and clocks had a specified width to force them as
wide as the board irrespective of their text content. This prevented
the user to size the board window below the initial width. The size
requests are now removes after initial pop up, as they already were
for Graph widgets. This means the width of the window can now be
decreased, although we quickly run into the point where the texts
on clock or menu bar prevent further shrinking. (Which could only
be prevented by clipping the menu texts more, or decreasing the clock
font.)
2016-04-05 14:32:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Adjust window height after clock-font change
A routine LockBoardSize are added, and called to protect the board's
Graph widget from absorbing the height change pf clock and message field.
Enlarging these now forces the top-level window to expand, and after the
change we try to reduce this window size to tightly fit the board to
squeeze out empty area after shrinking.
2016-04-04 12:04:36 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix help clicks in Engine Settings dialogs
A previous patch had broken recognition of the .IX Item "..." lines.
2016-04-04 12:00:57 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Ignore stderr when reading from man command
BufferCommandOutput was using StartChildProcess also used for engines,
which combines the output from stdout and stderr on the pipe. On FreeBSD
"man -w" produces spurious error messages, however, which would append
to the path of the man file. To work around this we now use popen()
to collect the output of the man command during help clicks.
2016-04-04 10:53:26 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Silence Clang warnings
The assignment of the variant number to appData.variant was a real bug.
The signedness of EP_STATUS looked like one, but seemed to work in practice.
2016-04-13 14:22:35 -0400 Joshua Pettus <[email protected]>:
Update nl.po Translation
2016-04-10 08:32:47 -0400 Joshua Pettus <[email protected]>:
Update es.po translation
2016-04-06 17:29:37 -0400 Joshua Pettus <[email protected]>:
Update de.po translation
2016-04-05 23:59:50 -0400 Joshua Pettus <[email protected]>:
Update fr.po translation
2016-04-05 15:11:25 -0400 Joshua Pettus <[email protected]>:
Update zh_CN.po translation
2016-04-04 13:41:23 -0400 Joshua Pettus <[email protected]>:
Update uk.po translation
2016-04-03 13:55:34 -0700 Arun Persaud <[email protected]>:
new developer release; updated po/pot
2016-04-03 21:25:31 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Start implementing rights control in Edit Position mode
Clicking on an already selected Rook or King will toggle its virginity,
displaying the new state in the message field.
2016-04-03 16:28:42 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix erroneous use of @itemx
The offending @itemx directives were changed to @item. This does mean
an unwanted empty line will appear above the corresponding headers.
2016-04-03 10:23:49 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Save font settings based on initial square size
Font settings were saved by the square size as it was at the time of
saving, which could have been altered compared to the reading of the
fonts from the settings file by interactive sizing of the window, or
by switching to a variant with other board dimensions. Now the initial
square size is remembered and used for this.
BEWARE: we might want to undo this when window sizing would affect font
selection, rather than just sizing the board.
2016-04-02 19:12:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Let color-pickers start at current color
2016-04-01 22:01:40 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Use GTK color picker instead of R, G, B and D buttons
By an awful hack in the generic dialog constructor ever Button Option
with the name R, G or B is now completely ignored, while Buttons with
name D will be replaced by GtkColorButtons. Instead of catching the
"clicked" signal these will respond to the "color-set" signal, invoking
a handler private to the GTK front end, which will set the color text
and colorof the reset button as the platform-independent handler of the
RGBD buttons would normally have done.
Unfortunately this had to use deprecated GTK2 stuff, as the recommended
GTK3 equivalents are not understood on Ubuntu 10.04.
2016-04-01 16:34:15 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Use the official GTK font selector
A gtk_font_button is now put in the Fonts dialog to allow selection
of a general font. The individual window fonts got a button marked *
to assign this font to them. To implement the selector button some
kludgy code had to be added in the generic dialog constructor, to
recognize these Button Options by name, and use the special GTK
widget to implement them, or assign an unusual callback.
2016-04-01 11:13:27 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Describe Fonts dialog in texi file
2016-04-01 10:30:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Silence warning due to missing prototype
2016-04-01 10:28:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix translation of dialog texts GTK
When using the Option names during the creation of GTK widgets,
the gettext macro _() was not applied to them, so they remained
untranslated even though they were marked with N_() in the Option
tables.
2016-04-01 10:19:29 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix Xaw for font damage
A dummy for ApplyFont is added in the Xaw front end to allow compiling it,
and the Fonts dialog refuses to pop up when it recognizes an X-font setting
for the message font, with an apology.
2016-04-01 10:08:15 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Silence warnings
2016-04-01 09:50:46 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Replace coord font control for ICS font control
In the Fonts the control to set the coord font is removed, as the Cairo
version currently ignores the -coordFont setting. Instead a control to
set the font in the ICS Console is added. As the fonts there are controlled
by tags, and would ignoe the global font setting of the widget, the font
tag is redefined through a kludgy call of AppendColorized with a NULL
string as text. This is now interpreted as a signalfor recreating the font
tag based on the current icsFont, which will then only be applied to
future messages.
2016-04-01 09:13:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Let font entries show preview of their own setting
The font settings are now applied to the text entries in the Fonts dialog
that control them, at popup of the dialog as well as when changing them
through the buttons.
2016-04-01 00:46:37 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add Fonts dialog
A dialog is added to set the various window fonts, either by typing or by
operating buttons for Bold, Italic, or adjusting the point size.
2016-03-29 21:23:41 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Add headers for <<, <, > and >> buttons in texi file
2016-03-29 21:20:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix help search
The help search was ignoring the last character of the searched string.
Which almost neven mattered, except when the searched string was only
1 or 2 characters, like for the buttons in the button bar.
2016-03-29 20:20:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix disambiguation for one-click moving
The test in the DisambiguateCallback to ignore duplicate moves (as
sometimes generated by Betza descriptions) was only testing for the
same from square. This is good enugh if the to-square is always given
(as in SAN), so that moves with different to-square would always be
rejected anyway. But to determine if a piece has only a single move
we disambiguate with unknown to-square. So all moves but the first
of a piece would be ignored, making it always pass the only-move test.
We now test both from- and to-square, and only ignore moves that
have both of these equal to that of an already matching move.
2016-03-29 16:33:30 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix exposing of premove highlight and move exclusion XB
Now that drawHighlights does not trigger an expose event itself, it is
essiential that DrawPosition is called after every SetPremoveHighlight()
call. But it wasn't after entering a premove, and after a drag-drop move
exclusion the old position was not redrawn at all, leaving the dragged
piece 'floating'.
2016-03-29 16:30:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix erasing of premove highlights XB
The to-square premove highlight was not marked for erasure (but
the from-square was marked twice if the to-square higlight changed),
leading to accumulation of highlighted squares during PV walking.
2016-03-28 22:31:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Describe New Shuffle dialog item by item in texi file
2016-03-28 22:24:20 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Fix New Shuffle Game dialog
The insertion of the Fischer-castling option had broken the operation
of the 'randomize' and 'pick fixed' buttons.
2016-03-28 21:56:32 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Describe -epd option in texi file
2016-03-28 21:44:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Describe divide-by-60 option of TC dialog in texi file
2016-03-28 21:37:52 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Suppress participation of second engine in EPD mode
Starting the second engine, and initializng it for the next game in
TwoMachineEvent() is now suppressed in EPD mode, so that the latter
even works with a non-existent second engine.
2016-03-28 09:56:38 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Also copy -sd from -fd when no second engine defined
If the second engine defaults to the first, and the first needs to
be run in a specific directory, the second engine would not start
if we do not copy its directory too.
2016-03-27 18:17:52 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Only let second engine default to first when of same type
When the first engine is UCI, making the second engine equal to the
first without setting the corresponding protocol flag, is a certain
recipe for causing trouble. So copy the flag too.
2016-03-27 17:27:30 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Change EPD reporting
The individual positions now get "time: move" printed when solved,
and "move?" or "move???" when not solved (the latter when it was an
avoid move). The total time is now reported also, at the end.
2016-03-27 13:21:52 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
Clear total solving time at start of match