OK, I now pushed a version with a special debug print statement to
gather info about the cause of this problem.
When the size of the outer window changes, XBoard should get a
"configure-event", which eventually should
cause DragProc() to be called. (There is a timer delay involved here to
prevent XBoard from drowning in a barage
of configure-events while the dragging is going on, and only call
CoDrag() once after the sizing or dragging has stopped.)
I put a print statement in DragProc(), to print the new window
parameters that it requests from the system after
the drag, and the parameters it had before.
I would like to see what this prints in combination with i3wm, and also
when it prints it. It seems that i3wm
does size the outer window other than XBoard requested it during the
creation of this window,
and normally this should cause a configure-event. But CoDrag() should
redraw the board at the new size,
and as this obviously is not done, it seems that it is not called. Which
suggests that the configure-event
does not occur. But I want to check that for sure, to see if something
is already printed when the wrong
board size is still displayed before you do the minor resizing that
corrects it.
I also wonder what would happen if you press F2 (for Flip View) before
you resize. Does it then flip
the small board, or does it immediately draw a flipped large one?
If setting the outer window to a different size as XBoard requests is
not considered a resize by i3wm,
so that it doesn't think it necessary to send XBoard the configure-event
signal, then we must devise
some other method for XBoard to determine that it did not get what it
asked for. Perhaps we should
always fake a configure-event when the main window first pops up, by
putting at the end of GenericPopUp():
if(dlgNr == BoardWindow) DelayedDrag();
This would execute DragProc() after a delay of 200 msec, which would
check the actual size of the window,
and do nothing if it already has the right size.
Op 4/11/2016 om 6:59 PM schreef Adrian Petrescu:
Hello!
I can confirm the bug still occurs on the latest master branch.
Here's a screenshot right after launching the newly-compiled xboard:
http://i.imgur.com/kSyO1Ff.png
And here it is after I've triggered a tiny resize event:
http://i.imgur.com/zs2tWQC.png
Hope this helps with the diagnosis. And I hope my message actually
gets through to the list this time :P
Cheers,
Adrian
On Fri, Apr 8, 2016 at 3:27 AM, H.G. Muller <[email protected]
<mailto:[email protected]>> wrote:
Op 4/8/2016 om 12:37 AM schreef Adrian Petrescu:
On Apr 7, 2016 6:20 PM, "H.G. Muller" <[email protected]
<mailto:[email protected]>> wrote:
> The sizing bug reported by Adrian Petrescu still stands, but
since I did
> change a fair amount in that area, I wonder if that problem
still exists.
I can check on my i3wm machine :) Which branch should I build to
find out?
The master branch at
http://hgm.nubati.net/cgi-bin/gitweb.cgi?p=xboard.git;a=summary
(I still have to rebase that onto Savannah master, because in the
mean time
some .po files have been pushed there, but I wanted to wait with
that untill
all .po files were in.)
H.G.
Thanks for looking into it!
Adrian