> I wonder if there was a change in Scintilla so that configured styles are > applied asynchronously
No, Geany does that, `document_open_file_full()` calls `queue_colorise()` which calls `widget_queue_draw()` which will call the lexer when the mainloop is idle and the next frame is drawn. So it returns without having set styles, and then `document_open_file_full()` emits the `document-open` signal that calls `ao_tasks_update()` which won't find the tasks because the styles havn't been set yet. AFAICT thats been the way its done forever (at least back to 2017 which was as far as I traced it). So in theory it never worked, maybe GTK has changed its scheduling of draws at some point and we didn't notice that this stopped working. Looking at when `ao_tasks_update()` is called, maybe the process of creating and setting up a tab caused a page switch after the document is drawn and styles are setup. That would emit a `document-activate` signal which also calls `ao_tasks_update()`. IIRC there was some fiddling with this somewhere, but of course I can't find it now ;-P -- Reply to this email directly or view it on GitHub: https://github.com/geany/geany-plugins/issues/1254#issuecomment-1565778186 You are receiving this because you are subscribed to this thread. Message ID: <geany/geany-plugins/issues/1254/[email protected]>
