John McCabe-Dansted wrote: > The patch relies on the fact that the the ErrorList dialog is only > updated before it is shown. Thus we can safely prevent updateContents > from regenerating the list of errors unless showEvent has been called. > Regenerating the list of Errors is problematic because AFAICT: > 1) This leads to no errors being selected. > 2) Selecting the first error via setCurrentRow(0) on updateView is > problematic because this forces the first error to be highlighted > whenever the ErrorList window isn't focused. (And > GuiDialog::updateView calls updateContents) > > I note that preventing the list from being unnecessarily regenerated > has another benefit: the list doesn't flicker on losing focus. > > Does this help?
OK, I understand. However, I think this approach is a bit too simplistic. Instead of just checking if the error dialog has been updated once, I think we should cache the last error list and check if that equals the error list that is to be shown. This would allow to, for instance, rerun LaTeX while the error dialog is open, and it assures the dialog is updated if a different error list pops in (don't know if that ever happens, but it might, in theory). > The reason I find this bug so annoying is because I use LyX-GC, which > relies heavily on this dialog. I am not sure how many other people use > it. Doing a quick web search, apart from wikipedia the only people of > who mention LyX-GC are scammers who need fake webpage titles. It is > quite possible that there only a couple of users. Well, at least I have it installed, and I played a bit with it in the past. To me, it looks interesting and useful, especially since there is a German GC available. So I am a potential user. Jürgen