This implementation will not work atm.
We still need to implement a connection between the main thread and the Tokio runtime.
rt.spawn() requires the future to implement Sync, which open_folder() does not.
This is because it contains pointers to GTK4 objects, which aren't thread-safe.
Or, alternatively just use another alternative runtime that doesn't require Sync.
Idk if there are any.
recursive_add_files_into_tree_store() tried to refer to 'filepath', which
is not defined. Use the parent_file's path to replace 'filepath'.
The function also tried to refer to 'files', which is also not defined.
Seems to be a typo of 'child_files'.