Michael Gerz wrote:
Abdelrazak Younes wrote:
But let me advice you to use the step by step debugger. It helps a lot
in finding bugs like this. OK, I grant you that I knew in advance that
it was a matter of redundant update() calls but knowing where this
call was was easy to find out: I just had to put a break point at the
beginning of updateMetrics() just before resizing and voila!
Backstepping through the debugger told me that workAreaResize() was
the culprit.
if a redundant update() call was the problems, do you intend to check
all update() calls systematically?
I have done that already last time I touched at this method. I reckon
they are correct calls to update() but I might have missed something.
BTW: Could you please tell in simple words what the difference is
between update() and updateMetrics()?
update() is really update(Update::FitCursor | Update::Force). This more
or less means the following:
updateMetrics(false);
if (FitCursor)
updateMetrics(false);
The term "update" suggests that it
doesn't hurt to call this function redundantly...
Indeed but this is wrong. we should probably replace all these calls
with update(Update::FitCursor | Update::Force) to make the intent clear.
Abdel.