[ISL] [VSCode] Ignore non-sapling repos when on multi-root environment
Context
I have setup a multi-root workspace environment on vscode with a directory structure that looks like this:
sapling_repo_1/
sapling_repo_2/
repo_1_but_with_git/
just_a_directory/
Problem (non-blocking)
With the recent stack developed to solve #616 , the new Interactive SmartLog selector do also include directories that are not Sapling repos:
Then if I select a non-sapling repo, this message appears:
And the only way to return to a valid repo is to close the tab on vscode and re-open it.
Also, if the first repo is a non-sapling one like in this example:
"folders": [{"path": "non_sapling_repo"},{"path": "sapling_repo"}]
Then, sapling will always show the Not a valid repository message and user might not encounter that the solution is to put a sapling repo first to allow sapling loading.
Expected behavior
Not listing the non-sapling repos at all, this way sapling can only switch between sapling repos (this already happens with most git graph extensions) and only show the error if no sapling repo is on the multi-root environment at all.
As an alternative, show the error message but put a button to change repo if the user have multi-root environment.