I traced to par.rows().empty() and I am wondering if par is unique
across buffer views. Anyway, I am working on it right now.

The problem is found: par.rows() is initialized for new window
(new->window) and is re-initialized for buffer switch and windows
resize etc.

Now,

1. open a doc, scroll around, rows() is OK.
2. new->window, rows() is cleared
3. switch buffer, the original window *think* that the rows() are unchanged.
4. Usual update() may not work for 3 since update() works for the text
cursor which is now unseen.

I am try to get a patch when I get a chance. As Abdel has said, the
correct solution should be moving rows() out of buffer so each
bufferview has its own rows() for the same buffer. Abdel, is it
possible to do this before 1.5.0?

Bo

Reply via email to