Vincent van Ravesteijn wrote: > >> > >> Why do we completely update the TOC if we just type something ? > >> > > > > I certainly hope that this is not the case. As far as I understand Pavel > > slowness is just because the toc takes time to find the correct toc item to > > select. > > > > We completely update the TOC when pressing enter for instance. You're > right, not for every character.
and thats the only key when we do this, ie its bound to break paragraph lfun. this triggers toc model reset, which triggers initialise params in tocwidegt and here i pushed delay=0, so at the end entering doesnt wait for 2s... > Still, I've got to wait a second before my paragraph is broken in the > User's guide. not reproducible here. > Normal typing is slow for me in the User's Guide. With the outliner open or > not. we have reports about this, check bugs with perf keyword. but its just fine here without outliner. > what the real problem is. Pavel, if you already know, could you > explain once more ? i think we are encountering different perfomance issues. for the outliner issue: last time i did profiling there was no sensible difference in the profiles for with VS without outliner sessions. but there was huge difference from the users point of view. together with the fact that other people are not able to reproduce the problem, the conclusion was its somewhere inside Qt/X server routines, not the question of lyx code itself. (qt/x routines are not reported byt the profiler i used, thats why the profiles looked similar). i havent tried to go deeper in the profiling, because even if i find the bottleneck in some particular qt routine, its not of much use. but it should be possible to find the problematic line of tocwidget::updateview just by lyxerr timing output. the timing delay for single run of this function is noticeable even by eyes. > I think we shouldn't fall back into this kind of hack before we know i can offer some rc variable or small slider for the delay in outliner. if its not acceptable either, well, its another local patch again :) pavel
