Remember I said "possibly", GIO may also use plain polling just like Geany does, also not helping its determinism ;-). And even if it uses `inotify` Geany has no way to control the flags GIO uses. And of course it must use something else on Windows, not sure about Macos. These portability issues are why Geany tried to use GIO, not inotify or anything else, just a pity it doesn't work well enough for the purpose.
Perhaps you should outline your algorithm before you go implementing it. I don't see why you need another flag?
You have `doc->changed` to tell you the buffer state, and `document_check_disk_status()` to check the file status, so iterate the open documents and make a list of those that are changed on disk and note which have changed buffers. AFAICT thats all you need to implement reload all as discussed [here](https://github.com/geany/geany/issues/2540#issuecomment-1774779482).
But also note that `document_check_disk_status()` won't check files it thinks are remote, although I didn't check how it finds that out and how well it works.