I have just noticed another "weird" thing: why the use of `Qt::DirectConnection`?

`Qt::QueuedConnection` works better in this case (different threads at play).