-
Notifications
You must be signed in to change notification settings - Fork 680
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
Improve outline #5536
Merged
dibarbet
merged 10 commits into
dotnet:master
from
trolleyman:improve-outline-breadcrumbs
Feb 3, 2023
+37
−5
Merged
Improve outline #5536
Changes from 7 commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
e5d6b0b
Rework logic for name/details creation for document symbols
trolleyman 0c301d8
Merge remote-tracking branch 'origin/master' into improve-outline-bre…
trolleyman d991996
Change logic
trolleyman 7954c8d
Brace
trolleyman ae1091e
Only make changes for objects
trolleyman 39fc7dd
Revert changes
trolleyman cf00aeb
Merge branch 'master' into improve-outline-breadcrumbs
trolleyman 2cbebec
Simplify code
trolleyman 072dd08
Merge branch 'improve-outline-breadcrumbs' of https://github.com/trol…
trolleyman a3d8056
Merge branch 'master' into improve-outline-breadcrumbs
dibarbet File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
I think that in most cases the
element.Name
property should be the non-fully qualified name of the class/type/interace/etc.e.g.
So I think we might not need to do any slicing here, instead just pass in the 'name' as the as the name and the displayName as the details
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.
Thanks for the review, nw about the delay :)
The problem is with namespace elements - without the slice the namespace
Foo.Bar.Baz
(without any parents) will resolve asBaz
, which causes some confusion with the breadcrumbs, making it seem like the namespace is just Baz.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.
I see what you mean, looks like the server just populates the name with the last identifier.
Can we do this:
We could change the server side to fix this, but seems like overkill for such a small change, so I'd rather not.
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.
Hey - I've done that, with a slight tweak - I've used
DisplayName
for the name for some types, andName
for others, so that more information is given - for example, below each function'sName
is justOverloadMethod
, which is a bit worse IMO in the outliner on small sizes (and gives less information in the breadcrumb). Having it be theDisplayName
is how it is currently. It's up to you though, if you think theName
version is better I can change it to that.DisplayName
Name
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.
Ah absolutely, using DisplayName there looks better - good call.