-
Notifications
You must be signed in to change notification settings - Fork 4.1k
Move off of a linear walk in solution-explorer symbol tree updates. #78771
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move off of a linear walk in solution-explorer symbol tree updates. #78771
Conversation
src/VisualStudio/Core/Impl/SolutionExplorer/SymbolTree/SymbolTreeChildCollection.cs
Outdated
Show resolved
Hide resolved
…reeChildCollection.cs
@@ -10,6 +10,7 @@ | |||
using System.ComponentModel.Composition; | |||
using System.Threading; | |||
using System.Threading.Tasks; | |||
using ICSharpCode.Decompiler.Util; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
needed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes. it's where we get multi-dictionary from that supports removing a particular FilePath-Source pair.
public async Task UpdateIfAffectedAsync( | ||
HashSet<string> updatedFilePaths, | ||
CancellationToken cancellationToken) | ||
public async Task UpdateIfEverExpandedAsync(CancellationToken cancellationToken) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A nice part of this is no need to pass "these were the changed files along". we automatically are updating the source for the files that changed directly.
@@ -95,27 +91,10 @@ public async Task UpdateIfAffectedAsync( | |||
} | |||
} | |||
|
|||
private string? TryGetCanonicalName() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
made into a local function inside DetermineDocumentId
Followup to #78754.
Updates our core structure to be a dictionary keyed off of the IVsHierarchyItem's CanonicalName instead.