microsoft / microsoft/vscode-dotnettools

C# hover diagnostics can push the method signature below the visible area

Open
#3,471 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
No language data
Stars
321
Forks
54
Avg merge
2d 19h
Merged PRs (30d)
2

Description

Describe the issue

In C# source, hovering a symbol that has diagnostics renders the diagnostics before the symbol's method signature/Quick Info. When the diagnostic section is long, the syntax-highlighted signature is pushed below the visible area and requires vertical scrolling.

The signature is the primary context users need from this hover, so hiding it behind diagnostic content makes IntelliSense harder to use. This appears to be governed by VS Code's hover composition rather than a single C# language-server response, but it should be tracked for the C# experience and coordinated upstream as needed.

Related upstream history: microsoft/vscode#73120 changed long hovers so diagnostics would no longer appear below lengthy documentation. The C# case demonstrates the inverse problem when diagnostics are lengthy.

Collect logs

Not collected. This is a hover layout/content-ordering issue rather than a language-server failure; no relevant error logs are expected.

Steps to reproduce
  1. Open a C# file containing a method call or declaration with one or more diagnostics whose text occupies several lines.
  2. Hover the affected symbol.
  3. Observe that diagnostics are shown first and the method signature is below the initial visible portion of the hover.
  4. Scroll vertically to reach the signature.
Expected behavior

The method signature should remain visible without scrolling. Diagnostics could be ordered after it, collapsed, constrained to their own section, or otherwise presented without displacing the signature.

Environment information

Observed while dogfooding C# in VS Code. Exact VS Code and extension versions were not captured in the original report.

Created from a Microsoft Teams conversation.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the hover in a C# file in VS Code with diagnostics whose text spans several lines, then inspect how the C# Dev Kit and VS Code compose the hover. Compare the behavior with microsoft/vscode#73120 and coordinate upstream as needed; done means the method signature remains visible without scrolling while diagnostics remain available.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, vscode
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.