It was a plan to change for using QFileSystemWatcher.
But, I'd suggest not calling refresh() which clears and reads everything, instead, the current function in place does a comparing in order to notify just what has changed.

The reason to make this auto-refreh optional is that the plugin is used for other applications which just want to get a directory content in order to do something. Ubuntu Music App is an example, also Ubuntu File Manager uses a second instance of the plugin to provide some typing completation to the user.

I can work on this.