Okay, I have results to report!
- If I only add the print statement to DragProc from your branch, *nothing
gets printed* when xboard launches
- Even I add the same line to the ReSize method above it, still *nothing
gets printed* when xboard launches
- Hitting F2 right after launching xboard flips the board, but it's
still small
- Adding if(dlgNr == BoardWindow) DelayedDrag(); to the end of
GenericPopUp() (in gtk/xoptions.c) still makes the board small, *but* it
does result in the following prints as soon as xboard is launched:
resize: new 958x1043 @ (960,18) old -1x1043 @ (960,18)
resize: new 958x1043 @ (960,18) old -1x1043 @ (960,18)
resize: new 958x1043 @ (960,18) old 958x1043 @ (960,18)
- As soon as I resize a tiny bit with the situation above, it also
prints:
resize: new 962x1043 @ (956,18) old 958x1043 @ (960,18)
resize: new 962x1043 @ (956,18) old 958x1043 @ (960,18)
resize: new 962x1043 @ (956,18) old 962x1043 @ (958,18)
resize: new 962x1043 @ (956,18) old 962x1043 @ (958,18)
(and then the board is the right size)
Hope that helps :) Let me know if there's any other diagnostics I can do!
On Mon, Apr 11, 2016 at 3:34 PM, H.G. Muller <[email protected]> wrote:
> 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>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]> wrote:
>
>>
>>
>> Op 4/8/2016 om 12:37 AM schreef Adrian Petrescu:
>>
>> On Apr 7, 2016 6:20 PM, "H.G. Muller" <[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
>>
>>
>>
>
>